mir.pe (일반/밝은 화면)
최근 수정 시각 : 2024-04-20 22:33:02

채팅 자동응답 봇

1. 개요2. 제작 방법
2.1. 일반 자동응답 사용2.2. 자바스크립트 사용2.3. 커피스크립트 사용2.4. 루아 사용2.5. 비주얼 베이직 사용2.6. 단순 자동응답 사용
2.6.1. 태그 목록2.6.2. 사용 예시
2.7. 라코스크립트 사용
3. 여담

1. 개요


파일:채팅 자동응답 봇.png
이름 채팅 자동응답 봇[1]
개발자 Dark Tornado
플랫폼 안드로이드
Google Play 설치 링크
개발자 블로그

카카오톡 봇을 구동할 때 사용할 수 있는 앱들 중 하나로, 단순 자동응답, 자바스크립트, 커피스크립트, 루아, 라코스크립트[2], Visual Basic, IceBlock.js(일반 자동응답)[3]을 사용하여 개발할 수 있는 카카오톡 봇 어플이다. 특이점으로는 단순 자동응답 기능만을 사용할 경우 자체적인 UI 및 API를 통한 개발환경을 지원하므로, 프로그래밍 지식이 없어도 카카오톡 봇을 개발할 수 있다. 때문에 카카오톡 봇에 처음 입문하는 사람들이 사용하기에 편리하다.

현재 카카오톡이 알림구조를 변경하여 봇이 작동하지 않게되었으니 베타버전을 쓰길 바란다.
베타 6.0버전 깃허브 링크

2. 제작 방법

우선, 카카오톡 봇의 대부분은 자바스크립트[4]를 사용하기 때문에 자바스크립트의 기본 개념을 학습하고 강좌를 보는 것이 더욱 좋다. 그러니 되도록이면 자바스크립트를 미리 학습하는 것이 효과적이다. 원래, 자바스크립트를 지원하는 카톡봇 구동 앱은 기본적인 프로그래밍 지식이 있는 사람들이 쓰라고 만들어진 것이다.

하지만 채팅 자동응답 봇은 단순 자동응답 기능이 있어서 프로그래밍 지식이 없는 사람들도 사용이 가능하기에, 초보자나 처음 시작하는 사람들에게 추천되고는 한다.

유일하게 단순 자동응답 기능을 지원한다고 알려져 있으나, 단순 자동응답 기능만 지원하거나, 자동응답 기능도 지원하는 다른 앱들도 존재한다. 다만, 단순 자동응답 기능에서의 자유도는 채팅 자동응답 봇이 가장 높다고 볼 수도 있다.

2.1. 일반 자동응답[5] 사용

2020년 6월, 비주얼 베이직과 함께 지원하기 시작한 기능으로, 블록코딩과 유사한 환경에서 어떻게 작동할지 작성하면 그에 대응되는 자바스크립트 소스가 생성되고, 생성된 소스를 라이노 엔진에서 구동하는 방식이다.

사용법은 개발자가 별도로 만들어놓은 사이트[6]에서 확인할 수 있다. 해당 사이트는 앱 내부에서도 볼 수 있다.

2.2. 자바스크립트 사용

출시 당시[7]에는 단순 자동응답 기능만 지원하였으나, 2018년 4월부터 자바스크립트를 지원하기 시작하였다.
지원하는 API 목록은 앱 내부에서 확인할 수 있으며, 파편화 완화를 위해 메신저봇에서 지원하는 거의 모든 API들이 구현되어 있으니, 메신저봇을 기준으로 작성된 카카오톡 봇 문서를 확인하는 것도 좋은 방법이다.

버전 4.0부터는 API2를 부분적으로 지원하기 시작한다.

2.3. 커피스크립트 사용

채팅 자동응답 봇 내부에 커피스크립트 컴파일러가 내장되어 있으며, 해당 컴파일러를 통해 입력한 커피스크립트 소스를 자바스크립트로 컴파일한 뒤에 라이노 엔진에서 실행하는 방식으로, 사용 가능한 API는 자바스크립트와 동일하다.
2018년 6월부터 지원하기 시작했다.

2.4. 루아 사용

LuaJ라는 엔진을 통해 구동하며, 지원하는 API가 자바스크립트에 비해 다소 부실한 편이다. 이 역시 앱 내부에서 API 목록을 확인할 수 있으며, 2018년 7월부터 지원하기 시작했다.

2.5. 비주얼 베이직 사용

채팅 자동응답 봇 내부에 vb2js가 내장되어 있으며, 해당 컴파일러를 통해 입력한 비쥬얼 베이직 소스를 자바스크립트로 컴파일한 뒤에 라이노 엔진에서 실행하는 방식으로, 사용 가능한 API는 자바스크립트와 동일하다.
2020년 6월부터 지원하기 시작했다.

2.6. 단순 자동응답 사용

기본적인 틀은 A라고 말하면 B라고 답하라와 같은 구조로 설정되며, 채팅방 이름이나 보낸 사람의 이름에 따라 작동 여부를 결정하도록 설정할 수도 있다.

앱 내부에서 태그라고 불리는 [\[\이렇게\]\] 생긴 것들이 있는데, 그 태그들을 이용하여 특정 문구를 인용하거나, 특정한 동작을 실행할 수 있다.

예를 들어, \[\[보낸사람\]\]이라고 적어놓으면 단순 자동응답이 처리될 때 \[\[보낸사람\]\]이라고 적힌 부분이 채팅을 보낸 사람의 이름으로 변경되고, \[\[토스트|응답 테스트\]\] 라고 적어놓으면 해당 문구가 지워지고 토스트 메시지로 '응답 테스트'라는 문구가 출력된다.
태그들 중 \[\[만약\]\], \[\[변수\]\] 태그와 같은 프로그래밍적 요소가 있기 때문에, 다른 단순 자동응답 앱들보다는 자유도가 높은 편이다. 예를 들어, \[\[내용\]\] 태그와 \[\[삭제\]\] 태그를 이용하여 따라하기 기능을 만들 수 있다.

2.6.1. 태그 목록

2.6.2. 사용 예시


1) /코인 습득 (이) 라고 입력했을때....
다음과 같이 응답...
\[\[변수|코인(여기서는 코인이지만, 변수 이름으로 아무거나 넣을 수 있다.) |더하기|30\]\] 채굴 완료! 30코인을 얻었다!

이러면 /코인 습득 이라고 할 때 마다 코인, 즉 변수 "코인" 값에 30이 더해진다.

2) /메뉴 추천(이)라고 입력했을때,
다음과 같이 응답....
\[\[랜덤|피자|치킨|탕수육|짬뽕|파스타\]\]
이러면 봇이 자동으로 피자, 치킨, 탕수육, 짬뽕, 파스타중에
하나를 골라준다. 이걸로 확률뽑기도 가능한데..... 텍스트로 하는 양산형 게임

3) /골라 (a) (b) (이)라고 입력 했을때,
다음과 같이 응답....
\[\[랜덤|[\[자르기|[\[뒷내용]\]| |2]\]|[\[자르기|[\[뒷내용]\]| |1]\]\]\]
" 시작 부분이 일치 "로 선택해야 작동한다.
만약 유저가 /골라 치킨 피자 (이)라고 입력했을 경우,
봇은 " 치킨 ", " 피자 " <= 이 중 하나를 골라서 응답한다.

4) /낚시(이) 라고 입력 했을때,
다음과 같이 응답....
낚시게임을
시작합니다!\[\[다음채팅|5\]\]
\[\[보낸사람\]\]님은 "\[\[랜덤|[9등급]
물고기|[8등급] 열대어|[7등급]
연어|[6등급] 새우|[5등급]
돌고래|[4등급] 문어|[3등급]
킹크랩|[2등급] 고래|[1등급]
백상아리\]\]''를
낚았습니다!\[\[변수|\[\[보낸사람\]\]코인|더하기|\[\[랜덤|1
0|20|20\]\]\]\]

유저가 /낚시 (이)라고 입력했을 경우,
봇은 랜덤으로 물고기,열대어,연어,새우,돌고래,문어,킹크랩,
고래,백상아리 중 1게를 랜덤으로 응답하고 랜덤으로 유저
에게 코인을 지급한다.

2.7. 라코스크립트 사용

2019년 3월부터 지원하기 시작한 언어로, 카카오톡 봇 개발만을 위해 개발자가 새로 설계하여 구현한 언어이다.
코딩에 대한 진입 장벽을 낮추기 위해 한글로도 코딩이 가능하도록 만들어졌으나, 이를 대체할 일반 자동응답(IceBlock.js)이 탄생하면서 현재 단계적으로 지원 중단중이다.
버전 4.0부터는 기존에 만들었던 라코스크립트 봇들은 계속 작동하지만, 새로운 라코스크립트 봇을 추가할 수 없게 변경되었다.

3. 여담



파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 문서의 r121에서 가져왔습니다. 이전 역사 보러 가기
파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
[ 펼치기 · 접기 ]
문서의 r121 ( 이전 역사)
문서의 r ( 이전 역사)

[1] 채자봇, 초록봇이라고도 하며, 제작자의 닉네임을 따서 닼토봇이라고도 한다. 당시에는 봇 제작자의 닉네임 뒤에 -봇을 붙이는 방법으로 봇 구동 앱을 구분하였었다. [2] 채팅 자동응답 봇에서만 존재하는 언어 비스무리한 것으로, 자바스크립트로 컴파일되는 언어이며 한국어로 코드를 작성할 수 있다는 특징이 있다. 단계적으로 지원 중단중이다. [3] 블록코딩과 유사한 환경 [4] 정확하게는, 모질라 재단에서 개발한 자바 기반 자바스크립트 구현 라이브러리인 'Rhino' 엔진을 사용한다. [5] 처음 출시 당시에는 'IceBlock.js'이라는 이름이였다. [6] 모바일을 기준으로 제작되어 있다. [7] 이름이 '채팅 자동응답 봇'으로 변경되어 다시 출시되기 전 [8] 정확히는 투명문자 1000자를 반환하는 것이며, 카카오톡은 500자(구버전은 1000자)가 넘어가면, 그 뒷부분이 전체보기 처리되는 것을 이용하는 방식 [9] 초 단위 [10] 지원하는 지역 : 서울, 부산, 대구, 인천, 광주, 대전, 울산, 세종, 수원, 춘천, 강릉, 청주, 홍성, 안동, 포항, 창원, 전주, 군산, 목포, 여수, 독도, 제주 [11] K -> L, B -> C [12] \[\[날씨\]\] 태그 및 Utils.getWeatherJSON 메서드