メインコンテンツまでスキップ

EEW Client 外部連携用APIの仕様

EEW Client で計算した予想震度等をWebSocketで配信します。


利用条件​

この機能を利用するにあたり、以下の事項を守っていただきますようお願いします。

  • 商用利用をしないこと。
  • インターネットへの送信(クラウドなどへの送信を含む)をしないこと(手動による動画投稿等を除く)。
  • この機能で得たデータの一部または全部をリレー等によって複製を行わないこと。
  • 動画等(YouTube等の生放送を含む)に連携するソフトウエアを利用する場合は本ソフトウエアを利用していることを明記すること。
  • 公共施設・商業施設等で使用しないこと。
  • 工作機器・医療機器等で使用しないこと。

また、この機能についての保証等は一切致しかねますので予めご了承ください。

最大5つまで接続できます。


利用方法​

EEW Client が WebSocketサーバーとなります(ユーザーによって本機能を有効化する必要があります)。

ポート番号は、初回有効時にランダムに決定されますがユーザーによって変更が可能です。 なお、127.0.0.1にバインドして起動します。

注意

EEW Clientの表示条件にかかわらず、すべてのデータが配信されます。

なお、1点観測点に基づく緊急地震速報、100gal越え緊急地震速報、1点によるPLUM法のみの緊急地震速報はデフォルトで配信しません。 EEW Clientの設定(緊急地震速報受信設定)から有効化してください。


レスポンス​

WebSocketは常にJSONを返答します。

type: start​

接続初回に配信します。

階層フィールド出現条件説明
1.typeString
イベントタイプ start で固定
2.versionString
EEW Client のバージョン
{
"type": "start",
"version": "1.4.0"
}

type: user-point​

予想地点の経度・緯度を、接続初回・状態変化時に配信します。

階層フィールド出現条件説明
1.typeString
イベントタイプ user-point で固定
2.locationArray<Float>|Null|False
予想地点の経度緯度を記載する
設定がない場合は Null、共有しない場合は Flase とする
{
"type": "user-point",
"location": [135.1111, 35.1111]
}

type: server-status​

dmdata.jp と接続しているWebSocketの接続状況を、接続初回・状態変化時に配信します。

階層フィールド出現条件説明
1.typeString
イベントタイプ server-status で固定
2.statusString
接続状況を記載する
各ステータスと意味は以下のリストの通り
  • no-auth :dmdata.jp とのアカウント連携が未実施(なお、EEW Client起動時に連携の有無にかかわらず配信される場合があります)
  • no-contract :有効な契約がなく、利用ができない状態
  • limit :WebSocket の接続上限に達していて、利用できない状態
  • close :WebSocket が切断された状態
  • connecting :WebSocket との接続を開始した状態
  • open :WebSocket と接続中
{
"type": "server-status",
"status": "open"
}

type: eew​

警告

ユーザーが実行する訓練データによる予想についても配信します。

処理を行わないように対策するなどしてください。(isTestで判別)

注意

同じ、イベントID、イベント通番の更新番号(serial)が2回配信される場合があります

(PLUM法による予想が発生している場合。このとき同じ更新番号でも予想震度等が変化する場合があります。)

階層フィールド出現条件説明
1.typeString
イベントタイプ eew で固定
2.eventIdString<Integer>
EEWのEventID
3.serialString<Integer>
イベント通番の更新番号
4.authorString
EEWの発表官署 気象庁本庁 または 大阪管区気象台
5.pressTimeISO8601Time
EEWの発表時刻
6.processTimeISO8601Time
EEW Client の処理時刻
7.isTestBoolean
訓練データを用いているかどうかを識別する
True の場合は、訓練データによるもの
8.isCanceledBoolean
このイベントが取り消されたかどうかを識別する
9.isLastInfoBoolean
このイベントで最後の更新かどうかを識別する
10.isPlumOnlyBoolean
震源推定がなく、PLUM法のみによるEEWかどうかを識別する
11.isLevelOverBoolean
レベル法(100gal検知)によるEEWかどうかを識別する
12.isWarningBoolean
このイベントで緊急地震速報(警報)が発表されたか識別する
13.epicenterNameString
震央地名
14.epicenterLocationArray<Float>
震源の経度、緯度
15.depthInteger
震源の深さ(km)
16.magnitudeFloat|Null
マグニチュードを記載する
PLUM報のみ、レベル法のみによるEEWの場合は Null とする
17.originTimeISO8601Time|Null
地震発生時刻を秒単位で記載する
レベル法のみによるEEWの場合には Null とする
18.arrivalTimeISO8601Time
地震検知時刻を秒単位で記載する
19.accuracyObject
震源及びマグニチュードの計算精度情報を記載する
eew-information v1.0.0 7. 4. 7. accuracy
20.?maxInt予想がない場合は出現しないObject
気象庁による最大予測震度を記載する
eew-information v1.0.0 8. 4. 5. forecastMaxInt
21.?maxLgInt予想がない場合は出現しないObject
気象庁による最大予測長周期地震動階級を記載する
eew-information v1.0.0 8. 4. 6. forecastMaxLgInt
22.regionForecastsArray<Object>
EEW Client が計算した細分区域の予想震度を記載する
22._1.codeString<Integer>
細分区域コード
22._2.toString
予測震度を、 1, 2, 3, 4, 5-, 5+, 6-, 6+, 7 で記載する
23.?pointForecast予想地点が設定されていない場合、予想がない場合は出現しないObject
設定された予想地点における予想震度、予測長周期地震動階級、到達予想時刻を記載する
23._1.sWaveObject
到達予想時刻を記載する
23._1._1.statusString
到達予想時刻の計算ステータスを記載し、ok または not-calculated(PLUM法による震度予測、震源距離2000km以上の場合など)
23._1._2.timeISO8601Time|Null
到達予想時刻を記載する 予想時刻がない場合は Null とする
23._2.?lpgm予想できない場所の場合は出現しないObject
予測長周期地震動階級・絶対応答速度スペクトルを記載する(1.6秒~7.8秒の周期帯)
23._2._1.maxSvaString|Null
予想絶対速度応答スペクトル(cm/s)を記載し、予想がない場合は Null とする
23._2._2.lgIntString|Null
予測長周期地震動階級を 0, 1, 2, 3, 4 で記載し、予想がない場合は Null とする
23._3.intensityObject
予測震度を記載する
23._3._1.typeString
予想震度の計算手法を記載し、 attenuation(震源由来震度) または plum(PLUM法による震度予測)
23._3._2.kString<Float>|Null
予想震度を記載し、予想がない場合は Null とする
23._3._3.intString|Null
予想震度階級を 0, 1, 2, 3, 4, 5-, 5+, 6-, 6+, 7 で記載し、予想がない場合は Null とする

震源由来震度(従来法)、長周期地震動階級・絶対速度応答スペクトルは、深さ150km以下のものについて予想を行っています。

取消報(キャンセル時)の場合、前回の発表データ、予想を記載します。

{
"type": "eew",
"eventId": "20240101160608",
"serial": "13",
"author": "気象庁本庁",
"pressTime": "2024-01-01T16:06:24+09:00",
"processTime": "2024-01-01T16:06:24.400+09:00",
"isTest": true,
"isCanceled": false,
"isLastInfo": false,
"isPlumOnly": false,
"isLevelOver": false,
"isWarning": true,
"epicenterName": "石川県能登地方",
"epicenterLocation": [137.2, 37.5],
"depth": 10,
"magnitude": 5.6,
"originTime": "2024-01-01T16:06:06+09:00",
"arrivalTime": "2024-01-01T16:06:08+09:00",
"accuracy": {
"epicenters": ["4", "4"],
"depth": "4",
"magnitudeCalculation": "4",
"numberOfMagnitudeCalculation": "4"
},
"maxInt": {"from": "5+", "to": "5+"},
"maxLgInt": {"from": "1", "to": "1"},
"regionForecasts": [
{"code": "390", "maxInt": "5-"},
{"code": "391", "maxInt": "3"},
{"code": "400", "maxInt": "2"}
],
"pointForecast": {
"sWave": {
"status": "ok",
"time": "2024-01-01T16:07:00.000+09:00"
},
"lpgm": {
"maxSva": "0.16",
"lgInt": "0"
},
"intensity": {
"type": "attenuation",
"k": "1.09",
"int": "1"
}
}
}