kintoneのコメントをTeamsに連携する

kintoneを導入されている会社さんを何社かみていると「通知」をうまく使えていない企業が多いことに最近気づきます。
kintoneの通知には2種類あり、ポータル上に表示される通知(左上のベル)とメールによる通知があります。
kintone上で全ての情報のやり取りを行い、タスクが完了するたびに常にベルに表示される通知を消し込んでいく方法が理想的ではありますが、現実には企業内にはkintone以外の様々なツール(チャットワークとかSlackとかConfluence / Salesforceとか)が存在しているので、やはりメールによる通知を使うのが現実解のようです。
しかし、ただでさえメールが溢れかえっている現場にkintoneのメール通知が増えだすとそれだけで拒絶反応が返ってくることが多いようです。
こうした現場には、そもそもの「メールの使い方」からレクチャーしていく必要があります。
具体的には「受信トレイ」には自分のタスクしか残さないようにすることです。自分のタスク以外のメールはアーカイブするか他のフォルダに移動します。
特にkintoneやチャットワークなどの通知メールは「なんか来てるな」ぐらいの感覚で「DELキーで即ゴミ箱行き」が正しい使い方です。
こうすることで受信トレイはTODOリストだけになりスッキリ、kintoneにアクセスしたらベルの通知をみてタスクを処理していけるのでメールとkintoneが共存できます。
ただ最近はTeamsの存在が大きくなってきました。Teams自体は決して使いやすいツールだとは思いませんがあのマイクロソフトがガンガン世界展開しているため、ジワジワと企業内のシェアを伸ばしています。Slackのシェアを抜き去ったのも最近のことでした。
そしてこれに伴って「kintoneの通知をTeamsに連携したい」という要望も増えてきました。今回はその事例をご紹介します。
TeamsはWebhookでメッセージを受けることができるため、kintoneのWebhookとAWS Lambdaを組み合わせることで定期的にkintoneの通知をTeamsに流していくことができます。
kintoneのコメントの書き込みイベントは用意されていないため、Lambdaから定期的にkintoneレコードのコメントを取得します。
取得したコメントはそれを保存するための「コメント管理アプリ」に登録していきます。この時、コメント管理アプリのWebhookを使ってLambdaにレコード追加イベントを発火します。
Lambda側で受け取ったイベントを元に、コメント管理アプリからTeamsに必要なコメントを取得して、今度はTeamsのWebhookへそれを通知します。
今回のケースでは、kintoneのメンション宛先に従って、TeamsのどのTeamにメッセージを振り分けるかやコメント内容の変換方法など、細かい要望にも対応しました。
TeamsのWebhookはアプリを追加することで簡単に取得できます。
LambdaからTeamsにコメントを飛ばすには以下のコードでできます。シンプルですね。
title = “ここにタイトルを書きます”
text = “ここに本文を書きます(例えばkintoneのコメント)”
payload= {
   title:title,
   text:text
}
webhookUrl = “{Teamsで取得したURL}”
r=requests.post(webhookUrl, json=payload)
様々なツールの通知先を一元管理したいというニーズは多いので、より汎用的に使える”コメントハブ”のようなツールは今後どんどん出てきそうです。ただ最後はどうしても企業や業務現場に合った通知方法が求められるため、今回のような細かい要望に対応できるカスタマイズも一定のニーズは残りそうです。
ーーーーー
追記:
kintoneアプリのWebhookに「コメント書き込み時」というイベントがあることがわかりました(なんたるドジ)。
このため上記のような構成ではなく、kintoneのwebhook -> Lambda -> Teams というよりシンプルな構成で実現できました。
Please follow and like us:

コメントをどうぞ

メールアドレスが公開されることはありません。

CAPTCHA


Social media & sharing icons powered by UltimatelySocial