今回やること
想定するモデルでは、以下のように IoT Core <-> Lambda <-> DynamoDB という感じで、間に Lambda を仲介しています。
しかし、単純なデータ格納であれば、Lambda は不要な気がします。
そこで、今回は Lambda なしで直接 DynamoDB へデータを格納するようにしてみます。
具体的に、mockmock から送られるペイロードデータをそのまま格納します。
mockmockの設定を変更
テンプレートの設定で、以下のようにペイロードの設定を変更しました。
IoT Core にルール作成
IoT Core の「ACT」から新規ルール作成します。
↑後から気づきましたが、タイポしてます。initializing
でした。。。
↓
別ウィンドウが開くので、テーブル設定して作成します。
元の画面に戻って、以下のように設定します。
「パーティションキー値」に JSON の項目名を入れるっぽいです。
mockmockでテスト実行
mockmock から送信すると、ルールが実行されました。
DynamoDB のテーブルを見てみると、以下のようになっていました。
一応データは追記されていますが、なんかキモい感じになってますね・・・
属性名は payload
になってるし、S
やら N
とか付いてます。
たぶん S
は文字列、 N
は数値を表しているのでしょう。
しかし、この感じだとやっぱり Lambda で自前フィルタリングが必要なようですね。
コメント