Microsoft TeamsのIncoming Webhooksを使ってAWS Lambda(Python)からFeedlyの記事を自動投稿する
Microsoft Teamsの検証を始めましたので、Slackで自動化している投稿もやってみよう、ということで。
目次
Incoming Webhooksの設定
Slackでは、チーム全体にIncoming Webhooksを有効にして、投稿するAPIでチャンネルを指定しますが、Teamsはチャンネルに対してIncoming Webhooksを有効にして、そのチャンネル用のAPIエンドポイントが発行されます。
では、設定していきます。
対象のチャンネルを選択して[コネクタ]メニューを選択しました。
Incoming Webhooksをインストールして[構成]をクリックしました。
任意の名前を入力してアイコンをアップロードします。
ここで設定した名前とアイコンが投稿に使われます。
POSTする先のAPIエンドポイントが発行されるのでコピーしておきます。
Lambdaのコード
元々Lambda→DynamoDB→Lambda→Slackなので、
本当はLambda→DynamoDB→Lambda→SNS→SQSファンアウトで並列でSlackとTeamsに投稿するのが良さそうですが、今回はすでにSlackに投稿しているLambdaに処理を追加しました。
理想構成
今回の構成
追加したコード
1 2 3 4 5 6 7 8 9 10 11 12 13 |
requests.post( teams_url, json.dumps( { 'title': title, 'text': '[記事リンク]({url})<br>{summary}'.format( url=url, summary=summary ) } ) ) |
1つ目のパラメータのteams_urlには、Incoming Webhooksで発行されたAPIエンドポイントのURLを指定します。
2つ目のパラメータでtitleとtextを指定する必要があります。
textではマークダウンが使えるようなので、「記事リンク」という文字列に記事のURLを指定しています。
改行は
にしています。
このコードの全体を見られる方はこちら「Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)」をご参照ください。
投稿されました!
最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。
【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。
【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。
【PR】 「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル」という本を書きました。

開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
kintone webhookからAWS API Gateway – Lambdaを実行しレコードの値を渡す
2017年2月のアップデートでkintoneにWebhook機能がリリースされま …
-
-
ads.txtをS3に配置してCloudFrontで設定する
ads.txtのダウンロード ads.txt設置してねってメールが来てました。 …
-
-
Amazon API GatewayのIAM認証の動作を確認しました
API GatewayのIAM認証は、IAMユーザーが実行できるように認証する、 …
-
-
AWS Transfer Family EFS向けのSFTP対応サーバー
EFSファイルシステムは作成済です。 AWS Transfer Family S …
-
-
AWS Secrets ManagerのローテーションでLambda関数の管理が必要なくなりました
Amazon RDS と AWS Secrets Manager の統合を発表と …
-
-
Microsoft TeamsのOutgoing Webhooksを使ってAWS Lambda(Python), Amazon API Gatewayとbot
Microsoft Teamsの検証その2、Slackで実装しているbotも対応 …
-
-
AWS認定SAPの執筆開始にあたって環境を構築しました
AWS認定ソリューションアーキテクトプロフェッショナル対策本の執筆開始にあたりま …
-
-
Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(失敗、手戻りそのまま記載版)
勉強のためブログサイトを長らくお世話になったロリポップさんから、AWSに移設する …
-
-
AWS X-Ray SDK for PythonをOrganizations組織内にLambda Layersで共有しました
ローカルでパッケージ作成 インストールコマンドはこちらAWS X-Ray SDK …
-
-
S3オブジェクトへのリクエストをCloudTrail, Athenaで識別する(パーティショニング)
Amazon S3オブエジェクトへのリクエストをCloudTrail, Athe …