Slack、Discord、Microsoft Teams

ルールを使って Google フォームの回答を Slack、Discord、Microsoft Teams のチャンネルに投稿する

ルールはメールのほか、各回答をチャットチャンネルに投稿することもできます。+ 新しいルールの下で Slack、Discord、Microsoft Teams のいずれかを選び、チャンネルの Webhook URL を貼り付けて、差し込みタグを使って投稿のテキストを書きます。

Slack、Discord、Microsoft Teams への投稿はベータ版です。投稿の表示がおかしい場合や届かない場合は、お問い合わせください。

1 つのルールに 1 つのチャンネル

各ルールは、+ 新しいルールで選んだ 1 つの方法で送信します:

  • メールはあなたの Google アカウントから送信します(既定。送信時は無料)
  • Slack、Discord、Microsoft Teams は 1 つのチャンネルにメッセージを投稿します
  • Webhook は署名付き JSON を独自のエンドポイントに送信します。Webhookを参照してください

同じ回答をメールと Slack の両方に送るには、ルールを 2 つ作成します。最初のルールを複製し、コピーでチャンネルを変更… を使ってください。それぞれのルールが独自のメッセージと条件を持ちます。

チャットのルールを作成する

  1. + 新しいルールをクリックして Slack、Discord、Microsoft Teams のいずれかを選びます(またはテンプレート回答を毎回 Slack に投稿するを選びます)
  2. 条件ステップ:毎回の回答のままにするか、承認後のみ / 却下時を選んで承認者を設定します。一致する回答だけを投稿するには条件を追加します。例:#facilities へは 部署 等しい Ops
  3. 宛先ステップ:チャンネルの Webhook URL を貼り付けます
  4. メッセージステップ:1 つのテキストブロックで、プレーンなメッセージとして投稿されます。既定の内容が入力済みです。編集し、差し込みタグメニューで差し込みタグを挿入します。ツールバーには、チャンネルで表示できる書式だけが並びます:Slack は太字・斜体・取り消し線、Discord はそれらに加えて下線、Teams は太字・斜体です。リンクと箇条書きは保持され、見出し、表、画像はプレーンテキストになります
  5. ルールを作成をクリックします

Webhook URL を取得する

チャットの各ルールには、チャットアプリの Incoming Webhook URL が必要です。URL は1つのチャンネルを指すため、投稿したいチャンネルごとに1つ作成します。

Slack

  1. Slack でチャンネルを開き、インテグレーションを選びます(またはアプリディレクトリで Incoming WebHooks を検索します)
  2. そのチャンネル用の Incoming Webhook を追加し、URL(https://hooks.slack.com/services/...)をコピーします

Discord

  1. チャンネルの設定(歯車アイコン)を開きます
  2. 連携サービス、ウェブフック、新しいウェブフックの順に進みます
  3. ウェブフックURLをコピーをクリックします(https://discord.com/api/webhooks/...)

Microsoft Teams

Teams では Incoming Webhook に Workflows アプリを使います:

  1. チャンネルの横にあるその他のオプション (...) をクリックし、Workflows を選びます
  2. テンプレート Webhook 要求を受信したらチャネルに投稿する(Webhook アラートをチャネルに送信するとして表示されることもあります)を選びます
  3. ワークフローを保存し、表示された URL(末尾が powerplatform.com/powerautomate/...)をコピーします

Microsoft のガイド:Workflows で Incoming Webhook を作成する。従来の Microsoft 365 コネクタ の Webhook は Microsoft により廃止が進んでいるため、Workflows を使ってください。

エディタは URL が選んだアプリのものかを確認するため、Discord の URL を Slack のルールに保存することはできません。

保存された URL

保存後、URL は暗号化して保存され、一覧とルールの宛先ステップではマスクされた状態(hooks.slack.com/.../x7Qa)でのみ表示されます。新しい URL を貼り付けるには置き換えをクリックします。

ルールを作成した後は、ルールの宛先ステップのテスト送信で、仮の回答を使ったサンプルメッセージを URL に投稿し、チャンネルに届くか確認できます。結果にはアプリが返した HTTP ステータスが表示されます(例:テストを配信しました(HTTP 200))。

送信タイミング

既定では、チャットのルールは毎回の回答で投稿します。代わりに、独自の承認者を設定して承認後のみまたは却下時に投稿することもできます。送信タイミングを参照してください。

承認とチャット

チャットのルールにも独自の承認ステップを持たせられます。送信タイミングを承認後のみにして承認者を選ぶと、その承認者が承認した後にだけ投稿します。承認者自体をチャンネルにすることもできます:Approve と Reject のボタンがそこに投稿され、結果も投稿されます。承認を参照してください。

チャンネルが動作しなくなったとき

  • チャットアプリが 404 または 410 を返した場合(Webhook が削除された場合)、ルールは一時停止し、そのことを知らせるメールが 1 通届きます。ルールを編集し、置き換えで新しい URL を貼り付けると再開します
  • その他のエラー(タイムアウト、5xx)は 1 回再試行された後、記録されます。一時停止はしません
  • 履歴ページには、各投稿とアプリが返した HTTP ステータスが表示されるため、問題のあるチャンネルをすぐに見つけられます

知っておきたいこと

  • 投稿はあなたの Google アカウントではなく Skyfield のサーバーから送信されるため、Gmail の送信上限には含まれません
  • 回答はプレーンテキストとして投稿されるため、回答者が @everyone でメンションしたり、チャンネル内で書式を変えたりすることはできません
  • 長い回答はアプリの上限に合わせて切り詰められます(Discord は約 2,000 文字、Slack は約 3,000 文字)
  • チャットのルールには有効なライセンスが必要です。無料トライアルも対象です。アップグレードせずにトライアルが終了すると一時停止し、送信時のメールは引き続き送信されます。送信と配信の上限を参照してください