본문 바로가기
개발/카카오톡 봇

카카오톡 봇 만들기 - 5 - 봇 기능 만들기

by 문둘기 2019. 10. 9.

이번에는 여러가지 기능을 넣어볼것이다 

단순 자동응답 기능으로 랜덤 가위바위보를 만들어 보고싶다면 

제작자블로그 글을 참고하자 

저 글을 요약하자면 대답하는부분에

[[랜덤|가위|바위|보]] 

이런식 적어놓으면 가위 바위 보 중에 랜덤으로 하나를 대답하게할수있다

 

하지만 단순 자동응답 기능은 한계가 많기때문에 
자바스크립트를 이용해서 기능을 만들어 보려고한다  

여기부터는 개발지식이 전무하다면 이해하기 힘들수도있으니 
머리아픈게 싫다면 그냥 단순 자동응답기능으로 놀자

 

 

종류/언어에서 자바스크립트를 선택하고 봇생성을 해주고

 

클릭해보면 이렇게 코드가 나와있다 

response는 카톡알림이 뜰때마다 실행되는 함수다 

room은 채팅방이름
msg는 채팅메시지
sender는 보낸사람 
isGroupChat은 그룹채팅인지여부
replier는 답장할때 사용한다
ImageDB는 프로필사진관련인것으로 알고있는데 일단 무시하자 

 

 

 

정말 단순한것부터 해보자

 

if(msg == '테스트') {    
replier.reply('테스트');
}

 


위 명령어를 함수 사이에 넣자 

 

만약 테스트 라는 채팅이 온다면 , 봇이 테스트라고 대답하는 코드이다 

코드를 다 작성했으면 저장하고 리로드하고 봇 활성화해주는것은 잊지말자 

본계정으로 메시지를 보내보니까 잘 작동한다 

 

 

 

 

 

이번에는 랜덤함수를 이용해서 주사위 굴리기를 만들어보자

if (msg == "/dice") { 
var dice = Math.floor(Math.random()*6)+1;   
replier.reply(dice);
}


/dice 라는 메시지가 오면 1~6 사이의 숫자를 랜덤으로 대답하는 코드이다 

 

 

 

위 코드에 이어서 작성했다 

 

실제로 /dice 라고 보낼때마다 랜덤으로 숫자를 답하는것을 볼수있다 

 

 

var date= new Date();
var today = date.getFullYear() + "년" + ( date.getMonth() + 1 ) + "월" + date.getDate() + "일";
replier.reply(today);

이런식으로 날짜를 출력하게 할수도 있다 

 

간단한 예시들이지만 다 응용하기나름이다 

 

추후에는 웹 파싱하는것과, 날짜계산등을 해볼예정이다