/JAVA/카카오톡 봇/프로그램 소스/제목:채팅기록
Snowman Library/Soft Ware
2020. 4. 6. 05:49
안녕하세요! jh설인입니다!
오늘은 카톡 봇을 활용해 삭제된 카톡 내용을 다시 확인할 수 있는 소스를 알려드리겠습니다.
다음 이 소스는 아래의 스펙과 설정으로 구동이 되었습니다.
ChatData = {};
function response(room, msg, sender, isGroupChat, replier, ImageDB, packageName, threadId){
var info = {
name: "[" + sender + "]",str: msg
};
if (ChatData[room] == undefined)
ChatData[room] = [];
ChatData[room].push(info);
var word = msg.slice(1).split(" ");
if(msg.charAt(0) == "/" && word[0] == "채팅기록") {
var res = [];
var len = Object.keys(ChatData[room]).length;
var count = Math.min(len, word[1]);
for (var i = count; i > 0; i--) {
var chat = ChatData[room][len - i];
res.push(chat.name + " : " + chat.str);
}
var result = "◈ " + room + " ◈\n(방)의 채팅기록\n";
replier.reply(result + res.join("\n"));
}
}
위에 소스처럼 입력을 하시면 아래 대화 내용처럼 활용을 할 수 있습니다.
보시면 /채팅기록 X를 입력하시면 X의 대한 값만큼 조회가 됩니다.
그리고 또한 삭제나 가려진 대화 내용도 조회가 되오니 참고 바랍니다.
소스의 동작 원리는 카카오톡의 알림에 표시한 정보를 램에 기록하여 이전 대화 내용을 다시 꺼내는 방식이기 때문에 삭제된 카톡 대화 내용이어도 다시 불러올 수 있는 기능입니다.
여기까지는 이 속 쓰의 활용과 장점이었고요 단점이 또한 있습니다.
■단점■
대화 내용이 임시 기억장치에 기록이 되다 보니 소스를 수정하여 재시작하면 이전 내용도 삭제가 됩니다. 또한 대화 내용이 많을수록 램의 사용량이 커집니다 물론 1~5개 방정 도면 그렇게 크게 무리는 없으나 필자처럼 카톡이 20개가 넘는 단체 카톡이 있다면 좀 램의 사용량이 높아집니다.
■참고사항■
채팅 기록은 카카 톡의 대화 내용 조회 한계점은 15000줄(이 기준은 카카오톡 버전에 따라 달라질 수 있습니다.)입니다.
또한 상대방의 사용환경에 따라 (EX:OS, 또는 카톡 버전) 기록이 안될 수도 있습니다.
'Snowman Library > Soft Ware' 카테고리의 다른 글
/PYTHON/프로그램 소스/공통 예제:기초 소스 1-1 (0) | 2020.04.06 |
---|---|
/JAVA/카카오톡 봇/프로그램 소스/제목:타이머 (0) | 2020.04.06 |
/JAVA/카카오톡 봇/프로그램 소스/게임 예제:가위바위보 (1) | 2020.04.06 |
/C#/프로그램 소스/공통예제:기초 소스 1-1 (0) | 2020.04.06 |
/C++/프로그램 소스/제목:스네이크 게임/VER:0.a.1 (0) | 2020.04.06 |