WEB業界で働く人や興味がある人に役立つ情報サイト“qam(カム)”

JQ

2025/06/13

Google Apps Scriptを使ってチャットワークにリマインドを送ろう

投稿者: JQ
カテゴリー: プログラム >TIPS

仕事をしていると、「毎週決まった曜日、決まった時間に何かをする」というルーティン的なタスクは、必ずと言っていいほど出てくると思います。
今回はそんなルーティンワークを忘れないために、Google Apps Scriptを使ってチャットワークにリマインドを送るように設定してみたいと思います。

Google Apps Scriptとは

Google Apps Scriptは通称「GAS」と呼ばれ、Googleが提供するスクリプト言語で、Gmailやスプレッドシートに代表される、Googleのサービスを自動化したり拡張したりすることができるようになるものです。

このGASは、Googleドライブ上に生成することができるのですが、必ずGoogleのサービスと絡める必要があるわけではなく、単独で様々な作業の自動化をすることが可能です。

事前準備

仮に今回の目的を「毎週月曜日のAM10時~11時に、『このあと11:30から定例MTGがある』というメッセージをマイチャットに送る」と仮定して、手順を見ていきましょう。

まずは、Googleのアカウントを使って、Googleドライブにログインしてください。
また、チャットワークにメッセージをGASから送るためには、チャットワークのAPIトークンとルームIDが必要になりますので、こちらも控えておいてください。

GASの構築

新規プロジェクトの作成

GASの構築を始めるにはGoogle Driveの左上「+新規」ボタンから「その他」>「Google Apps Script」を選択します。
すると「無題のプロジェクト」が立ち上がりますので、この部分にスクリプトを書いていきます。

実際に記入するスクリプト

指定したチャットに任意のメッセージを送るために必要なスクリプトは以下になります。
先ほど新規プロジェクトを作成した際にもともと書かれていたfunction myFunction() {}は、削除し、下記のみにしてください。

const CHATWORK_API_TOKEN = 'あなたのAPIトークン';
const CHATWORK_ROOM_ID = '送信先のルームID';

function notification() {
  const message = "送信したいメッセージを記入します。送信したいメッセージを記入します。";
  
  const options = {
    method: 'post',
    headers: {
      'X-ChatWorkToken': CHATWORK_API_TOKEN
    },
    payload: {
      body: message
    }
  };
  
  const url = `https://api.chatwork.com/v2/rooms/${CHATWORK_ROOM_ID}/messages`;
  const response = UrlFetchApp.fetch(url, options);
  Logger.log(response.getContentText());
}

このように記述するだけで、任意のメッセージをチャットワークに送ることができるようになります。
先頭2行のチャットワークAPIトークンや、送信先のルームIDはご自分の環境に合わせて変更してください。

また、messageという定数に、実際に送りたいメッセージを入力します。ここには絵文字(一部の特殊なものを除く)も使用できますし、チャットワークで使用できる[toall]などの宛先も記述することが出来ます。

今回はマイチャットに11:30から定例MTGがあることを通知したいので、下記のように変更します。

const CHATWORK_API_TOKEN = 'あなたのAPIトークン';
const CHATWORK_ROOM_ID = 'マイチャットのルームID';

function notification() {
  const message = "この後11:30から、定例MTGが始まります。";
  
  const options = {
    method: 'post',
    headers: {
      'X-ChatWorkToken': CHATWORK_API_TOKEN
    },
    payload: {
      body: message
    }
  };
  
  const url = `https://api.chatwork.com/v2/rooms/${CHATWORK_ROOM_ID}/messages`;
  const response = UrlFetchApp.fetch(url, options);
  Logger.log(response.getContentText());
}

保存・テスト送信

スクリプトの編集が終わったら、一度保存し、その後テスト送信をしてみます。

「保存」ボタンをクリックし、「実行」ボタンをクリックしてください。数秒待つとマイチャットに設定したメッセージが送られてくると思います。

送られてこない場合は、チャットワークのAPIトークンや送信先のルームIDを確認してみてください。

自動実行設定

ここまで完了したら、あとは毎週月曜日のAM10時~11時の間に、先程のスクリプトを自動実行するように設定してみます。

左側の時計のマーク「トリガー」をクリックします。

右下の「トリガーを追加」をクリックします。
表示されたウィンドウで下記のように設定します。

  • 実行する関数を選択…notification
  • 実行するデプロイを選択…Head
  • イベントのソースを選択…時間主導型
  • 時間ベースのトリガーのタイプを選択…週ベースのタイマー
  • 曜日を選択…毎週月曜日
  • 時刻を選択…午前10時~11時

最後に右下の「保存」をクリックして完了です。これで、毎週月曜日のAM10時~11時の間に指定したメッセージがチャットワークに送られてくるようになります。

※現在のGASのトリガーの仕様では、分単位での指定はできません。指定した時間枠の中のどこかで送られて来ることになりますので、大事な予定のリマインドの場合、時刻の設定には注意してください。

まとめ

今回はGASを使ってチャットワークにリマインドのメッセージを自動で送るように設定する方法をご紹介しました。
今回はテストのため、自分宛てのみのマイチャットで試しましたが、チャットワークのルームIDさえわかれば、そのルームにメッセージを送ることも出来ますので、チームメンバーなどにリマインドを定期的に送る際にも便利です。(※そのルームに自分のアカウントが参加している必要があります。)

気になった方はぜひ、色々カスタマイズして、便利に使ってみてください。

コーディング業務のご依頼、ご相談の詳細についてはこちらから

最後までお読みいただき、ありがとうございました。

よろしければシェアしていただければ幸いです。

  • このエントリーをはてなブックマークに追加

関連記事

よろしければこちらの記事もお読みください。

WEB業界ならqam!qam(カム)はWEB業界で働く人や興味がある人に役立つ情報サイトです。
マーケティングやデザイン、マークアップ(コーディング)、プログラム、トレンドなどの情報をqamライター陣が執筆。噛めば噛むほど(読めば読むほど)制作・開発や運営・運用、業界知識やノウハウを学ぶことができます。

トップへ