【GAS】Googleフォームで登録された情報をChatworkへ通知する

※投稿内容は個人の学習目的の記事であり、所属組織とは一切関係ありません。
　Chatwork公式ドキュメントではございませんので、自己責任でご利用ください。

こんにちわ、さかぐち（[@sakaguchi_mamii](https://twitter.com/sakaguchi_mamii)）です。

今回はGoogleフォームで登録された情報をChatworkへ通知しようと思います。

#APIトークンを取得する

右上のメニューから「API設定」をクリックする。
<img width="210" alt="API設定.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/4ef9404f-037d-c32d-0db9-0109164b6be5.png">

パスワードを入力する。
<img width="978" alt="スクリーンショット 2020-04-29 20.30.31.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/b8b05005-c099-bfc5-e43a-1138192bac9b.png">

APIトークンを取得する。
<img width="976" alt="スクリーンショット_2020-05-04_06_29_18.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/f8b2c206-f4aa-adae-8e1e-0c51d129145b.png">

#ルームIDを取得する

登録情報を通知するグループチャットのルームIDを取得する。
<img width="222" alt="スクリーンショット_2020-04-29_20_32_05.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/8dc413d1-6fc6-a200-a3a5-c06be7312a43.png">
グループチャットのURL末尾の数字がルームIDとなります。

#Googleフォームを作成する

Googleドライブを開き「新規」をクリックする。
<img width="300" alt="Googleドライブを開き「新規」をクリックする" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/7d06ed03-c2ad-dd72-fae5-11aca7d30e5b.png">

「Googleフォーム」をクリックする。
<img width="400" alt="「Googleフォーム」を選択する" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/dabc03d2-29cc-2fd6-2432-088b65ab8593.png">

Googleフォームを作成する。
![27134bc7-6635-4f79-9703-f6f630d16ee1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/f9e520d9-bfe9-9b98-e251-cb4e6a989395.png)

「回答」タブより「スプレットシートの作成」をクリックする。
![60c0358e-69b6-421c-9abc-d8a35a9d878c.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/dffe4f15-8dcd-a9d4-cc59-1c59947e0ea5.png)

「回答先の選択」より「新しいスプレットシートを作成」を選択肢、「作成」をクリックする。
![f638a64f-746b-4703-9b3e-06682755eca9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/eb0b777b-cca4-051e-b69f-3b6a162dc0fd.png)

![7386fcd7-cc61-4488-8e6e-c0c81e83bb6c.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/8b3d447a-48fc-d6f9-bd55-3975bfce8376.png)

#ライブラリを読み込む

Chatworkへメッセージ送信は「[Chatwork Client for Google Apps Script](https://github.com/cw-shibuya/chatwork-client-gas)」を利用します。

プロジェクトキー: M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT

<img width="704" alt="スクリーンショット 2020-04-23 11.54.09.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/de7d0248-c75a-5c67-399f-b6cf300ccdfa.png">

#スクリプト
```javascript
const token = 'APIトークン';
const room_id = '登録情報を通知するグループチャットのルームID';

function sendReport(e) {

  var date = e.namedValues['タイムスタンプ'];
  var name = e.namedValues['氏名'];
  var department = e.namedValues['部署名'];
  var title = e.namedValues['肩書き'];
  var order = e.namedValues['発注枚数'];

  var message = '';
  message +=  "[info][title]名刺発注依頼[/title]";
  message += "依頼日時: " + date + "\n";
  message += "氏名: " + name + "\n";
  message += "部署名: " + department + "\n";
  message += "肩書: " + title + "\n";
  message += "発注枚数: " + order;
  message += "[/info]";

  var client = ChatWorkClient.factory({token: token})
  client.sendMessage({room_id: room_id ,body: message});
}
```

#トリガーの設定

フォームから送信時にスクリプトを動かすよう設定します。

編集＞現在のプロジェクトのトリガー　をクリックする。
<img width="266" alt="スクリーンショット_2020-05-08_07_37_25.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/6505502d-c760-2da6-5a6d-4790fb8373fc.png">

「トリガーを追加」をクリックする。
<img width="1439" alt="スクリーンショット_2020-05-08_07_37_34.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/f08162de-28d7-1f55-a2b5-17fbae672e21.png">

「イベントの種類を選択」で「フォーム送信時」をクリックする。
<img width="738" alt="スクリーンショット_2020-05-08_07_37_53.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/a6923c59-e0c7-82a8-d8ab-33b8a652344a.png">

アカウントを選択する。
<img width="612" alt="スクリーンショット_2020-05-08_07_38_24.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/d985098f-d206-eb36-38a6-5a008778b118.png">

「名刺発注（安全でないページ）へ移動」をクリックする。
<img width="608" alt="スクリーンショット_2020-05-08_07_38_41.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/011f4be7-373e-7c61-718c-25d622c7115d.png">

「許可」をクリックする。
<img width="609" alt="スクリーンショット_2020-05-08_07_39_00.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/9523b325-cc90-0803-0070-f4c0dad81192.png">

#テスト

フォームを入力。
<img width="1440" alt="スクリーンショット 2020-05-08 07.39.42.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/723e3cfa-e34e-088a-a11f-1635418192c4.png">

送信された！
<img width="857" alt="スクリーンショット_2020-05-08_07_45_16.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/136275/8b3a9211-e5e9-0897-a29a-7edcbe24ed1c.png">

#最後に

今回は「名刺発注」の内容をグループチャットに通知する仕組みを紹介しましたが、他にも

- 備品発注
- 不具合・改善要望
- お客様からの問い合わせ内容

等、忘れてはいけない内容やスピーディーに対応したい内容をChatworkに通知することで業務効率化や品質向上につなげることができます。

※投稿内容は所属組織とは一切関係ありません。