Integromatを使いkintoneからSlackのチャンネルに通知を送る

Integromatを使いkintoneからSlackのチャンネルに通知を送る

こんにちは、エミックの松尾です。FAMLog(https://www.famlog.jp/)というFileMaker関連の簡易的なメモを綴っていたブログを15年以上に渡ってこれまで更新していましたが、FileMakerに限らない内容やkintoneに関する記事なども書いていこうと思い、このたびnoteを使い始めてみました。どうぞよろしくお願いします。今回の記事では、Integromatを使いkintoneでレコードが追加されたらSlackのチャンネルにメッセージを投稿する方法について記しています。

kintoneとSlackを連携させるには

2020年1月現在、kintoneではスタンダードコースを利用している場合にWebhookを設定することができます。Webhookは複数のWebサービスを連携させるための仕組みであり、kintoneでレコードが追加されたり更新された時などに当該操作が行われたことを外部のWebサービスに通知できます。この仕組みと外部Webサービスを組み合わせて使うことでSlackに通知を送ることができます。

kintoneのWebhook設定画面

Webhookを使わずにkintoneをSlackと直接連携させることもできますが、kintoneに標準で用意されている機能としては、プロセス管理でレコードの作業者になったユーザーにSlackのダイレクトメッセージで通知できる、というものになります。ダイレクトメッセージではなく、Slackのチャンネルにメッセージを投稿したい場合には、ZapierやMicrosoft Power Automate(旧Microsoft Flow)、IFTTTなどのWebサービスを介する必要が出てきます。Zapierを使った解説記事は多数ありますが、今回はIntegromatというサービスを使って連携させてみます。

Integromatでシナリオを作成する

Integromatは、https://www.integromat.com/で登録でき、無料のプランも用意されています。プログラミングに関する知識がなくても、各種Webサービスを簡単に連携させることができます。Integromatでは「シナリオ」を作成することでサービス連携処理のための設定をしていきます。シナリオを作成するには、ログイン後の画面で[Create a new scenario]をクリックします。

Integromatにおけるログイン後の画面

「Web」と入力してサービスを絞り込んだ後、「Webhooks」をクリックして選択します。その後、右上にある[Continue]ボタンをクリックして次の画面に進みます。

Integromatでシナリオ作成のためにサービスを選択

真ん中に表示されている[?]をクリックした後、[Webhooks]をクリックします。

IntegromatでWebhooksモジュール追加後の画面

次に[Custom webhook]をクリックします。

IntegromatでCustom Webhookを設定

[Add]ボタンをクリックします。

Addボタンを押してWebhookを設定

[Webhook name]欄に任意の名前を入力します。後から判別しやすい名前を入力するとよいでしょう。「My gateway-webhook webhook」のままでも構いません。

Webhook名を入力する画面

[Save]をクリックすると、Webhook用のURLが発行されます。[Copy address to clipboard]をクリックしてURLをクリップボードにコピーします。

クリップボードにWebhookのURLをコピー

kintoneでWebhookを設定する

ここでkintoneアプリの設定でWebhookの設定を行います。Integromatの画面はそのままにして、別のウインドウやタブでkintoneアプリの設定画面を開き、[Webhook URL]の欄に先ほどIntegromatでコピーしたURLをペーストし、ペーストした後に先頭の「https://」を削除します。[通知を送信する条件]については今回は[レコードの追加]にチェックします。

kintoneのWebhook設定画面

[保存]ボタンを押してWebhook設定を追加した後、アプリの設定に戻り、アプリを更新するのを忘れないようにしてください(kintoneでWebhookを設定する方法の詳細についてはkintoneのヘルプを参照してください)。

Integromatに戻ってシナリオの設定を続ける

アプリを更新した後、kintoneの当該アプリ上でレコードを作成します。Webhookの通知が問題なく送信されると、Integromat上では通知の受信が成功した旨が緑色で表示されます。この表示を確認したら、[OK]を押してWebhookモジュールの設定を完了します。

kintoneからIntegromatへのWebhook通知送信後

次に、Slackと連携させるためのモジュールを設定します。Webhooksモジュールの右側にある[+]ボタンおよび[Add another module]という文字列が表示されます。その[+]ボタンをクリックすると新しいモジュールを作成します。

Webhook設定後の画面

[Search]欄に「Slack」と入力してモジュールを探し、Slackモジュールをクリックします。

Slackモジュールを追加

次にSlack上で行う処理を選択します。今回は、任意のチャンネルにメッセージを作成・送信したいので、[Create a Message]をクリックします。

Slackに実行させる処理内容を選択

通知先のSlackとの連携設定を済ませれば、通知先のチャンネルと送信する文字列を設定できるようになります。なお、私の環境では[Text]欄に日本語を正常に入力することができなかったので、他のアプリケーションやテキストエディターで入力した文字列をコピーして[Text]欄に貼り付けました。

通知先チャンネルと通知内容を設定

Integromatで作成したシナリオが動作するか確認する

[OK]ボタンを押した後、[Run Once]をクリックして、作成したシナリオがうまく動作するか確認します。実際にkintoneでレコードを作成してSlackのチャンネルに通知されるか確認しましょう。

Integromatで事前に動作確認

指定したチャンネルにメッセージが投稿されれば成功です。

Slackにメッセージが投稿

動作確認が完了した後、Integromatの画面が変わります。まるい緑の丸にチェックマークがついたアイコンが表示されれば成功です。

Integromatにおける動作確認完了後の画面

Integromatでスケジュールを有効にする

動作確認が済んだら定期的に実行されるようにスケジュールに登録します。[Run once]の下にある[SCHEDULING]をクリックして[OFF]から[ON]に変更します。

Integromatでスケジュールを設定

必要に応じてスケジュールの実行頻度を調整して[Activate]ボタンをクリックすれば完了です。

IntegromatでWebhookの設定が完了

まとめ

Integromatを使ってkintoneでレコードが追加されたらSlackのチャンネルにメッセージを投稿する方法について解説しました。Integromatであれば月に1,000回の処理まで実行可能な無料のプランも用意されており、気軽に使い始めることができます。今回は解説していませんが、Webhookで受信したJSONのデータを判定してSlackへの通知を簡単に振り分けることも可能です。

この記事が気に入ったらサポートをしてみませんか?