LoginSignup
0
2

More than 3 years have passed since last update.

【GAS】ChatworkのWebhookを使ってBOTを作ってみる

Last updated at Posted at 2020-05-03

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

こんにちわ、さかぐち(@sakaguchi_mamii)です。

今回は「褒めて」とChatworkのグループチャットに投稿したら、褒め言葉を返してくれるBOTを作成していきます。

APIトークンを取得する

右上のメニューから「API設定」を選択する。
API設定.png

パスワードを入力する。
スクリーンショット 2020-04-29 20.30.31.png

APIトークンを取得する。
スクリーンショット_2020-05-04_06_29_18.png

ライブラリを読み込む

Chatworkへメッセージ送信は「Chatwork Client for Google Apps Script」を利用します。

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

スクリーンショット 2020-04-23 11.54.09.png

スクリプト

const token = 'APIトークン';

function doPost(e) {

  var json = JSON.parse(e.postData.contents);
  if(json.webhook_event.body === "褒めて"){

    var account_id = json.webhook_event.account_id;
    var message_id = json.webhook_event.message_id;
    var room_id = json.webhook_event.room_id;

    var message = '';
    message += '[rp aid=' + account_id;
    message += ' to=' + room_id + '-' + message_id + '] ';
    message += 'あなたは素晴らしい!';

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

  }
}

ウェブアプリケーションとして導入

公開>ウェブアプリケーションとして導入 を選択する。
スクリーンショット 2020-05-01 16.11.08.png

デプロイ情報を設定し、「Deploy」をクリックする。
スクリーンショット_2020-05-01_16_12_04.png

「Current web app URL」をメモ帳などに記載する。
(後続のwebhookの設定で利用します。)
スクリーンショット 2020-05-01 16.12.13.png

webhookの設定

右上のメニューから「API設定」を選択する。
API設定.png

Webhookを選択し、「新規作成」をクリックする。
スクリーンショット 2020-05-01 16.10.13.png

必要な情報を入力し、「作成」をクリックする。
スクリーンショット_2020-05-01_16_10_46.png

テスト

褒めてもらった!
スクリーンショット 2020-05-04 07.18.46.png

最後に

今は決まった言葉しか返さないので、スプレットシートに書いた褒めた言葉をランダムに返せるようにできたらと思ってます。いつか。

0
2
0

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
0
2