Googleフォーム投稿をSlackに通知する方法【画像で解説】

GoogleフォームからSlackに通知する方法

Googleフォームは、簡単に問い合わせフォームやアンケートなどを作れる便利なサービスです。しかし、通知がメールでしか受けられないのが惜しいところ。

とくにお問い合わせ対応をしている場合は、すぐに対応するためにSlackで通知を受けたい方も多いのではないでしょうか。

そこで今回は、Googleフォームから送信された回答を、Slackに通知する方法をご紹介します。

Googleフォームから送信された回答をSlackに通知する手順

GoogleフォームからSlackに通知する方法はいくつかあります。簡単な例で言うと、以下のように設定するとSlackに通知できます。

  1. Googleフォームに回答があった際に、メールで通知する設定を行う
  2. Gmailで転送設定をして、Slackの通知用アドレスを設定する

しかしこの方法では、

  • 「指定したチャンネル」に通知を飛ばすことができない
  • 通知内容もメールを転送しているだけなのでわかりづらい

といった問題があり、使い勝手が悪く実用的ではありません。

そこで今回は、

  • チャンネルを指定してSlackに通知を飛ばせる
  • メッセージの内容をカスタマイズできる

といった、利便性の高い「Googleフォーム→Slack通知方法」をご紹介します。

【前提】Slackの管理者権限 + Googleフォームの編集権限を追加する

GoogleフォームからSlackに通知するにあたり、作業を行うための権限設定が必要です。以下2つの権限をそれぞれ設定しておきましょう。

Slackの管理者権限

▲Slackの管理者権限

Googleフォームの編集権限

▲Googleフォームの編集権限

上記の設定ができたら、さっそくGoogleフォームからSlackに通知する設定を進めましょう。

ステップ1. Slackに通知で使うアプリを追加する

まずは、Slackに通知で使うアプリを入れていきます。手順は、以下の通りです。

「その他→App」を選択する

1.「その他→App」を選択する

検索窓に「Incoming Webhook」と入力し、Incoming WebHooksを選択する

2.検索窓に「Incoming Webhook」と入力し、Incoming WebHooksを選択する

遷移したページの「Slackに追加」をクリック

3.遷移したページの「Slackに追加」をクリック

通知させたいチャンネルを選び、「Incoming WebHooks インテグレーションの追加」ボタンをクリック

4.通知させたいチャンネルを選び、「Incoming WebHooks インテグレーションの追加」ボタンをクリック

これでアプリの追加が完了です。後でGoogleフォームとの連携に使うので、遷移したページの「Webhook URL」をメモしておきましょう。

Googleフォームとの連携に使う「Webhook URL」の画面イメージ

▲Googleフォームとの連携に使う「Webhook URL」の画面イメージ

ステップ2. GoogleフォームとSlackをGASで連携する

続いて、GoogleフォームとSlackを連携していきましょう。手順は、以下の通りです。

Googleフォーム右上のメニューから「<>スクリプト エディタ」を選択

1.Googleフォーム右上のメニューから「<>スクリプト エディタ」を選択

■スクリプトエディタが開けなかった場合

もしも以下のようにスクリプトエディタが開けなかった場合は、Googleフォームに編集権限がついていない可能性があります。

開けなかった場合の画面の例

▲開けなかった場合の画面の例

もしも上記の画面が出てしまった人は、

  • デフォルトのアカウントに変更して作る
  • 権限にデフォルトのアカウントを追加

などをしてから、再度スクリプトエディタを開いてみてください。

コードを一旦全部消して、サンプルのスクリプトを入力する

初期状態で既にコードが入っていますが、すべて消して以下に差し替えましょう。

function onFormSubmit(event) {

// 投稿者がログインしているGoogleメールアドレスが許可されていれば、表示する

var message = "投稿者: " + event.response.getRespondentEmail() + "\n";

var items = event.response.getItemResponses();

for (var i = 0; i < items.length; i++) {

message += items[i].getItem().getTitle() + ": " + items[i].getResponse() + "\n";

}

UrlFetchApp.fetch(

// Webhook URLを入れる

"https://hooks.slack.com/services/AAAAAAAA/BBBBBBBBB/CCCCCCCC",

{

"method" : "POST",

"contentType" : "application/json",

"payload" : JSON.stringify({"text": message})

}

);

}

ここからご自身のSlack環境に通知するため、スクリプトを少し修正していきます。

「//Webhook URLを入れる」というコメント下のURLをWebhook URLに変更する

スクリプトのURLを、先ほどメモした以下のWebhook URLに、差し替えましょう。

メモしたWebhook URLの場所

▲メモしたWebhook URLの場所

スクリプトの変更箇所

▲スクリプトの変更箇所

ここを変更することで、通知するSlackのチャンネルを指定できます。

「投稿者:」を、Slack通知に表示させたいメッセージに変更する

「<!here>」に変更すると、「@here」のように通知ができます。

スクリプトの変更箇所

▲スクリプトの変更箇所

保存ボタンをクリックし、スクリプトを保存

5.保存ボタンをクリックし、スクリプトを保存

編集メニューの「トリガー」を開き、「新しいトリガーを作成します。」をクリック

6.編集メニューの「トリガー」を開き、「新しいトリガーを作成します。」をクリック

フォーム送信時にコードが実行されるよう、以下のように設定して保存をクリック

7.フォーム送信時に先ほど作成したonFormSubmit関数が実行されるよう、以下のように設定して保存をクリック

エラー通知設定を「いますぐ通知を受け取る」にしている理由は、設定後に実行した際に「エラーが出ていないか」がすぐにわかるようにするためです。

スクリプトの実行を許可する承認画面(ポップアップ)が出て来るので、アカウントを選択

8.スクリプトの実行を許可する承認画面(ポップアップ)が出て来るので、アカウントを選択

警告表示の「詳細」をクリックし、「無題のプロジェクト(安全ではないページ)に移動」をクリック

警告画面の例1

▲警告画面の例1

警告画面の例2

▲警告画面の例2

初めてスクリプトを実行する場合は、「え、これ警告めっちゃ出てるけど大丈夫???」と不安になるかもしれませんが、問題ないのでご安心ください。

アクセス許可画面に移動するため、「許可」ボタンをクリック

10.アクセス許可画面に移動するため、「許可」ボタンをクリック

次のように、トリガーが登録されていればOKです。

トリガー登録後の一覧画面の例

▲トリガー登録後の一覧画面の例

ステップ3. Googleフォームで回答し、Slackに通知されるか確認する

設定が完了したので、実際にフォームを回答してSlackへの通知を確認してみましょう。今回は、以下のようなフォームを用意しました。

今回用意したフォームの項目

  • 氏名
  • メールアドレス
  • 企業名
  • 電話番号
  • お問い合わせ種類
  • お問い合わせ内容

実際にフォームを回答してみたところ、以下のようにSlackに通知が届いています。

Slackに届いたメッセージの例

▲Slackに届いたメッセージの例

無事に届けば設定が完了です。お疲れさまでした。

【余談】アイコンを好みの画像に切り替えできる

余談ですが、通知する名前やアイコンを変更することも可能です。視覚的にわかりやすいアイコンにできれば、「問い合わせが来た」とすぐにわかって効率が上がるかもしれません。

手順は、以下の通りです。

1.Slackから「Incoming Webhook」を開き、設定から編集ボタンをクリック

名前やアイコンを変更し、設定を保存するボタンをクリック。

2.名前やアイコンを変更し、設定を保存するボタンをクリック

Googleフォームから送信された回答をSlackに通知する活用例

最後に、GoogleフォームからSlack通知する方法の活用例を2つご紹介します。

  • 【例1】問い合わせ対応の効率化
  • 【例2】請求書の確認作業の効率化

一つずつ詳しく見ていきましょう。

【例1】問い合わせ対応の効率化

一つめは、「問い合わせ対応の効率化」です。連携方法でご紹介したように、問い合わせフォームを経由したお問い合わせをSlackに通知できます。

  1. 通知が届いたら、問い合わせ対応できる方がスタンプを入れる
  2. 対応が終わったら、OKスタンプを入れる

といった運用をすれば、担当者の振り分けから対応までスピーディーに行えます。Slackのスタンプ機能を使えば、進捗確認も簡単です。

スタンプで対応状況を把握する運用の例

▲スタンプで対応状況を把握する運用の例

またGoogleフォームを活用しているため、問い合わせの内容は自動でスプレッドシートに貯まっていきます。よくある問い合わせを分析してホームページを更新したり資料を作成したりすれば、対応にかかるコストを抑えられます。

このようにGoogleフォームを活用してSlack通知することで、お問い合わせ対応を効率化できるでしょう。

【例2】請求書の確認作業の効率化

ちょっと変わった例かもしれませんが、請求書の確認作業を効率化する活用例もあります。

筆者は請求書の確認作業に、Googleフォームを利用しています。Googleフォームはファイルを添付する項目を設定できるだけでなく、指定した場所にファイルを保存できます。

つまり、Googleフォームに請求書を添付する項目を作ることで、自動で請求書をGoogleドライブに入れることができるのです。

Googleフォームで請求書を送付した時の通知イメージ

▲Googleフォームで請求書を送付した時の通知イメージ

金額の確認をして振り込みが終わったら、Googleドライブで「支払い済み」のフォルダに請求書を移動する運用をしています。ここまで徹底していれば、確定申告があるときにも安心です。

請求書を管理しているGoogleドライブのサンプル

▲請求書を管理しているGoogleドライブのサンプル

まとめ

今回は、「GoogleフォームからSlackに通知する方法」をご紹介しました。

Googleフォームは、簡単にお問い合わせフォームを作れるWebサービスです。Slackへの通知ができれば、問い合わせ後の対応に関してもスムーズに進めやすくなります。

案件管理が効率化していけば、より多くの案件を受注できるようになるかもしれません。

(執筆:しろ 編集:泉)

SHARE

  • 広告主募集
  • ライター・編集者募集
  • WorkshipSPACE
週2日20万円以上のお仕事多数
Workship