search
LoginSignup
0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

SORACOM LTE-M Button(powered by AWS)でAWS LambdaのFunctionを呼び出すときのevent

SORACOM LTE-M Button(powered by AWS)でAWS LambdaのFunctionを呼び出すときに、
eventとして渡ってくる内容について整理する

SORACOM LTE-M Button powered by AWS

前準備

AWS LambdaのFunctionを呼び出す設定

AWS IoT 1-Clickのテンプレート設定で、
アクションに「Lambda 関数の選択」を選択し、実際に動かすLambda関数を指定します。
AWS IoT 1-Click テンプレート

実際に渡ってくる内容

eventとして連携されてくるjson内容を出力してみた。
これがわかっていると、実機がなくてもLambdaでテスト実装することができる。

{
  "deviceInfo": {
    "deviceId": "****************",
    "type": "button",
    "remainingLife": 76.69762,
    "attributes": {
      "projectRegion": "us-west-2",
      "projectName": "iotbutton_yesno",
      "placementName": "iotbutton_yesno",
      "deviceTemplateName": "iotbutton_yesno"
    }
  },
  "deviceEvent": {
    "buttonClicked": {
      "clickType": "DOUBLE",
      "reportedTime": "2019-12-08T12:34:56.789Z" 
    }
  },
  "placementInfo": {
    "projectName": "iotbutton_yesno",
    "placementName": "iotbutton_yesno",
    "attributes": {}, 
    "devices": {
      "iotbutton_yesno": "****************" 
    }
  }
}

イベント情報を噛み砕いてみる

  • deviceEvent.buttonClicked : ボタン側で起きたイベントの情報
    • clickType : SORACOM LTE-M Buttonがどう押されたか
      • SINGLE : 1回押し
      • DOUBLE : 2回押し
      • LONG : 長押し
    • reportedTime : ボタンが押された時間
    • placementInfo : AWS IoT 1-Clickで登録されているプレイスメントの情報
    • projectName : AWS IoT 1-Clickで紐づけられているプロジェクト
    • placementName : AWS IoT 1-Clickで紐づけられているプレイスメント
    • attributes : AWS IoT 1-Clickのプレイスメントに指定した属性情報(上記の例では設定なし)
    • devices : SORACOM LTE-M Buttonのシリアル番号(※)

上記のイベントを受け取っている設定周りは以下の通り

■SORACOMのコンソール
SORACOMコンソール

■AWS IoT 1-Clickのプレイスメント
AWS IoT 1-Click プレイスメント

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
0
Help us understand the problem. What are the problem?