GAS

GASを用いたChatWork自動API連携 – 自動投稿bot作成 –

はじめに

本記事では、実際にGASを用いたChatWork自動API連携の紹介します。

今回、作成する仕組みは、毎日定刻に定型文を送るbotになります。
具体的な利用シーンとしては、朝会や終会の連絡、お昼時間のアナウンス等に利用できると思います。

準備すること

過去の記事で前準備作業はまとめていますので、参考下さい。

手順

  1. GoogleSpreadSheetsを新規作成する
  2. スクリプトエディタ(GAS)を開く
  3. コードを埋め込む
  4. ChatWrokライブラリを設定する
  5. ウェブアプリケーションとして登録する
  6. ChatWrokのwebhookに登録する
  7. 実行テスト
  8. 定刻に実行する設定をする
  9. 動作確認
  10. 完了

GoogleSpreadSheetsを新規作成する

GoogleDriveのTOPページからSpreadSheetsを新規作成します。
(+新規 > Googleスプレッドシート)

GoogleSpreadSheets新規作成

スクリプトエディタ(GAS)を開く

作成したSpreadSheetsにてGASを開きます。
(ツール > スクリプトエディタ)

GAS開く

コードを埋め込む

開かれたGASに下記、サンプルコードを埋め込んでいきます。

新規GAS画面

サンプルコード

// チャット通知
function chatNotify() {
  var client = ChatWorkClient.factory({token: "XXXXXXXXXXXX"}); // ①Chatwork API トークンを記載
  client.sendMessage({
    room_id: XXXXXXXXXXXX, // ②チャットを通知したいチャットのIDを記載
    body: 
        "[toall]" + '\n' +
        "おはようございます。" + '\n' +
        "本日もより良い1日を!"});
   // ③送信メッセージを記載
  // 送信するチャットに改行を入れたいときは「\n」を使いましょう。
}

 

可変項目

下記3点を変更いただければサンプルコードを活用いただけます。

  1. APIトークン
  2. 送信先ルームID
  3. 送信メッセージ内容

ChatWrokライブラリを設定する

ChatWorkと連携するために専用ライブラリを設定します。
(ライブラリ > +ボタン)

1.開かれた「ライブラリの追加」にあるスクリプトID欄にIDを入力し、検索ボタンを押下
2.バージョンを選択し、追加ボタンを押下
3.ライブラリ欄にChatWorkClientが追加されていることを確認し、完了

ライブラリ追加

スクリプトID: 1nf253qsOnZ-RcdcFu1Y2v4pGwTuuDxN5EbuvKEZprBWg764tjwA5fLav

バージョン: 18

ウェブアプリケーションとして登録する

作成したプログラムをウェブアプリケーションとして利用できるように登録していきます。
(デプロイ > 新しいデプロイ > ⚙マーク > ウェブアプリ)

1.開かれた「新しいデプロイ」にある新しい説明文に適当な名前をつける
2.その他は参考画像通りに選択する
3.デプロイボタンを押下する

デプロイ作成 ウェブアプリ登録 ウェブアプリ登録内容 デプロイ完了

ChatWrokのwebhookに登録する

実際にChatWorkと連携するためにChatWorkにWebhookの設定も行っていきます。
(アカウント情報 > サービス連携 > Webhook > 新規作成)

1.Webhookの新規作成の名前に適当な名前をつける
2.URLにウェブアプリケーションを登録した際のウェブアプリURLをコピペする
3.その他は参考画像通りに選択する
4.作成ボタンを押下する

webhook位置 webhook位置2 webhook入力内容

実行テスト

実際にプログラムを実行して、正常に動くか確認します。
※初回実行時にアクセス権限を求められるのでアカウント認証を行ってください。

プログラム実行 動作確認

定刻に実行する設定をする

定刻通りに作成したプログラムを実行するために、GASのトリガーに時間設定を行います。

1.GASの左メニューにあるトリガーを選択
2.トリガーを追加ボタンを押下
3.実行したい時間を設定
4.保存ボタンを押下し、完了

トリガー位置 トリガー追加位置 セット内容

動作確認

定刻になって正常に実行されていることを確認します。

完了

以上、定刻に定型文を送るbotの完成です。

まとめ

いかがだったでしょうか?
今回作成した定刻に定型文を送るbotの仕組みを活用して、毎日行う作業をbotに任せることができると思いますので、是非参考にしていただけたら嬉しいです。

次回、メンションされた投稿を拾い上げる仕組みを作成していきますので、お楽しみに。

ABOUT ME
lusk
EC歴6年、26歳。 通販カート会社に2018年新卒で入社し、エンジニア、プロジェクトマネージャー、新規事業の立ち上げを経験。EC事業会社に転職し、データ活用を推進。 仕事を楽しくするためのツール作成や業務改善の仕組みを作ったりしてます。

LUSKNOTEをもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む