본문 바로가기

카카오톡봇

카카오톡봇 강좌 13 - 메일쓰기

 저번부터 메일쓰기에 대해 물어보신분들이 많아 강좌로 써봅니다.

 우선 은빛봇에 있는 메일쓰기 기능은 메일을 쓴 후 수신자가 처음 말할 때 메일이 전송되는데요. 이 기능을 만들기 위해서는 무엇이 필요할까요?
 먼저 메일을 받는 사람의 닉네임을 가져와 그 닉네임을 가진 사람이 처음 말하면 메세지를 보내야 합니다. 그리고 봇이 여러 방에 있을경우 다른 두 방의 같은 닉네임을 가지고 있는 사람이 있으면 전달이 잘못 될 수가 있습니다.

 그래서 저는 메일함 이라는 폴더안에 (수신자이름)+room을 제목으로 한 파일에 내용을 저장합니다. 파일저장법을 모르신다면 이전 블로그에서 썼던 DataBase에 대한 글을 보시고 오세요.(강좌1, 강좌2)

 우선 입력형태를 /메일쓰기 수신자:메일내용 으로 할것입니다. 그리고 출력형태는

💬송신자: 김지영
내용: 얍

 이렇게 나오게 할것입니다. 한번
/메일쓰기 (수신자이름):(내용) 이라고 메세지가 오면 메일함 이라는 폴더에 (수신자이름)+room을 제목으로 하고 내용을

송신자: sender
내용: (내용)

로 하는 소스를 짜보세요. (split를 이용하면 편합니다. 강좌)

 그러면 메일쓰기가 완성될 것 입니다. 이제 메일을 받는 소스가 필요한데요. 이 경우 변수에 메일함 폴더에서 sender+room 이라는 제목을 불러오는 변수를 하나 만들고 그 변수값이 null이 아니면 메일을 보내게 합니다. 그리고 그 메일을 삭제해주면 완성

var mail=DataBase.getDataBase("메일함",sender+room);
if(msg&&mail!=null){
    replier.reply(mail);
    DataBase.removeDataBase("메일함",sender+room);
}