카카오톡 봇 학습 - kakaotog bos hagseub


카카오톡 봇 개발

카카오톡 봇 개발 강좌를 시작합니다.

2018. 2. 14. 18:55

카카오톡 봇 학습 - kakaotog bos hagseub

1. 개요

자바스크립트를 이용한 카카오톡 개발 강좌를 시작합니다.

자동 응답기 형으로 제작될 예정이며

미리 자바스크립트를 학습하시고 보시는 것을 추천합니다.

(이 블로그에 나오는 모든 스크립트는 자유롭게 사용이 가능하며 이 블로그는 영리적 목적으로 사용되지 않습니다.)

2. 알아두기

가상 전화번호를 이용해 을 테스트하거나

카카오톡 오픈채팅방을 이용해 테스트하는 것을 추천드립니다.

 오픈채팅방 이름

오픈채팅방 바로가기

오픈채팅방 방장

오픈채팅방 인원 

 카카오톡 봇 (인공지능)

(바로가기)

 코콩찌 ♥

 100명 이상

 인공지능 개발소

(바로가기)

 matt9316

 100명 이상 

 카카오톡 봇 만들기

(바로가기)

 ...

90명 이상 

 카카오톡 봇 배우기

(바로가기)

그마상이다! 

90명 이상 

(2018년 2월 14일 기준)

카카오톡 ID : aidenkorbot 으로 메시지를 보내 오류를 해결해 드릴 수 있습니다. (오후 9시부터 오전 2시까지 확인가능)

(9호출을 입력해 저를 호출해주세요)

스크립트만 가져 가실 사람은 사양합니다.

오픈채팅방에서는 (봇 계정) DT.ㅂ (일반 계정) DT.ㅅ으로 활동하고 있습니다.

3. 글목록

[1강] 기본설정 - 봇을 다운로드 해보자 

(클릭)

 [2강] 메시지 전송 - 봇으로 메시지를 보내보자

(클릭)


말그대로 카카오톡 봇(자동응답)

function response(room, msg, sender, isGroupChat, replier, ImageDB){           

//room = 방이름    msg =  문자       sender  보낸사람  등등 잘 활용하면됨

참고로 replier.reply 안에 엔터키가 안먹음으로 \n을 사용해야함

if(room=="??"){             //사용할 단톡방이름 
replier.reply("카카오봇작동중")          //응답할 문자
if(msg=="?"){                            //?라고 문자가 왔을떄
replier.reply("???")}                     //???라고 답을 보낸다.
if (msg.trim()== "검색어") {                   //검색어라는 문자가 왔을때
    var u = Utils.getWebText("https://www.naver.com")       
    var a = u.split("급상승 검색어 검색어") 
    var b = a[1].split("11") 
    var c = b[0].replace(/(<([^>]+)>)/g,"") 
    c = c.replace(/\n\n\n/g,"\n").replace(/(?![0-9]+)  /g,"").trim().replace(/(?=(\D))\b/g,".") 
    replier.reply("[실시간 급상승 검색어]\n "+c)                   //네이버의 실시간 급상승 검색어 10개를 보내준다.
} 
} 

} 
} 
} 
function onCreate(savedInstanceState,activity) { 

    var layout=new android.widget.LinearLayout(activity); 

    layout.setOrientation(android.widget.LinearLayout.HORIZONTAL); 

    var txt=new android.widget.TextView(activity); 

    txt.setText("액티비티 사용 예시"); 

    layout.addView(txt); 

    activity.setContentView(layout); 
} 
function onStartCompile(){} 
function onResume(activity){} 
function onPause(activity){} 
function onStop(activity){}



-----------------------------------------------------------------------------------------------------------------------------------

날씨와 검색어추가

function getWeathetInfo(pos) {  
try{  
var data = Utils.getWebText("https:m.search.naver.com/search.naver?query=" + pos + "%20날씨"); 
  data = data.replace(/<[^>]+>/g,"");   
   data = data.split("월간")[1];   
  data = data.split("시간별 예보")[0];  
   data = data.trim();  
  data = data.split("\n");  
  var results = [];  
results[0] = data[0];   
  results[1] = data[3].replace("온도", "온도 : ").trim() + "℃";  
   results[2] = data[4].replace("온도", "온도 : ").trim() + "℃";  
   results[3] = data[9].replace("먼지", "먼지 : ").trim();  
   results[4] = data[13].replace("습도", "습도 :").trim() + "%"; 
    var result = "[" + pos + " 날씨 정보]\n\n상태 : " + results.join("\n");  
    return result;  
}  
catch(e) {  
return null;  
} 
} 

function response(room, msg, sender, isGroupChat, replier, ImageDB){ 
if(room==""){ 
msg = msg.trim(); 

var cmd = msg.split(" ")[0];

var data = msg.replace(cmd + " ", ""); 

if(cmd == "/날씨") { 

var result = getWeathetInfo(data); 

if(result == null)  { 

replier.reply(data + "의 날씨 정보를 가져올 수 없습니다."); 

} else { 
             replier.reply(result); 

        }
    
 } 
replier.reply("카카오봇작동중") 

if (msg.trim()== "검색어") { 
    var u = Utils.getWebText("https://www.naver.com") 
    var a = u.split("급상승 검색어 검색어") 
    var b = a[1].split("11") 
    var c = b[0].replace(/(<([^>]+)>)/g,"") 
    c = c.replace(/\n\n\n/g,"\n").replace(/(?![0-9]+)  /g,"").trim().replace(/(?=(\D))\b/g,".") 
    replier.reply("[실시간 급상승 검색어]\n "+c) 
} 

} 
if(room==""){ 
if (msg.trim()== "검색어") { 
    var u = Utils.getWebText("https://www.naver.com") 
    var a = u.split("급상승 검색어 검색어") 
    var b = a[1].split("11") 
    var c = b[0].replace(/(<([^>]+)>)/g,"") 
    c = c.replace(/\n\n\n/g,"\n").replace(/(?![0-9]+)  /g,"").trim().replace(/(?=(\D))\b/g,".") 
    replier.reply("[NAVER실시간 급상승 검색어]\n "+c) 
} 
} 
} 

function onCreate(savedInstanceState,activity) { 

    var layout=new android.widget.LinearLayout(activity); 

    layout.setOrientation(android.widget.LinearLayout.HORIZONTAL); 

    var txt=new android.widget.TextView(activity); 

    txt.setText("액티비티 사용 예시입니다."); 

    layout.addView(txt); 

    activity.setContentView(layout); 
} 
function onStartCompile(){} 
function onResume(activity){} 
function onPause(activity){} 
function onStop(activity){}

준비물 카카오톡, 카카오톡 봇

카카오톡 봇 학습 - kakaotog bos hagseub

만들다 보니 재밌다... 

자바스크립트 공부해봐야지