GAS에서 hangouts chat의 bot를 만들어보세요

5010 단어 HangoutsChatbotgas
google 근사한 채팅 도구, hangouts chat의 bot를 작성해 본 메모입니다.

공식 튜토리얼 이 있기 때문에, 이것에 따라 bot를 작성·공개해 보겠습니다.

bot 본체 만들기



최소한의 기능을 가진 템플릿 가 준비되어 있습니다. 이것을 열고 드라이브에 적절한 이름으로 저장합니다.


일단 bot 그 자체는 이것으로 완성입니다. 기능을 구현할 때는, 여기에 보존한 코드를 개수해 갑니다.

bot를 Google Cloud Platform에 게시



메뉴에서 "공개"⇒ "매니페스트에서 배치"를 선택합니다.

Latest Version (HEAD)의 「Get Id」로부터 배치 ID를 취득할 수 있으므로, 메모장으로도 복사해 둡니다.

메뉴에서 리소스 ⇒ Cloud Platform 프로젝트를 선택합니다.

프로젝트 이름과 고유 ID가 있는 링크에서 Google Cloud Platform 대시보드로 건너뜁니다.

메뉴에서 "API 및 서비스"⇒ "라이브러리"로 이동하여 Hangouts Chat API를 활성화합니다.

Hangouts Chat API 설정을 열고 필요한 사항을 입력합니다.
「변경을 저장」으로 저장하면 공개 완료입니다.

봇 이름



적절한 이름을 입력합니다. bot를 추가할 때는 이 이름으로 검색하게 됩니다.

아바타 URL



채팅 아이콘을 설정합니다. https에 게시된 URL이어야 합니다.
아이콘이 없으면 채팅 아이콘을 빌리십시오.

설명



적절하게 입력합니다.

기능



복수 멤버의 룸에 투입해 움직이고 싶은 경우는 「봇은 룸내에서 작동합니다」
DM(일대일)의 채팅으로 움직이고 싶은 경우는 「봇은 다이렉트 메세지내에서 기능합니다」
에 체크를 넣습니다.

연결 설정



Apps Script project를 선택하고 방금 복사한 배치 ID를 붙여넣습니다.

권한



'도메인의 특정 사용자 및 그룹'을 선택하고 먼저 자신의 이메일 주소를 입력합니다. 다른 사람에게 사용하고 싶은 경우에는 해당 이메일 주소도 입력합시다.

bot를 사용해보기



채팅에서 '사용자, 채팅방, 봇 찾기'에서 설정한 봇 이름으로 검색합니다.
목록에 나온 bot의 "메시지"를 누르면 bot 추가가 완료됩니다.


말을 걸면 "You said "말한 내용""이라고 돌려줍니다.


답장 내용을 바꿔보세요



모처럼이므로, 회신 처리를 조금 만져 보겠습니다.
작성한 프로젝트 중에는 onMessage(event) 라는 함수가 있어 이것이 메시지를 받는 처리가 됩니다.
보내진 메시지는 event.message.text 에서 얻을 수 있고 {"text":"返信したいテキスト"} 를 return 하면 메시지를 회신할 수 있을 것 같습니다.
function onMessage(event) {
  var said = event.message.text;
  var msg = "";
  if (said === "ズン") {
    msg = "ズンズン";
  } else if (said === "ズンドコ") {
    msg = "\き!よ!し!/";
  } else {
    msg = "えっ?";
  }
  return { "text": msg };
}

이런 식으로 움직입니다.


요약



bot이라고 하면, 「ruby나 Python으로 써, 서버 빌려, 프로그램 두어…
라고 하는 이미지가 있었습니다만, GAS와 GCP를 이용하는 것으로 꽤 간편하게 bot를 구축할 수 있었습니다.
그 외의 google계 API와도 제휴가 용이할 것 같기 때문에, google계의 툴을 다용하고 있는 환경에서는 꽤 파워를 발휘할 것 같습니다.

좋은 웹페이지 즐겨찾기