Rocket.ChatのOutGoingWebhookからのAPI GatewayからのDynamoDB
2020/08/25
少し前に、Rocket.ChatからOut Going Webhookを設定してみるで確認したとおり、どんな情報がPOSTされるかはわかりましたので、必要な情報だけをそのままDynamoDBにPutItemしたいと思います。
API Gatewayの統合リクエストの設定はAPI Gatewayから直接 DynamoDBに書き込むに記載のとおり、以下の主な設定とIAMロールを指定します。
- 統合タイプ: AWSサービス
- AWSサービス: DynamoDB
- HTTPメソッド: POST
- アクション: PutItem
そして、テーブル名はリクエストデータに含めるのですね。
これをどうやってマッピングテンプレートで実現するのか、ユーザーガイドを確認して試しながらで、結果こちらで実現できました。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
{ "TableName": "table_name", "Item": { "message_id": { "S": $input.json('$.message_id') }, "timestamp": { "S": $input.json('$.timestamp') }, #if($input.path('$.tmid') != "") "tmid": { "S": $input.json('$.tmid') }, #end "text": { "S": $input.json('$.text') } } } |
Rocket.Chatで、返信したときだけ、親トピックのmessage_idが、tmid に設定されます。
親トピックが投稿されたときに、リクエストデータから tmidを省くために #if ~ #end で分岐しています。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
EC2 Image BuilderでRocket.ChatのAMIを作って起動テンプレートを更新しました
EC2 Image Builderの練習をしようと思い、Rocket.Chatの …
-
-
AWS ControlTowerで既存アカウントをまとめて追加
AWS Organizationsに新たに招待したアカウントをAWS Contr …
-
-
EC2インスタンスの起動で、–cli-input-jsonと–cli-input-yamlを使いました
AWS CloudShellから実行しました。 JSON実行 [crayon-6 …
-
-
Amazon Auroraのスナップショットの暗号化とリージョン間コピーを改めて試しました
Amazon Auroraデータベースを暗号化して、スナップショットを作成、クロ …
-
-
T3.nanoで仮想メモリ割当をユーザーデータで実行する
T3.nanoはメモリがだいたい500MBです。 実行する処理によってはメモリエ …
-
-
RedmineをELB(ALB)でAutoScalingグループへ負荷分散
高可用なRedmineを作るためのELBの設定です。 高可用なRedmine R …
-
-
Intel 82599 VF インターフェイスで拡張ネットワーキングが有効なEC2インスタンスで帯域幅を確認してみました
拡張ネットワーキングが有効なEC2インスタンスとそうではないインスタンスの2セッ …
-
-
新しいVPCウィザード(2022年)がすんごく便利になってました
VPCウィザードがすんごく便利になってました。 ウィザードの左ペインで設定を選択 …
-
-
Amazon API GatewayをLambda(Python)で削除する
やりたいこと 特定のAWSアカウント、特定のリージョン内のAPI Gateway …
-
-
AWS Client VPNを設定しました
ユーザーガイドのクライアント VPN の開始方法に沿ってやりました。 AWSクラ …

