chatwork×GASを久々に使ったのだけど、すっかり忘れていたのでメモ・・・
APIトークンの発行・確認
フリープランの場合はAPI設定ページから確認・発行できる
チャットワークからメッセージ取得
function fetchMessage(token,room_id){
var params = {
headers : {"X-ChatWorkToken" : token},
method : "get"
};
var url = "https://api.chatwork.com/v2/rooms/" + room_id + "/messages?force=0";
var response = UrlFetchApp.fetch(url, params);
if(response.getContentText()){
return JSON.parse(response.getContentText());
}else{
return '';
}
}
チャットワークにメッセージを送る
function sendMessage(token,room_id,body){
var params = {
headers : {"X-ChatWorkToken" : token},
method : "post",
payload : {
body : body
}
};
var url = "https://api.chatwork.com/v2/rooms/" + room_id + "/messages";
UrlFetchApp.fetch(url, params);
}
Webhookを使ってメッセージ送信をトリガーにGASを起動させる
GAS側ではdoPost
を使って、チャットワーク側の情報を受け取る
function doPost(e) {
var json = JSON.parse(e.postData.contents);
var roomId = json.webhook_event.room_id; //ルームID
var body = json.webhook_event.body;//メッセージ内容
}
GAS をウェブアプリケーションとして公開してチャットワーク側でwebhookにURLを設定をする