Rocket.ChatからOut Going Webhookを設定してみる
2020/06/18
目次
API GatewayとLambda
とりあえず、どんなデータが飛んでくるのか見てみたかったので、API GatewayとLambdaでデータを受けてCloudWatch Logsにログを書くだけのAPIを作りました。
1 2 3 4 5 6 7 |
def lambda_handler(event, context): print(event) return { 'statusCode': 200, 'body': json.dumps('Hello from Lambda!') } |
return以降はデフォルトのまま、print(event)を足しただけです。
これをAPI GatewayでREST APIを作って、POSTに設定して、デプロイするだけです。
そうしてできたエンドポイントをRocket.Chatに設定します。
Rocket.Chat
管理メニューを選択します。
[サービス連携]で[新しいサービス連携]を押下しました。
[発信WebHook]を選択しました。
トリガーとチャンネルとURLsを設定しました。
URLsには、API Gatewayで作ったAPIエンドポイントを設定しました。
さっそく、Rocket.Chatに書いてみてログを確認してみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
{ 'token': 'xxxxxxxxxxxxxxxxxxxxx', 'bot': False, 'channel_id': 'xxxxxxxxxxxxxxxx', 'channel_name': 'general', 'message_id': 'xxxxxxxxxxxxxxx', 'timestamp': '2020-06-16T07:11:20.251Z', 'user_id': 'xxxxxxxxxxxxxxxxxx', 'user_name': 'reply', 'text': '回答です。', 'siteUrl': 'http://http://ec2-00-00-00-00.compute-1.amazonaws.com:3000/', 'isEdited': True, 'tmid': 'xxxxxxxxxxxxx' } |
textはもちろん様々な情報が取れるようです。
tmidってなんだろうと思っていろんなパターンで試したところ、どうやら返信の際の親トピックメッセージのIDのようでした。
ということは、チャットで質疑応答したデータをそのまま、ナレッジデータベースに転送して、トピックと返信をIDで紐付けてFAQにして、次回からはBotが自然言語検索して返すみたいなことができるんじゃないかと妄想して一瞬楽しくなりました。
ん?ひょっとしてKendraかな。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
![](https://www.sbcr.jp/wp-content/uploads/2023/01/9784815617929-1-407x596.jpg)
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
![](https://www.sbcr.jp/wp-content/uploads/2024/01/9784815625382-3-420x596.jpg)
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
![](https://www.shuwasystem.co.jp//images/book/637791.jpg)
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
![](https://book.mynavi.jp/files/topics/135344_ext_06_0.jpg?v=1673514682)
「AWSではじめるLinux入門ガイド」という本を書きました。
![](https://www.yamamanx.com/wp-content/uploads/2023/12/81Rp5O9We6L._SY522_.jpg)
![@yamamanx](https://www.yamamanx.com/wp-content/plugins/lazy-load/images/1x1.trans.gif)
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
CloudWatch Logs機密データ保護を設定しました
Amazon CloudWatch Logs を使用して機密データを保護するがリ …
-
-
slackのbotにWikipediaを調べてもらう(Python on AWS Lambda + API Gateway)
slackのbotに少しでも役に立ってもらおうと、Wikipediaを調べてもら …
-
-
Amazon Aurora Serverless のログをCloudWatch Logsに出力する
WordPress W3 Total Cache のDatabaseCacheを …
-
-
SendGridのイベントをAPI Gateway -> Lambda(Python) -> DynamoDBに格納する
SendGridのメールイベントログはコンソールで確認出来るのは直近7日分で一括 …
-
-
Amazon Linux2のPHPを7.2から7.3へアップデートしました
WordPressのサイトヘルスの推奨に従って使っていないテーマを削除したの推奨 …
-
-
AWS ControlTowerで既存アカウントをまとめて追加
AWS Organizationsに新たに招待したアカウントをAWS Contr …
-
-
Lucidchart AWSアカウントからインポート機能で自動作図
SNSでLucidchartというサービスが話題になってました。 AWSの環境を …
-
-
Systems Manager パッチマネージャでベースラインを作成して適用する
ベースラインの作成 Systems Managerのパッチマネージャーでパッチベ …
-
-
このブログをAWS大阪リージョンへ移行しました
大阪リージョン爆誕!! 朝起きて寝ぼけながらリージョンを見てると。 「大阪リージ …
-
-
AWSセルフマネージドAD環境にリモートデスクトップで接続
AWSクイックスタートのActive Directory Domain Serv …