アラート設定(setAlert)送信
監視したいリスクテーマを登録・購読します。
エンドポイント
wss://<api-server>/api/v1/alertapi/socket.io/
リクエスト例
下記は http://geojson.io 等のツールで神戸駅周辺のPolygonを生成し、Featureとして指定したものです。
神戸駅周辺の テーマ rm_panda の 閾値 1 以上のデータを60秒間隔で2016-09-04 17-00-00の分から送信せよ という意味になります。
{
"method": "setAlert",
"params": [{
"type": "FeatureCollection",
"name": "setAlert Sample",
"features": [
{
"type": "Feature",
"properties": {"theme":"rm_panda","threshold":1,"interval":60},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
135.17412900924683,
34.67725557158714
],
[
135.1812744140625,
34.67725557158714
],
[
135.1812744140625,
34.68107587385229
],
[
135.17412900924683,
34.68107587385229
],
[
135.17412900924683,
34.67725557158714
]
]
]
}
}
]
}, {
"check_from": "2016-09-04 17-00-00+09",
"notify_from": null,
"speed": 30
}],
"id": 1
}
パラメータ
アラート通知APIのメッセージのやりとりはWebSocketを利用しますが、入出力内容はJSON-RPCの形式で行います。
params は配列で指定し、先頭に取得したいと考える範囲のGeoJSONを、次に再生環境に関する値を指定します。
キー | 値 |
---|---|
method | setAlert |
params[0] | GeoJSON |
params[1] | 再生環境 |
id | 任意 |
GeoJSONの書式
GeoJSON部の書式は、監視するテーマ一つにつき一つのFeatureとなるようなFeatureCollectionを指定します。
キー | 値 | 必須 |
---|---|---|
type | FeatureCollection | 必須 |
name | 任意の文字列 | 任意 |
features | Featureの配列 | 必須 |
一つ一つのFeatureの書式は、properties部にテーマ・閾値・インターバルを、geometry部にジオメトリオブジェクトを指定します。
キー | 値 | 必須 |
---|---|---|
type | "Feature" の文字列 | 必須 |
properties | theme,threshold,intervalを含む連想配列 | 必須 |
geometry | Polygon または MultiPolygon のジオメトリオブジェクト | 必須 |
properties の各値は下記のように指定します。
キー | 値 | 必須 |
---|---|---|
comment | 任意の文字列 | 省略可 |
theme | 監視対象のテーマの文字列 | 必須 |
threshold | リスク閾値の数値 | 必須 |
interval | チェックするインターバル(秒)の数値 | 必須 |
thinning_step | リスクマップの間引きを行うステップ(秒) | 省略可,thinning_filter_stepと同時指定はできない |
thinning_filter_step | リスクマップの間引きを行うステップ(秒) | 省略可,thinning_stepと同時指定はできない |
間引き
thinning_stepで指定された秒数分のリスク情報を集約することで、配信されるデータの総量をスリム化する機能。
thinning_stepを指定しない場合、intervalで指定された時間中に条件を満たしたリスクマップはすべてアラートとして配信される(既存の動作)。
thinning_stepを指定した場合、指定された時間を1ステップとして、intervalをステップに区切り、ステップごとに条件判定する。例えばthinningが10であれば、10秒1ステップごとに、条件を満たしたリスクマップでもっとも早い時間のものだけがアラートとして配信される。
thinning_stepを指定した場合、時間帯を代表して一つしかアラートを配信しないために結果に穴があくことがある。時間だけを間引いてリスクは間引かないようにしたい場合は thinning_filter_step を使用する。
再生環境の書式
再生環境の書式は、下記のように指定します。
キー | 値 | 必須 |
---|---|---|
check_from | 監視を開始するシミュレーション内日時,省略すると現在時刻 形式は YYYY-MM-DD hh:mm:ss+09 の文字列 |
省略可 |
notify_from | 通知を開始する実世界日時,省略すると現在時刻 形式は YYYY-MM-DD hh:mm:ss+09 の文字列 |
必須 |
speed | シミュレーション内再生速度(倍率)の数値 | 必須 |