【GAS】Chatwork의 Webhook을 사용해 BOT를 만들어 보자
6844 단어 ChatworkGoogleAppsScriptgas
Chatwork 공식 문서가 아니므로 자기 책임으로 이용하십시오.
안녕하세요, 사카구치 ( @ 사카구치_ 마미이 )입니다.
이번에는 "칭찬해"라고 Chatwork의 그룹 채팅에 투고하면, 칭찬을 돌려주는 BOT를 작성해 갑니다.
API 토큰 얻기
오른쪽 상단 메뉴에서 API 설정을 선택합니다.

비밀번호를 입력합니다.

API 토큰을 얻는다.

라이브러리 로드
Chatwork에 메시지 전송은 "Chatwork Client for Google Apps Script"을 이용합니다.
프로젝트 키: M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT

스크립트
const token = 'APIトークン';
function doPost(e) {
var json = JSON.parse(e.postData.contents);
if(json.webhook_event.body === "褒めて"){
var account_id = json.webhook_event.account_id;
var message_id = json.webhook_event.message_id;
var room_id = json.webhook_event.room_id;
var message = '';
message += '[rp aid=' + account_id;
message += ' to=' + room_id + '-' + message_id + '] ';
message += 'あなたは素晴らしい!';
var client = ChatWorkClient.factory({token: token});
client.sendMessage({
room_id: room_id,
body: message
});
}
}
웹 애플리케이션으로 도입
공개 > 웹 애플리케이션으로 도입을 선택한다.

배포 정보를 설정하고 Deploy를 클릭합니다.

「Current web app URL」을 메모장 등에 기재한다.
(후속 webhook 설정에서 사용합니다.)

webhook 설정
오른쪽 상단 메뉴에서 API 설정을 선택합니다.

Webhook을 선택하고 새로 만들기를 클릭합니다.

필요한 정보를 입력하고 만들기를 클릭합니다.

테스트
칭찬받았다!

마지막으로
지금은 정해진 말 밖에 돌려주지 않기 때문에, 스플릿 시트에 쓴 칭찬한 말을 랜덤에 돌려줄 수 있게 되었으면 합니다. 언제?
Reference
이 문제에 관하여(【GAS】Chatwork의 Webhook을 사용해 BOT를 만들어 보자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sakaguchi_mami/items/fe9075810ce9cbb24018
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Chatwork에 메시지 전송은 "Chatwork Client for Google Apps Script"을 이용합니다.
프로젝트 키: M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT

스크립트
const token = 'APIトークン';
function doPost(e) {
var json = JSON.parse(e.postData.contents);
if(json.webhook_event.body === "褒めて"){
var account_id = json.webhook_event.account_id;
var message_id = json.webhook_event.message_id;
var room_id = json.webhook_event.room_id;
var message = '';
message += '[rp aid=' + account_id;
message += ' to=' + room_id + '-' + message_id + '] ';
message += 'あなたは素晴らしい!';
var client = ChatWorkClient.factory({token: token});
client.sendMessage({
room_id: room_id,
body: message
});
}
}
웹 애플리케이션으로 도입
공개 > 웹 애플리케이션으로 도입을 선택한다.

배포 정보를 설정하고 Deploy를 클릭합니다.

「Current web app URL」을 메모장 등에 기재한다.
(후속 webhook 설정에서 사용합니다.)

webhook 설정
오른쪽 상단 메뉴에서 API 설정을 선택합니다.

Webhook을 선택하고 새로 만들기를 클릭합니다.

필요한 정보를 입력하고 만들기를 클릭합니다.

테스트
칭찬받았다!

마지막으로
지금은 정해진 말 밖에 돌려주지 않기 때문에, 스플릿 시트에 쓴 칭찬한 말을 랜덤에 돌려줄 수 있게 되었으면 합니다. 언제?
Reference
이 문제에 관하여(【GAS】Chatwork의 Webhook을 사용해 BOT를 만들어 보자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sakaguchi_mami/items/fe9075810ce9cbb24018
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
const token = 'APIトークン';
function doPost(e) {
var json = JSON.parse(e.postData.contents);
if(json.webhook_event.body === "褒めて"){
var account_id = json.webhook_event.account_id;
var message_id = json.webhook_event.message_id;
var room_id = json.webhook_event.room_id;
var message = '';
message += '[rp aid=' + account_id;
message += ' to=' + room_id + '-' + message_id + '] ';
message += 'あなたは素晴らしい!';
var client = ChatWorkClient.factory({token: token});
client.sendMessage({
room_id: room_id,
body: message
});
}
}
공개 > 웹 애플리케이션으로 도입을 선택한다.

배포 정보를 설정하고 Deploy를 클릭합니다.

「Current web app URL」을 메모장 등에 기재한다.
(후속 webhook 설정에서 사용합니다.)

webhook 설정
오른쪽 상단 메뉴에서 API 설정을 선택합니다.

Webhook을 선택하고 새로 만들기를 클릭합니다.

필요한 정보를 입력하고 만들기를 클릭합니다.

테스트
칭찬받았다!

마지막으로
지금은 정해진 말 밖에 돌려주지 않기 때문에, 스플릿 시트에 쓴 칭찬한 말을 랜덤에 돌려줄 수 있게 되었으면 합니다. 언제?
Reference
이 문제에 관하여(【GAS】Chatwork의 Webhook을 사용해 BOT를 만들어 보자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sakaguchi_mami/items/fe9075810ce9cbb24018
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
칭찬받았다!

마지막으로
지금은 정해진 말 밖에 돌려주지 않기 때문에, 스플릿 시트에 쓴 칭찬한 말을 랜덤에 돌려줄 수 있게 되었으면 합니다. 언제?
Reference
이 문제에 관하여(【GAS】Chatwork의 Webhook을 사용해 BOT를 만들어 보자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sakaguchi_mami/items/fe9075810ce9cbb24018
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(【GAS】Chatwork의 Webhook을 사용해 BOT를 만들어 보자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sakaguchi_mami/items/fe9075810ce9cbb24018텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)