LoginSignup
30
26

More than 3 years have passed since last update.

【ChatWork】googleformの回答内容をchatworkに自動通知する

Last updated at Posted at 2016-04-14

※画像多め

設定する機会があったので、メモとして残すことにしました。

1.必要なもの

  • APIトークン (これがないと出来ません)

以下から利用申請が出来ます。(20分くらいで許可おります)
http://developer.chatwork.com/ja/index.html

2.フォーム & スプレッドシート作成作成

はじめに、googleフォームを作成していきます
googleフォーム作成

質問内容、回答形式は適当につくってください。
googleフォーム作成

「回答」というタブにスプレッドシートを作成するボタンがあるので、そこでスプレッドシートを作成してください。
スプレッドシート作成

今回つくったスプレッドシートは以下のとおりです。
スプレッドシート内容

3.Google Apps Script 作成

メニューボタンの「ツール > スクリプトエディタ」 でエディタを開きます。
Google Apps Script 作成

開いたエディタのメニューの「リソース > ライブラリ」を開きます。
Google Apps Script 作成

「ライブラリを検索」にプロジェクトキーを入力します。

[参考]
ライブラリ名: ChatWorkClient for Google Apps Script
GitHub: https://github.com/cw-shibuya/chatwork-client-gas
プロジェクトキー: M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT

Google Apps Script 作成

さて実際にコードをかいていきます。
  Google Apps Script 作成

ちなみにチャットワークのルームIDは #rid以下のの数字(図のモザイクの部分)
chatoworkルームID

参考にコードのせます。

function sendReport(e) {//functionてきとー
  var client = ChatWorkClient.factory({token: 'your_token'});

  // 変数名は自由に設定してください。今回はname,email,dateで設定しています  
  var name = e.namedValues['名前']; 
  var email = e.namedValues['メールアドレス'];
  var date = e.namedValues['日付'];

  var message = '';
  message =  "名前: "+name+"\n"; //見やすくするために改行いれます
  message += "メールアドレス: "+email+"\n";
  message += "日付: "+date;

  client.sendMessage({room_id: your_room_id ,body: message});
}

トリガーを設定します。「リソース > 現在のプロジェクトのトリガー」
時計マークのアイコンをクリックでも開けます。
Google Apps Script 作成

以下のように設定し、保存します。
Google Apps Script 作成

「続行」をおします。
Google Apps Script 作成

「許可」をおします。
Google Apps Script 作成

これで設定は終了です。

4.動作確認

実際に動作確認してみます。質問に答えて、送信をおします。
動作確認

スプレッドシートにデータが出力されました。
動作確認

同時にチャットワークにも通知がきました!
動作確認

30
26
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
30
26