ヤマムギ

growing hard days.

*

Microsoft TeamsのOutgoing Webhooksを使ってAWS Lambda(Python), Amazon API Gatewayとbot

   


Microsoft Teamsの検証その2、Slackで実装しているbotも対応してみよう、ということで。

構成はこちらです。

AWS Lambda

LambdaのコーディングなどはこのへんのSlack向けの記事を見てください。

docomo Developer supportの 雑談対話APIから自然対話APIへ移行しました

slackのbotに天気を教えてもらう(Python on AWS Lambda + API Gateway)

slackのbotにWikipediaを調べてもらう(Python on AWS Lambda + API Gateway)

Slackのときと違うのはリクエストeventのユーザー名を取得するときはこうでした。

そして、レスポンスにtypeを含める必要がありました。

コードはGithubに置いてます。

Amazon API Gateway

APIGatewayは作って、POSTにLambdaを設定して、デプロイした、だけです。

TeamsのOutgoing Webhooksの設定

botを使いたいチームを選んで、[アプリ]をクリックしました。

右下の「送信Webhookを作成」をクリックしました。

botの名前を任意で設定します。
botを呼び出すときにはこの名前にメンションします。

コールバックURLにAPI GatewayでデプロイしたAPIエンドポイントURLを設定します。

アイコンは著作権に触れない程度に手書きしたアイコンを設定しました。

出来た!

雑談の他には天気やWikipediaで調べ物をしてくれます。


最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー2年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - AWS , , ,

ad

ad

  関連記事

Redmineの添付ファイルをS3に同期する

RedmineをAWS上で構築するデザインを考えていて、せっかくなので冗長化しよ …

Amazon RDS MySQLでCSVをload data するときに「Access denied」発生

超小ネタです。 AWSのデータベースサービスの Amazon RDSのMySQL …

「JAWS-UG in AWS Cloud Roadshow 2017 大阪」で運営をしました

AWS Cloud Roadshow 2017 大阪のナイトイベントで、「JAW …

Developers Summit 2018 「AWSのフルマネージドな環境でCI/CDをやってみよう!AWS Cloud9からAWS Fargateへの継続的デプロイをご紹介」を聞きました

※写真は展示のAmazon Echoです。 以下は、思ったことや気になったことを …

NGINXで500と502のエラーが実は頻発していたらしい

先日Mackerelで当ブログの外形監視を始めたのですが、500と502のエラー …

よくあるサーバーレスアーキテクチャで質問フォーム

この記事はServerless2 Advent Calendar 2018に参加 …

AWS Summit Tokyo 2017 Day3 開場~基調講演~Dev Day Night

AWS Summit Tokyo 2017 参加2日目のDay3です。 基調講演 …

PyCharmにAWS Tool kitをインストールしてサンプルのLambda関数をデプロイして実行しました

この記事はJetBrainsIDE Advent Calendar 2018に参 …

AWS Lambdaで「Process exited before completing request」

AWS lambdaで「Process exited before comple …

S3に置いたMP3ファイルをTwilioから電話再生する(AWS Lambda Python)

Google Calendar Twilio ReminderのTwilioを使 …