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 で分岐しています。
最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。
【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター3年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
EC2 プレイスメントグループを試してみました
やったことないのでやってみたやつです。 プレイスメントグループの作成 まず、EC …
-
-
Pandocサーバーのコンテナイメージを作成する
マークダウンからEPUBへの変換をAWS Batchで行いたく、ECRにアップロ …
-
-
JAWS DAYS 2018 「Cost-Driven AWS クラウドアーキテクチャデザインとコスト最適化方法 – Cost-Driven AWS Cloud Architecture Design : The Lean Startup on AWS」を聞きました
以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …
-
-
AWS LambdaでS3 Select
RDSスナップショットをS3にエクスポートした、Parquetフォーマットのデー …
-
-
AWS Service Catalogチュートリアル
AWS Service Catalog 開始方法のチュートリアルにそってみました …
-
-
Microsoft TeamsのIncoming Webhooksを使ってAWS Lambda(Python)からFeedlyの記事を自動投稿する
Microsoft Teamsの検証を始めましたので、Slackで自動化している …
-
-
Backlogの実績工数をAmazon QuickSightで可視化してわかったこと
今年に入ってから、Backlogで個人タスクを登録しだして、予定工数、実績工数を …
-
-
AWS Lambda(Python3.7)でPandocを実行する際にCSSもLayerから読み込む
Pandocで必要そうなオプションを確認しておく 先日の「AWS Lambda( …
-
-
AWS Summit 2016 Tokyoに参加してきました (Day3)
飛天3日目です。 JAWS-UGブースのすぐ前にあったこのお水がめちゃめちゃおい …
-
-
T2.microからT3.nanoに変更(メモリエラーも対応)
このブログのEC2インスタンスをT2.micro 1インスタンスからT3.nan …