ヤマムギ

growing hard days.

*

Backlogの課題チケット更新内容をMicrosoft Teamsに通知する(AWS Lambda Python)

      2019/04/30


BacklogにSlack連携が追加されました。
ですが、私の所属している会社ではMicrosoft Teamsをコラボレーションツールに使っています。
BacklogにはMicrosoft Teamsへの連携機能はありません。
なければ作ります。

こちらの赤枠の部分です。
赤枠以外については、「Backlogの実績工数をAmazon QuickSightでの可視化 – 仕組み編」をご参照ください。

Teamsの設定

通知を行いたいチャネルを選択して、メニューから[コネクタ]を選択します。

Incoming Webhookの[構成]をクリックします。

通知に表示される接続名とアイコンイメージをアップロードして作成します。
アイコンは会社の非公式ゆるキャラ、とれのCATです。
リクエストの送信先のURLが生成されますのでこれを控えておきます。

これでTeams側の設定は完了です。

Backlogのメッセージを受け取ってTeamsに通知するAWS Lambda

IAMロール

Lambdaに設定するIAMロールにはAWS管理ポリシーのAWSLambdaSQSQueueExecutionRoleを設定しました。
AWSLambdaSQSQueueExecutionRoleは次の内容です。

AWS Lambda Layers

Layersも使用しています。

requestsモジュールとTeamsに通知するための独自モジュールをLayersにアップロードしているので、それを使っています。
Teamsに通知するための独自モジュールは次のコードです。

環境変数

  • BACKLOG_DOMAIN
    BacklogのURLを通知内容に含めるためのBacklogのドメインです。

  • TEAMS_URL
    TeamsのIncoming Webhookで生成されたURLです。

AWS Lambdaのコード

コード全文はこちらです。

LayersのTeamsクラスを使っています。

メッセージをわかりやすくするためにフィールド名をの日本語に直してます。

課題チケットの変更内容は changes にあるので、あればメッセージとして整形しています。

Backlogで課題チケットが更新されると、とれのCATから通知がされました。
変更箇所、課題チケットへのリンク、コメントも通知されます。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS, ProjectManagement , ,

ad

ad

  関連記事

AWS OrganizationsでAWSアカウントを25作りたいのでPythonで作った

AWSアカウントを25作る必要があったので、Lambda Python 3.7で …

TuneCoreの売上データCSVをS3に格納してAthenaのクエリをRe:dashのデータソースにして可視化する

先日参加しましたAWS Summit Tokyo 2017で、 [JapanTa …

[JapanTaxi] Athena 指向アナリティクス 〜真面目に手を抜き価値を得よ〜(AWS Summit Tokyo 2017)を聞いてきました

Athenaのユースケースとして聞きにいきましたが、最近触ってるRe:dashも …

静的と動的って何ですか?と営業さんに聞かれたので端的に説明してみました

AWS認定クラウドプラクティショナーの勉強をしている営業さんに、「S3で静的オブ …

Pandoc PDF出力時に目次とヘッダをつける

目次をつける 環境などはPandoc関連記事をご確認ください。 Pandoc実行 …

Redmine 3.0.0に CRMプラグインをインストールする

Redmine CRMプラグインのFreeのLightバージョンを使ってみる事に …

Amazon CloudWatch クロスリージョンクロスアカウントダッシュボードを作成

本ブログのCloudFrontとWAFのアカウントと、EC2、RDS、S3などオ …

SendGridのイベントをAPI Gateway -> Lambda(Python) -> DynamoDBに格納する

SendGridのメールイベントログはコンソールで確認出来るのは直近7日分で一括 …

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

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

WordPress W3 Total Cache のDatabaseCacheをAmazon ElastiCacheのmemcachedに格納する

このブログのアーキテクチャは現在こちらです。 データベースは、Amazon Au …