フォームからデータが登録された際に、Teams に通知を行いたい!という要望は多いかと思います。
通知する手順をまとめましたので、ぜひ参考にしてみてください。
SPIRAL ver.1 では、メールを利用して通知する方法とWebHookを利用して通知する方法から選ぶことができます。
利用用途に合わせて通知方法を選んでください。
通知する手順をまとめましたので、ぜひ参考にしてみてください。
SPIRAL ver.1 では、メールを利用して通知する方法とWebHookを利用して通知する方法から選ぶことができます。
利用用途に合わせて通知方法を選んでください。
通知方法の選び方
通知方法の選び方としては、プログラムによる処理の「あり」「なし」で選びます。
メール | 通常のフォームにて登録が成功した場合に通知する場合 |
---|---|
WebHook | 登録データに対する処理(プログラム) が成功・失敗した際に通知させる場合 |
メールを利用する場合の設定
手順1
通知を飛ばすためのチャネルを追加いたします。すでに通知したいチャネルがある場合は、追加不要です。
また、プライバシーは、標準/プライベート のいずれでも通知することが可能となります。
手順2
① を押下し、表示されたメニューから ② の「メールアドレスを取得」を押下します。手順3
表示されたポップアップより、メールアドレスを取得手順4
取得メールアドレスを通知したいフォームの通知メールに設定するだけで、完了となります。Webhookを利用する場合の注意点
Teams への通知機能を作成するためには、Incoming Webhook が許可されている必要があります。
サードパーティ製アプリが禁止されている場合 や Incoming Webhookが許可されていない場合は、利用することができません。
サードパーティ製アプリが禁止されている場合 や Incoming Webhookが許可されていない場合は、利用することができません。
Webhookを利用する場合のTeams側の設定
手順1
通知を飛ばすためのチャネルを追加いたします。すでに通知したいチャネルがある場合は、追加不要です。
また、プライバシーは、標準/プライベート のいずれでも通知することが可能となります。
手順2
① を押下し、表示されたメニューから ② のコネクタを押下します。手順3
「Incoming Webhook」の箇所で、③ の「構成」ボタンを押下します。初回作成の場合は、「追加」が表示されるため追加後に「構成」ボタンを押下してください。
手順4
任意の名前をつけて、Incoming Webhookを作成します。「イメージをアップロードします」にて通知時の名前やアイコンを変更することができます。
手順5
作成に成功すると Incoming Webhook のURLが生成されるので、④ のボタンを押下して保存します。Incoming Webhook のURLを使用して、通知のプログラムを作成いたしますので、漏れてしまうと、第三者からメッセージの投稿ができてしまいます。取り扱いには、ご注意ください。
URLを保存しましたら、完了ボタンを押下し、設定が終了となります。
Webhookを利用する場合のプログラム
手順1
Webhookを利用するための共通モジュールをカスタムモジュールに設定します。※カスタムモジュールについては、サポートサイト カスタムモジュールを参照ください。
設置するプログラムは、以下となります。
PHP
<?php class Teams { /** * @param array $data */ function postTeams($data){ $header = array( "Content-Type:application/json", ); // curl $curl = curl_init(); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_URL, TEAMS_WEBHOOK_URL); curl_setopt($curl, CURLOPT_HTTPHEADER, $header); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); $response = curl_exec($curl); if (curl_errno($curl)) echo curl_error($curl); curl_close($curl); return json_decode($response, true); } } ?>
また、ファイルパスは任意で設定していただけます。
手順2
通知を行うフォームのサンキューページに以下のプログラムを追加します。プログラムは、ページ上部に設置してください。
PHP
<?php // <!-- SMP_DYNAMIC_PAGE DISPLAY_ERRORS=ON NAME=TESMS_PODY --> // 設定値 define("TEAMS_WEBHOOK_URL", ""); // カスタムモジュール読込 include_once(""); // 通知文章 $data["title"] = "たいとる"; $data["text"] = <<<EOT **太字**\n _斜め文字_\n **_太字斜め文字_**\n ~~取り消し線~~\n - 中黒1 \n- 中黒2 \n- 中黒3 \n 1. 番号付き1\n 2. 番号付き2\n 3. 番号付き3\n [テキスト](URL)\n 😀😁😁\n {$SPIRAL->getContextByFieldTitle("text")} EOT; //------------------------------ // 設定値用モジュール //------------------------------ // 以下修正不要 $teams = new Teams(); $result = $teams->postTeams($data); // print_r($result); ?>
TEAMS_WEBHOOK_URL 4行目 |
Webhookを利用する場合のTeams側の設定の手順5で取得したIncoming Webhook のURLを設定 |
---|---|
include_once 6行目 |
Webhookを利用する場合のプログラムの手順1で設定したカスタムモジュールのファイルパス |
$data["title"] 8行目 |
メッセージのタイトル |
$data["text"] 9行目 |
メッセージの本文(10行目-20行目の間を修正) |
メッセージの本文は、Markdown を使用した書式設定が可能となっています。
下記を参考に設定をしてみてください。
太字 | **太字** |
---|---|
斜め文字 | _斜め文字_ |
太斜め文字 | **_太字斜め文字_** |
取り消し線 | ~~取り消し線~~ |
中黒 | - 中黒 |
リスト | 1. 番号付き |
リンク | [テキスト](URL) |
改行 | \n |
登録データ | {$SPIRAL->getContextByFieldTitle("差替キーワード")} 下記のようにリンクに埋め込むことも可能です [https;//spiral-platform.co.jp/?id={$SPIRAL->getContextByFieldTitle("差替キーワード")}]({$SPIRAL->getContextByFieldTitle("差替キーワード")}) |
最後に
設定後は動作確認を必ず行い、動作に問題がないか確認をしてください。
不具合やほかのやり方が知りたい等あれば、下記の「コンテンツに関しての要望はこちら」からご連絡ください。
不具合やほかのやり方が知りたい等あれば、下記の「コンテンツに関しての要望はこちら」からご連絡ください。