
[GAS]チャットボットの作り方(入門編)
今回は、「Google chatへ通知を送信する」チャットボットを作成します。
(注意)無料版のGoogle chatでは作成できません!
・Google カレンダー
・Googleドライブ
・Gmail
・Google スプレッドシート
・Google フォームetc
これらのツールからの通知を管理するためにGASを利用することができます。
ーーーー使用例ーーーーーーーーーーーーー
・あなたがGoogleカレンダーを用いてスケジュールを管理しているとします。
しかし、スケジュールを見過ごし大事な用事を逃してしまうことがあるかもしれません。
GASを利用することで、GoogleチャットやLINEなどお好きなチャネルでメッセージを受け取ることができます。
・あなたがGmailで特定のメールの配信を確認したいと思っているとします。
しかし、メールの配信されたことに気づくことができないかもしれません。
GASを利用することで、GoogleチャットやLINEなどお好きなチャネルでメールの受信や本文を確認することができます。
ーーーーーーーーーーーーーーーーーーーー
その他にも、Gmailの本文や件名をスプレッドシートにまとめたり、スプレッドシートの内容をメールに含め自動送信したりすることができます。
この記事では基本的なGASの使い方をお伝えするために、Googleにメッセージを送信するチャットボットの作成方法を記載します
1.前準備
1-1.botの作成
Google chatを開いて「スペース」>「webhookを管理」>着信webhookに「bot」等の名前を付けます。



1-2. Google Apps Script(GAS)の作成
Google ドライブを開き「新規」>「その他」>「Google Apps Script(GAS)」を作成します。



2.Google chatに通知を送信するbotを作成します。
2-1.メッセージを送信する
GAS上に以下のコードを入力してください。
//chatにメッセージを送信する
function sendChatMessage() {
//投稿先指定
const url =
'https://chat.googleapis.com/・・・・・・・';
//送信内容作成
let message =
{ 'text': " 送信テスト " };
let params = {
'method': 'POST',
'headers': {
'Content-Type': 'application/json; charset=UTF-8'
},
'payload': JSON.stringify(message)
};
//送信
UrlFetchApp.fetch(url, params);
}

2-2.実行画面
コードを実行すると以下のように通知がきます。

3.通知の条件付け(配信時間や配信頻度、スレッド選択)
3-1.スレッドを指定したメッセージを送信する
Google chat 指定のスレッドに送信
以下のコードを記載してください。
//chatにメッセージを送信する
function sendChatMessage() {
//投稿先指定
const url =
'https://chat.googleapis.com/・・・・・・・';
//送信内容作成
let message =
{
'text': " 送信テスト ", "thread": {
"name":
"spaces/AAAA・・・・・・・・/threads/#######"
}
};
let params = {
'method': 'POST',
'headers': {
'Content-Type': 'application/json; charset=UTF-8'
},
'payload': JSON.stringify(message)
};
//送信
UrlFetchApp.fetch(url, params);
}


3-2. 配信時間や配信頻度の設定
GAS内の「トリガー」>「トリガーを追加」を開きます。


「時間主導型」では、「時間ベース(時間・日付・週・月)」と「時間間隔」を希望に合わせてセットし保存します。
「カレンダーから」では、参照したい人のメールアドレスを入力することで、カレンダーに同期します。
まとめ
今回はGASの基本的な使い方をチャットボットを作成することで学んできました。チャットボットを上手に活用し、あなたの仕事や日常が少しでも豊かになれば幸いです。
今後も、GASを活用した幅広い活用方法を挙げていきますので、また見に来てください!