Home [카카오 챗봇]메신저봇R 활용 카카오 챗봇 만들기 - 기본
Post
Cancel

[카카오 챗봇]메신저봇R 활용 카카오 챗봇 만들기 - 기본

Intro:

현재 많은 정보를 얻고 있는 카카오톡 오픈 채팅방에 챗봇이 존재한다. 한 멤버분이 만들어 주셨는데, 디스코드봇을 연상시키면서도 접근성이 좋아 편리해보였다. 어떻게 만드나 궁금해 하던 도중 직접 해보기로 했다.

메신저봇R

그 과정에 메신저봇R이라는 앱을 사용하는데, 이 앱은 주로 JavaScript를 사용하여 스크립트를 작성한다. Rhino JavaScript 엔진을 기반으로 작동하며, 이를 통해 사용자들이 카카오톡과 같은 메신저 앱의 알림을 처리하고 자동 응답 기능을 구현할 수 있다.

JavaScript 외에도 일부 다른 언어(예: CoffeeScript, Lua)를 지원하지만, JavaScript가 가장 널리 사용되고 기본적으로 권장된다. 메신저봇R의 스크립트 작성 환경은 ECMAScript의 이전 버전을 기반으로 하기 때문에 최신 JavaScript 문법이 모두 지원되지 않을 수 있다.

준비물

  • 안드로이드 공기계
  • 카카오톡 계정(듀얼 넘버)

방법

  1. 카카오톡메신저봇R를 구글스토어에서 다운 받아준다
  2. 카카오톡 듀얼넘버로 인증
  3. 메신저봇R 에서 봇 생성

  4. 아래 메뉴 중 연필 모양 아이콘 선택하여 코드 수정

동작 원리

메신저봇R은 핸드폰에 오는 알람을 기준으로 동작한다. 따라서, 알람이 안오는 경우(카톡방에 들어가있거나, 알람을 끈 경우)는 동작하지 않는다.

코드 설명

기본적으로 여러 함수들이 있을텐데, 가장 메인이 되는 function은 response이다.

1
2
3
function response(room, msg, sender, isGroupChat, replier, imageDB, packageName){

}

Parameter을 살펴보자

  • string room: 방 이름
  • string msg: 메시지 내용
  • string sender: 전송자 이름
  • boolean isGroupChat: 단체채팅방 여부
  • ImageDB imageDB: 이미지 정보를 담고 있는 객체
  • string packageName: 알림을 띄운 메신저앱의 패키지 이름
  • SessionCacheReplier replier: 채팅방의 정보를 담고 있으며, 알림을 받은 채팅방으로 답장을 할 수 있도록 하는 객체

Methods:

  • replier.reply(string room, string msg, boolean hideToast = false): 특정 방에 메시지를 보냄
  • hideToast: 아직 정보를 얻지 못한 채팅방으로 전송하려고 할 때 발생하는 토스트 경고 메시지를 생략할 것인지에 대한 여부 (기본값은 false)
  • replier.reply(string msg): replier가 담고 있는 채팅방에 메시지를 보냄

TODO: API V2라는게 있다는걸 찾았다..내가 쓰고있던건 legacy 였고, 여러 카카오톡 챗봇 개발자들이 모여, 새로운

This post is licensed under CC BY 4.0 by the author.

[선형대수]연립일차방정식

GCP VSCODE SSH 연결 방법