オンラインミーティングが増える中、作業に没頭してしまい会議の予定を忘れてしまうことはないでしょうか?
Googleカレンダーには会議前の通知機能がありますが、モバイル通知だけでなくChatworkなどのチャットツールにリマインドが届くと、より便利なのではないかと思います。
今回は、Google Apps Script(GAS)を使って、Googleカレンダーに登録された会議の予定を、開始30分前から1時間前の間にChatworkへ自動通知する方法をご紹介します。
設定手順
1. GASを作成
-
Google ドライブ で 新規作成 → Apps Script を選択
-
下記のコードをコピー&ペースト
function notifyChatworkForMeetings() {
var calendarId = "your_calendar_id@gmail.com"; // GoogleカレンダーのID
var chatworkToken = "your_chatwork_api_token"; // Chatwork APIトークン
var roomId = "your_chatwork_room_id"; // ChatworkのルームID
var now = new Date();
var oneHourLater = new Date(now.getTime() + 60 * 60 * 1000); // 1時間後
var thirtyMinutesLater = new Date(now.getTime() + 30 * 60 * 1000); // 30分後
var calendar = CalendarApp.getCalendarById(calendarId);
var events = calendar.getEvents(thirtyMinutesLater, oneHourLater); // 30分後〜1時間後の予定を取得
var message = "";
var timeZone = Session.getScriptTimeZone();
events.forEach(function(event) {
if (event.getTitle().includes("会議")) { // タイトルに「会議」を含む場合のみ
message += "[info][title]会議リマインダー[/title]\n";
message += "■ タイトル: " + event.getTitle() + "\n";
message += "■ 開始時刻: " + Utilities.formatDate(event.getStartTime(), timeZone, "yyyy/MM/dd HH:mm") + "\n";
message += "■ 終了時刻: " + Utilities.formatDate(event.getEndTime(), timeZone, "yyyy/MM/dd HH:mm") + "\n";
message += "■ 場所: " + (event.getLocation() || "なし") + "\n";
message += "■ メモ: " + (event.getDescription() || "なし") + "\n";
message += "[/info]\n";
}
});
if (message !== "") {
sendChatworkMessage(chatworkToken, roomId, message);
}
}
function sendChatworkMessage(token, roomId, message) {
var url = "https://api.chatwork.com/v2/rooms/" + roomId + "/messages";
var options = {
method: "post",
headers: { "X-ChatWorkToken": token },
payload: { body: message }
};
UrlFetchApp.fetch(url, options);
}
2. スクリプトの設定
以下の通りコードを修正してください。各IDの取り方は、下記の記事でご紹介しています。
-
your_calendar_id@gmail.com
→ GoogleカレンダーのID(デフォルトは自分のGmailアドレス) -
your_chatwork_room_id
→ ChatworkのルームID(通知を送りたい部屋のID)
3. トリガーを設定
GASの 「トリガー」メニュー から notifyChatworkForMeetings
を 「時間主導型(1時間ごと)」 で設定します。
※ 無料プランでは1時間ごとのトリガーが上限のため、コード内で30分~1時間前の範囲で通知するように調整しています。
実行と確認
スケジューラに会議のスケジュールを登録しておくと、指定時間前にChatworkへリマインドが送られることを確認できます。
▼googleカレンダーで会議を設定
▼下記の通りリマインダーが送信されました。
まとめ
今回は、GoogleカレンダーとChatworkを連携し、会議の予定を30分前から1時間前の間に通知する方法をご紹介しました。作業に没頭していると会議を忘れがちですが、このGASを活用すれば自動的にリマインドが届くので便利です。
ぜひ活用して、会議の予定を忘れないようにしましょう!
▼ 役に立ったらブックマークお願いします!
![]() |
現役公認会計士が解説!GASで自動化する経営管理【電子書籍】[ 稲垣 大輔 ] 価格:1980円 |
![]() |
プログラム未経験者でもOK!! 業務効率化/自動化のためのGoogle Apps Script [ 事務職たらこ ] 価格:2420円 |