Soracom

Users

ドキュメント
Home ドキュメント SORACOM Air for セルラー リファレンス

簡易位置測位機能のデータフォーマット

簡易位置測位機能 は、以下のデータフォーマットで位置情報が送信されます。

SORACOM Beam

Beam でデータを送信する場合は、HTTP(S) ヘッダーに以下のフォーマットで位置情報が送信されます。

x-soracom-geo-position: 緯度;経度
x-soracom-geo-postion-query-result: (success | not-found | error)

SORACOM Funnel

Funnel でデータを送信する場合は、以下のようなフォーマットで位置情報が送信されます。

{
  "operatorid": "ソラコムのアカウントID",
  "timestamp": "funnelがデータを受け取った日時(unix time)",
  "destination": {
    "resourceUrl": "送信先クラウドサービスのURL",
    "service": "(aws-iot|kinesis|firehose|eventhubs|pubsub)",
    "provider": "(aws|azure|google)"
  },
  "credentialId": "ソラコムの認証情報のID",
  "payloads": "送信されたデータ本体",
  "sourceProtocol": "(tcp|udp|http|sigfox|lora|unspecified)",
  "imsi": "送信元のSIMのIMSI",
  "location": {
    "lat": 緯度,
    "lon": 経度
  },
  "locationQueryResult": "(success|error|not-found)"
}

SORACOM Funk

Funk でデータを送信する場合は、送信先のパブリッククラウドごとにフォーマットが異なります。

AWS Lambda

context として以下のデータフォーマットが設定されます。Python ランタイムの場合 Lambda context オブジェクト 内の client_context.custom に以下のような JSON を元にしたデータが挿入されます。

{
  "custom": {
    "srn": "ソラコムリソースネーム",
    "operatorId": "ソラコムのアカウントID",
    "sourceProtocol": "送信元プロトコル",
    "resourceId": "リソースID",
    "resourceType": "リソースタイプ",
    "imsi": "IMSI",
    "imei": "IMEI",
    "coverage": "(jp|global)",
    "location": {
      "lat": 緯度,
      "lon": 経度
    },
    "locationQueryResult": "(success|error|not-found)"
  }
}

Azure Functions / Google Cloud Functions

リクエストの x-soracom-token に JWT 形式で書かれたトークン内に位置情報が追加されます。JWT をデコード・展開すると確認できます。

{
  ...
  "location": {
       "lat": "緯度",
       "lon": "経度"
  },
  "locationQueryResult": "(success|error|not-found)"
  ...
}

Funk で渡される x-soracom-token トークンの詳細は SORACOM Funk のトークンを検証する をご確認ください。

SORACOM Harvest Data

Harvest Data にデータを保存する場合は、[一次処理済みデータ] として以下のようなフォーマットで位置情報が送信されます。

{
  "content": "ユーザーデータ",
  "contentType": "application/json",
  "time": "タイムスタンプ",
  "$metadata": {
    "location": {
        "lat": "緯度",
        "lon": "経度"
    },
    "locationQueryResult": "(success|error|not-found)"
  }
}