Fuse 6 is no longer supported
As of February 2025, Red Hat Fuse 6 is no longer supported. If you are using Fuse 6, please upgrade to Red Hat build of Apache Camel.第183章 video
video コンポーネント リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Camel 2.12 以降で利用可能
video : コンポーネントは、Open Weather Map (フリーのグローバルな情報と予測情報を提供するサイト)からの照会に使用されます。この情報は json String オブジェクトとして返されます。
Camel はデフォルトで 1 時間ごとに現在の更新をポーリングし、予測します。また、プロデューサーとして使用されるエンドポイントで定義されるパラメーターに基づいて、この API にクエリーすることもできます。
Maven ユーザーは、このコンポーネントの
pom.xml
に以下の依存関係を追加する必要があります。
重要
2015 年 10 月 9 日以降、OpenWeather サービスにアクセスするには API キーが必要です。このキーは、
appid
パラメーターを使用して、パラメーターとして video エンドポイントの URI 定義に渡されます。
Camel on EAP デプロイメント リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
このコンポーネントは、Red Hat JBoss Enterprise Application Platform (JBoss EAP) コンテナー上で簡素化されたデプロイメントモデルを提供する Camel on EAP (Wildfly Camel) フレームワークによってサポートされます。このモデルの詳細は、Deploying into a Web Server の Apache Camel on JBoss EAP の章を参照してください。
URI 形式 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
weather://<unused name>[?options]
weather://<unused name>[?options]
オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
プロパティー | デフォルト | 説明 |
---|---|---|
appid
|
null
|
Camel 2.16.1/2.15.5: API サーバーに接続されたユーザーを認証するために使用される APPID ID。このキーは必須です。 |
location
|
null
|
null Camel が IP アドレスの地理位置位置を使用して現在の場所を判断しようとする場合は、都市(都市)を指定します。よく知られている都市名については、Open Weather Map が最適であると判断しますが、複数の結果が返される場合があります。したがって、と country も指定すると、より正確なデータが返されます。"current" を場所として指定すると、コンポーネントは現在の流れと長いものを取得しようとし、それを使用して詳細を取得します。location の代わりに lat オプションおよび lon オプションを使用できます。 |
lat
|
null
|
お気に入りの場所。location の代わりに lat オプションおよび lon オプションを使用できます。 |
lon
|
null
|
Longitude of location.location の代わりに lat オプションおよび lon オプションを使用できます。 |
period
|
null
|
null の場合、現在のものが返されます。それ以外の場合は、5、7、14 日の値を使用します。予測期間の数値のみが実際に解析されるため、期間のスペル化、大文字(無視)が行われます。 |
headerName
|
null
|
メッセージボディーではなくこのヘッダーに結果を保存するには、以下を行います。現在のメッセージボディーをそのままそのまま使用する場合に使用できます。 |
mode
|
JSON
|
splunk データの出力形式。使用できる値は HTML 、JSON 、または XML です。
|
units
|
METRIC
|
温度測定の単位。使用できる値は IMPERIAL または METRIC です。
|
consumer.delay
|
3600000
|
各ポーリングの遅延(デフォルトは 1 時間) |
consumer.initialDelay
|
1000
|
ポーリングを開始する前にミリス。 |
consumer.userFixedDelay
|
false
|
true の場合、ポーリング間の固定遅延を使用します。そうでない場合は、固定レートが使用されます。詳細は、JDK の ScheduledExecutorService を参照してください。
|
URI にクエリーオプションは
?option=value&option=value&.. の形式で追加できます。
エクスチェンジデータ形式 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Camel はボディーを json 形式の java.lang.String として配信します(上記の
mode
オプションを参照)。
メッセージヘッダー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
ヘッダー | 説明 |
---|---|
CamelWeatherQuery
|
Open Weather Map サイトに送信された元のクエリー URL |
CamelWeatherLocation
|
エンドポイントの場所を上書きし、代わりにこのヘッダーからの場所を使用するようにプロデューサーによって使用されます。 |
サンプル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
この例では、スペインの Madrid の 7 日間のキャストがあります。
from("weather:foo?location=Madrid,Spain&period=7 days&appid=APIKEY").to("jms:queue:weather");
from("weather:foo?location=Madrid,Spain&period=7 days&appid=APIKEY").to("jms:queue:weather");
現在の場所の現在の場所を見つけるには、以下を使用できます。
from("weather:foo&appid=APIKEY").to("jms:queue:weather");
from("weather:foo&appid=APIKEY").to("jms:queue:weather");
また、プロデューサーを使用して以下を見つけるには、以下を実行します。
from("direct:start") .to("weather:foo?location=Madrid,Spain&appid=APIKEY");
from("direct:start")
.to("weather:foo?location=Madrid,Spain&appid=APIKEY");
また、以下のように、ヘッダーのあるメッセージで送信して、任意の場所を取得できます。
String json = template.requestBodyAndHeader("direct:start", "", "CamelWeatherLocation", "Paris,France&appid=APIKEY", String.class);
String json = template.requestBodyAndHeader("direct:start", "", "CamelWeatherLocation", "Paris,France&appid=APIKEY", String.class);
また、現在の場所で以下を取得するには、以下を実行します。
String json = template.requestBodyAndHeader("direct:start", "", "CamelWeatherLocation", "current&appid=APIKEY", String.class);
String json = template.requestBodyAndHeader("direct:start", "", "CamelWeatherLocation", "current&appid=APIKEY", String.class);