안녕하세요. Binary Lab입니다.
Tistory 블로그를 처음 시작해보는데요.
저를 구독하시면 코딩 정보 및 유쾌한 일상 정보를 실시간으로 받아보실 수 있습니다.
시작하기에 앞서, 아래대로 진행했지만 안 되는 경우 댓글로 문의해주시기 바랍니다.
이 정보는 메신저봇R 기준으로 작성되었습니다.
먼저 카카오톡 봇은 어떻게 작동되는 걸까요..?
먼저 카톡 봇을 구동시켜주는 앱이 카카오톡의 새로운 알림을 계속 읽습니다.
그리고 내가 코딩한 대로 작동합니다.
이때, iPhone은 서로의 알림을 절대로 볼 수 없도록 막아두니 안 되겠지요..;;
그래서 iPhone에는 메신저봇R, 메신저봇, 채팅 자동응답 봇 등등이 없는 겁니다.
(결국 : iPhone은 못한다.)
JavaScript
으엌 자바스크립트 어디서 많이 들어봤는데..? 흐익.. 이상한 코드들이..라고 하실 수 있지만 하면 쉽습니다(굉장히!)
카톡 봇을 구동하는 메신저봇R 등등은 저희에게 알람이 온지도 안 알려주고 폰이 마음대로 조종할까요?
아니죠 카톡 봇에서도 알림이 올 때 같이 주는 데이터가 있습니다.
음.. 예시를 들자면(?);
제가
카톡 봇입니다.
그러면 이제 알람이 왔어요?
어라!
카카오톡에서 새로 온 메시지가 있다네요! 빨리 제가 읽어서 각 스크립트마다 전해줘야겠어요(?) 읽은 뒤 전해주는 데이터는 아래처럼 줄 겁니다. (메신저봇R 기준)
function response(room, msg, sender, isGroupChat, replier, imageDB, packageName) {
}
해석해보자면
카톡 봇 구동하는 앱이 response라는 함수를 호출했어요! 그렇다는 뜻은 카카오톡 알람이 왔다는 뜻인 겁니다.
카톡 봇은 알람이 왔다는 것 말고 이 외에 다른 것들을 전해줍니다.
room : 메시지가 온 방 이름
msg : 메시지
sender : 보낸 사람
isGroupChat : 메시지를 보낸 곳이 그룹 챗(단체톡)인지
replier : 답장하는 데에 쓰는 그런 거 같아요(?)
imageDB : 보낸 사람의 프사 데이터
packageName : 패키지 이름(예 : com.kakao.talk)
이렇게 많이 줍니다.
3종 선물세트도 아니라 7종 선물세트네요..
자 그럼 if문에 대해 알아봅시다.
function response(room, msg, sender, isGroupChat, replier, imageDB, packageName) {
if(msg=="/명령어") {
replier.reply("지금 현재 명령어 목록 -> /명령어");
}
}
음..
그냥 보면 머리아프실 수 있는데, 잘 해석해보죠..
근데 내 봇 이용자 보호조치 언제 풀리는 거야..
function response(room, msg, sender, isGroupChat, replier, imageDB, packageName) { // 함수
if(msg=="/명령어") { //만약 온 메세지가 "/명령어"라면,
replier.reply("지금 현재 명령어 목록 -> /명령어"); //알람이 온 곳에 답장한다.
}
}
만약 온 메세지가 "/명령어"라면,
알람이 온 곳에 "지금 현재 명령어 목록 -> 명령어"(이)라고 답장한다.
이렇게 해석해볼 수 있습니다.
음 함수의 개념을 알아보자면
function 함수명(매개변수, 매개변수2, 매개변수3, 매개변수n) {
return Number(매개변수) + Number(매개변수2) + Number(매개변수3) + Number(매개변수n)
}
이 때,
함수명(1,2,3,4)
이렇게 호출하면 어떤 값이 나올까요?
음.. 눈치 빠른 분들은 아시겠지만, "+"는 더하는겁니다.
그래서 1+2+3+4의 값을 리턴하여, 10이 리턴됩니다.
참 쉽죠잉?
자 그럼 이제 조금은 이해될 겁니다.
앱 구동하는 곳에서 알람을 읽어서 response으로 보내줍니다.
response를 호출할 때 room, msg, sender 등등을 같이 줍니다.
위에 제가 말씀드렸다시피,
room : 메시지가 온 방 이름
msg : 메시지
sender : 보낸 사람
isGroupChat : 메시지를 보낸 곳이 그룹 챗(단체톡)인지
replier : 답장하는 데에 쓰는 그런 거 같아요(?)
imageDB : 보낸 사람의 프사 데이터
packageName : 패키지 이름(예 : com.kakao.talk)
이렇게 해석하실 수 있습니다.
이제 카톡에서 온 단어를 인식하려면 response를 이용하는 게 좋습니다.
이렇게 계속 만들다 보면 언젠가는 JavaScript 고수가 될 겁니다.
그리고 카톡 봇을 만들 때, 추천하는 카페가 있습니다
https://cafe.naver.com/nameyee
카카오톡 봇 커뮤니티 : 네이버 카페
카카오톡 봇 관련 커뮤니티 입니다.
cafe.naver.com
그리고 읽어주셔서 감사합니다.
구독하시면 더 많은 코딩 정보를 얻어보실 수 있습니다.
(강좌에 잘못된 게 있거나 이상하거나 이해가 안 되는 부분이 있다면 댓글로 남겨주세요. 강좌 처음이라 잘 못할 수 있습니다! 이해해주세요!ㅠ)
'카톡봇 🤖 > 강좌 👨🏫' 카테고리의 다른 글
[ 강좌 ] 가상 전화번호 만들어서 카카오톡 부계정 만들기(2021) (0) | 2021.01.10 |
---|---|
[ 강좌 ] 2. RPG 계정 정보를 JSON으로 알아보기 (0) | 2021.01.09 |
[ 강좌 ] 1. JSON에 대해 (2) | 2021.01.06 |
[ 소스 공유 ] 카카오톡 봇 타이머 소스 공유 (2) | 2021.01.04 |
[ 강좌 ] 함수 만들어보기 (3) | 2021.01.03 |