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版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
AWS Backupで取得したAMIとスナップショットの削除
個人で使っているAWSリソースの断捨離をしてました。 Cloud9も複数アカウン …
-
-
slackのbotに天気を教えてもらう(Python on AWS Lambda + API Gateway)
slackのbotにAPIの定番ともいえる天気情報を教えてもらいました。 環境は …
-
-
S3オブジェクトロックを試しました
S3オブジェクトロックが必要になる要件に今のところ、出会ってないのでまだ設定した …
-
-
Rocket.ChatのOutGoingWebhookからのAPI GatewayからのDynamoDB
少し前に、Rocket.ChatからOut Going Webhookを設定して …
-
-
Amazon Aurora Serverlessを使い始めてみました(1日経過しての課金結果も)
祝!!! Amazon Aurora ServerlessがGAになりました! …
-
-
AWS Lambda KMSを使って環境変数を暗号化、復号化する(Python)
Lambda内で外部APIを使用する場合などをユースケースとして、環境変数をKM …
-
-
AWS CodeCommit 認証情報ヘルパーをmacOSに設定しました
AWS CLI 認証情報ヘルパーを使用して Linux, macOS, or U …
-
-
Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)
やりたいこと Feedlyで共有したいフィードに特定のタグを付けます。 特定のタ …
-
-
Amazon Keyspacesのキースペースを作成してみました
Amazon Keyspaces(Apache Cassandra互換のマネージ …
-
-
RDSインスタンス作成時にEC2に接続設定するオプション
EC2 インスタンスと RDS データベース を自動的に接続するの動作を確認した …





