Gmail에 온 이메일을 ChatWork로 전달
8982 단어 ChatworkGoogleAppsScript
Gmail의 특정 이메일 (스레드)을 채팅으로 건너 뛰기
GoogleAppsScript를 사용하여
· Gmail에서 특정 조건에 맞는 이메일을 가져옵니다.
· ChatWork 라이브러리를 사용하여 메시지 전송
라는 스크립트를 만듭니다.
준비: ChatWork 토큰 정보 등
API 설정에서 얻을 수 있습니다.
개인 메뉴 안에서.
![](https://s1.md5.ltd/image/5bf5f9bfdd4a394499393c80219768df.png)
「API Token」보다 토큰을 발행할 수 있으므로, 발행하면 그것을 복사해 둡니다.
![](https://s1.md5.ltd/image/e3348cd2a5cf64abe2bb7e90b83e0eb8.png)
또, 메세지를 날리고 싶은 채팅 룸(마이 채팅등)의 ID도 필요하므로, 그것도 메모해 둡니다.
※URL의 숫자 부분
![](https://s1.md5.ltd/image/f03ba9793570be4f8f1fbb387c51e7c9.png)
To를 붙이는 경우에는 계정 ID도 필요하므로, 그것도 조사해 둡니다.
적절한 채팅으로 인용 또는 회신 할 때 메시지의 머리에 붙는 태그
aid=XXXXXXXX
라는 부분이 있습니다만, 이것이 계정 ID가 됩니다.
스크립트에 라이브러리 추가
드라이브에서 새 스크립트를 작성합니다.
프로젝트명이나 스크립트명등은 적당하게.
라이브러리의 추가는, 「리소스」->「라이브러리」로부터 실시합니다.
![](https://s1.md5.ltd/image/a3bf26f8471906a82f702566ef2e7fcb.png)
팝업 하단에 프로젝트 키를 입력하여 추가합니다.
![](https://s1.md5.ltd/image/ca2a62aa2a3023c8479c93eb8421a2cc.png)
채팅 워크 라이브러리는 안의 사람이 비공식적으로 만들어 줍니다.
채팅 워크 API를 Google Apps Script에서 사용해 보았습니다.
GitHub
프로젝트 키는 다음과 같습니다.
M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT
스크립트 작성
이런 느낌입니다.
function main() {
//チャットワークトークン・ID
const CW_TOKEN = "最初に取得したトークン";
const CW_ROOM = チャットルームID;
const CW_TO = アカウントID;
//Gmailから特定条件のスレッドを検索しメールを取り出す
var strTerms = 'is:unread "メール取得条件"';
var myThreads = GmailApp.search(strTerms, 0, 50); //条件にマッチしたスレッドを取得
var myMsgs = GmailApp.getMessagesForThreads(myThreads); //スレッドからメールを取得する→二次元配列で格納
//チャットワークAPI
var client = ChatWorkClient.factory({
token: CW_TOKEN
});
//各スレッド×メール
for (var i = myMsgs.length - 1; i >= 0; i--) {
var msgsInThread = myMsgs[i];
for (var j = 0; j < msgsInThread.length; j++) {
var msg = msgsInThread[j];
//未読のみ
if (msg.isUnread()) {
//メールを既読にする
msg.markRead();
//メッセージ作成
var msgBody = "[To:" + CW_TO + "]" +
"[info]" +
"[title]" + msg.getSubject() + "[/title]" +
msg.getFrom() + "[hr]" +
msg.getPlainBody().slice(0,400) + "[hr]" +
msg.getDate() +
"[/info]";
//チャットワークに送る
client.sendMessage({
room_id: CW_ROOM,
body: msgBody
});
}
}
}
}
읽지 않은 메일을 주워 메시지를 보내면 읽을 수 있다는 구조입니다.
메일 검색 조건은 Gmail에서 사용할 수 있는 것이 그대로 사용할 수 있습니다.
Gmail에서 사용할 수 있는 검색 연산자
또, 취득한 메시지는 메일 박스의 위로부터 (최신으로부터)이므로,
루프는 뒤에서 돌려 수신 순서로 메시지를 보내도록 하고 있습니다.
채팅 작업 메시지는 태그로 장식할 수 있습니다.
메시지 기법
트리거에 등록
그리고는 스크립트를 트리거에 등록해 두면 OK.
![](https://s1.md5.ltd/image/165f41121f4d6fa50f2715d5542a5c06.png)
Reference
이 문제에 관하여(Gmail에 온 이메일을 ChatWork로 전달), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tksnino/items/6d283860ee8cd943e792텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)