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)」をご参照ください。
投稿されました!
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
AWS Client VPNのクライアント接続ハンドラを試してみました
AWS Client VPNを設定しましたで証明書とかせっかく作ったので、いろい …
-
Lambda関数で自分自身の環境変数を更新する
Twitterでツイート検索するAPIを試してみるでツイートの取得を重複させない …
-
Active Directory認証でAWSマネジメントコンソールにSSO
こちらの2つのサイトを参考にすすめました。 Active Directory資産 …
-
AWS Cloud9でJavaサンプルを実行する
リモートで共有開発ができるCloud9便利ですね。 Cloud9でJavaのサン …
-
AWS Code Commitをプライベートリポジトリとして使う
GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いて …
-
オンプレミスに見立てたオハイオリージョンにVyOSインスタンスを起動して東京リージョンからVPN接続
AWSクイックスタートのActive Directory Domain Serv …
-
SIEM on Amazon OpenSearch Serviceを構築
このブログまわりのモニタリングをSIEM on Amazon OpenSearc …
-
AWS OrganizationsでAWSアカウントを25作りたいのでPythonで作った
AWSアカウントを25作る必要があったので、Lambda Python 3.7で …
-
AWS Global Acceleratorでアクセラレーターを作成する
バージニア北部、東京、大阪のEC2インスタンスをエンドポイントにして作成してみま …
-
AWS Lambda(Python3.7)でPandocを実行する際にCSSもLayerから読み込む
Pandocで必要そうなオプションを確認しておく 先日の「AWS Lambda( …