메신저봇 r 이라는 앱으로 카링 소스 양식에 맞게 다 적고 실행도 잘 됩니다. 하지만 정작 카링을 보네려 할때 fail to send KakaoLink 라고 뜹니다. 로그인 을 확인하라는데 어떻게 하나요. 참고로 카톡에 /메 할때마다 인증하라 계속 옵니다. 어떻게 고칠까요. 소스는 여깄습니다
const kalingModule = require('kaling').Kakao();
const Kakao = new kalingModule;
Kakao.init("Javascript key", "domain");
Kakao.login("id", "password");
function getMapleData(name) {
try {
var data = org.jsoup.Jsoup.connect("https://maple.gg/u/" + name).get();
var result = {};
result.image = data.select("img.character-image").get(0).attr("src");
result.rank = data.select("div[class=col-lg-2 col-md-4 col-sm-4 col-6 mt-3]").get(0).select("span").text();
data = data.select("div.col-lg-8");
result.name = data.select("b").get(0).text();
result.server = data.select("img").attr("alt");
data = data.select("li.user-summary-item");
result.level = data.get(0).text();
result.job = data.get(1).text();
result.error = false;
return result;
} catch (e) {
var result = {};
result.error = true;
result.errorMsg = e;
return result;
}
}
function response(room, msg, sender, isGroupChat, replier, ImageDB, packageName) {
var cmd = msg.split(" ");
if (cmd[0] == "/메") {
var result = getMapleData(cmd[1]); //어차피 멮 닉네임에 띄어쓰기 못넣음
if (result.error) replier.reply("해당 캐릭터를 찾을 수 없습니다.");
else Kakao.send(room, {
"link_ver": "4.0",
"template_object": {
"object_type": "feed",
"button_title": "",
"content": {
"title": result.level + " " + result.name,
"image_url": result.image,
"link": {},
"description": "서버 : " + result.server + ", 직업 : " + result.job + "\n랭킹 : " + result.rank,
},
"buttons": [{
"title": "",
"link": {}
}]
}
});
}
카카오에서 NotificationListenerService와 WearableExtender를 사용한 자동 응답 봇을 (이용약관 및 운영정책 위반 제외) 제한하지 않겠다고 답변하였음에도 불구하고 “메신저봇은 안드로이드웨어 호환코드를 우회적으로 활용하고 있으며 약관 위배내용이고 카카오가 발견할때마다 정지를 때리고 있습니다.” 라는 주장을 하시는 이유가 무엇인가요?
1 - 1. 메신저봇이 어떤 점에서 안드로이드 웨어 호환 코드를 우회적으로 활용하고 있다는 것인가요?
1 - 2. 메신저봇의 어떤 점이 약관의 어떤 부분을 위반하고 있다는 것인가요?
"저 약관은 말장난이고 사람이 보내는게 아니면 다 차단 때리고 자기들 카카오봇 쓰게 유도하고있습니다."라는 주장에 대한 증거를 가지고 계신 것인가요?
2 - 1. "자기들 카카오봇"이라 함은 무엇을 뜻하시는 것인가요? 팬다 Jr., 방장봇, 오픈채팅봇 같은 봇을 말씀하시는 건가요?
봇이 같은 멘트를 계속 뱉으면 (인사 같은) 카카오가 메시지 자체를 보진 않지만 내부 보안 모듈로 해당 계정은 밴처리 됩니다.
현재 본문에도 본인이 쓰신것처럼 웨어러블익스텐더로 우회적으로 구현하는 방법은 공식 자료가 아니기에 약관위반 및 해킹위험이라고 밴먹이고요. 팬다 방장봇 오픈채팅봇 모두 카카오링크등을 우회적으로 사용해서 리딩방에서 불법적으로 쓰이고 있고. 그건 서버사이드에서 scrcpy같은 방법으로 구현된겁니다. 이는 카카오에서 말하는 1인 1계정 약관에 위배되고. 본인들 카카오쳇봇에 수익저해 위험이라 곧 막힐것이고. 심지어 카카오는 유사봇들처럼 직접 방에 투입할수 없는 형태입니다. 전세계적으로 이렇게 폐쇄적으로 운영하는 메시지서비스는 카카오톡이 유일합니다. 심지어 중국 위쳇조차도 지원하는데말이죠. 제가 정지를 직접 먹어봐서 말씀드리는겁니다.
"봇이 같은 멘트를 계속 뱉으면 (인사 같은) 카카오가 메시지 자체를 보진 않지만 내부 보안 모듈로 해당 계정은 밴처리 됩니다.’
도배 수준으로 메시지를 전송하여 사용자의 정상적인 이용을 방해하는 행위가 아닌 이상, 동일한 멘트로 인하여 정지를 먹은 경우를 본 적이 없습니다.
“본문에도 본인이 쓰신것처럼 웨어러블익스텐더로 우회적으로 구현하는 방법은 공식 자료가 아니기에 약관위반 및 해킹위험이라고 밴먹이고요.”
여태껏 여러 가지의 카카오톡 봇들을 봐왔으나 단순히 웨어러블 익스텐더를 이용한 자동 응답 봇의 경우 정지를 당하는 경우가 거의 없었고, 혹여나 정지를 당하더라도 약관 위반 및 해킹 위험으로 정지를 당한 것이 아니었으며, 고객 센터에 문의를 하면 해제를 해주는 것이 태반이었습니다.
“팬다 방장봇 오픈채팅봇 모두 카카오링크등을 우회적으로 사용해서 리딩방에서 불법적으로 쓰이고 있고. 그건 서버사이드에서 scrcpy같은 방법으로 구현된겁니다.”
카카오링크 자체는 카카오에서 공식적으로 제공하는 API인데, 카카오링크를 우회적으로 사용한다는 것이 무엇을 뜻하는지 상세히 설명해주실 수 있을까요?
카카오의 공식적인 입장인가요, 아니면 그저 추측인 것인가요? 근거 자료 첨부를 부탁드리는 바입니다.
“도대체 무슨심리로 이걸 옹호하고 카카오가 착하게 풀어놨다고 생각하시는지요.”
알림 기반 카카오톡 봇은 역분석 등을 통해 얻은 데이터가 아닌, 안드로이드에서 제공하는 메서드를 이용하여 구현되는 것인데 안될 이유가 있나요?
“공식적으로 더 안전한 방법은 제공하지도 않고 본인들이 말하는 해킹 및 보안위험에 다 노출시키면서요”
알림 기반 봇은 말 그대로 알림 기반입니다. 알림에서 할 수 있는 일 아니면 못한다는 뜻입니다. 그러니까, 메시지 읽기와 메시지 보내기, 메시지 읽음으로 표시하기만 할 수 있습니다. 이것을 과연 해킹 및 보안 위험에 노출되는 것으로 볼 수 있을까요?
“딱 본인이 첨부한 이미지에서조차 반복액션으로 정지 먹인거를 풀어준케이스인데 이게 맞다고 보시나요?”
유감스럽게도 해당 이미지는 반복 액션으로 정지를 당한 사례가 아닙니다.
알림 기반 봇을 악용하여 다른 이용자의 정상적인 이용을 방해하거나 피해를 입히는 행위 (예시: 짧은 간격으로 메시지를 여러 개 전송하는 행위 (이른바 도배))는 분명 잘못된 것이 맞죠. 저 또한 당연히 그러한 행위를 옹호하지 않습니다. 그러나, 이는 악성 행위를 저지를 목적으로 봇을 제작한 악성 사용자 잘못이지 알림 기반 봇 자체의 문제는 아니라고 생각합니다. 오히려 알림 기반 봇으로 편의 기능을 제공하는 사례도 여럿 보았구요.
이야기가 통해야 대화를 하지. 카카오 대응 미진한거를 쉴드치는 꼬라지가 무슨 카카오 대주주라도 되시나봅니다. 메신저봇 코드 제작자가 조금만 마음먹고 악의적으로 업데이트하면 카톡 대화내용이랑 개인정보 전부 다 훔칠 수 있는 상태인데 이걸 정상이라고 판단하는 님 수준이 진짜 왜 한국이 사기치기 좋은 나란지 알겠습니다.
당장 메신저봇 설치할때 알립접근도 위치도 소켓도 다 수동으로 열어주고 있는데 이게 개발을 조금이라도 아는 사람이면 얼마나 위험한일인지 알텐데 왜 이 악물고 쉴드를 치는건지 도저히 이해가 안됩니다. 오히려 다른나라 메신저들처럼 공식적으로 대체수단을 만들던가 이렇게 우회적으로 뿌리는걸 정상이라고 본다고요? 메신저봇에선 JAVA코드를 실행 시킬 수 있습니다. 이게 무슨말인지 몰라요? 안드로이드가 보안으로 다 막아둔 정보를 메신저봇 안에 넣으면 메신저봇 안에선 다 해집고 씹고 뜯고 맛보고 즐기고 할 수 있다고요…
심지어 배터리 예외처리까지 다 받아요. 님이 자고 있을때 원격으로 수정된 스크립트 열린 소켓으로 디버그 돌려서 로컬디비나 외부디비 접속정보 가지고 대화내용 다 훔칠 수 있는데 이게 정상이라고요? 메신저봇 R 제작자가 무슨 카카오 공식이나 정부입니까? 지금 주식봇들 거의 대부분이 메신저봇은 막히니까 SCRCPY로 사람처럼 행동하게 섞고 사람목록이나 자동친추같은기능까지 매크로로 돌리고 있는데, 제발 좀 귀랑 눈을 열고 봐요 진짜 지독한 핑프신것같은데. 안드로이드 웨어 코드는 구글이 만든 API형태니까 당연히 자기들이 멋대로 제약 걸 수 없다고요~~. 안드로이드 웨어 이전에도 삼성이랑 붙어먹을라고 타이젠일때도 자체적으로 호환되게 해놓고 웨어로 다 바뀌니까 타이젠유저 다 버려버렸는데, 그렇게 내수시장만 좀먹는 행태를 웨어는 구글코드 못건들이니까 냅두고 있는거고요. 카카오는 유저들이 똑똑해지길 원하지 않아요. 님이 딱 사례이고요. 카톡 안에 자체브라우저 아시죠? 그런 구대기같은 자체뷰어 넣어서 불편함을 초례하는 메신저는 카톡이 유일합니다.
몇 년째 알림 기반 봇을 사용하고 있는 사람으로써, 저 또한 잘 알고 있는 내용입니다. “메신저봇에선 JAVA코드를 실행 시킬 수 있습니다.” 라는 대목이 사용자가 코드를 짜는 부분 및 그를 컴파일하고 실행하는 부분 (모질라 라이노 엔진) 을 이야기하는 것으로 해석했는데, 그게 아니었나 보군요.
“위험이 도사리고 있는 봇이라는건 동의하면서”
부분적으로 비동의합니다. 개발자가 악성적인 일을 할 수 있는 코드를 심은 앱이 위험할 수도 있다는 것이지, 모든 알림 기반 봇 앱이 위험하다고 한 것이 아닙니다.
"메봇 크랙버전 돌아다니다가 "
메봇이 유료도 아니고 크랙 버전을 쓸 사람들이 있을지는 의문입니다. 뭐가 좋아서 굳이… 그걸 사용할까요…?
덧붙이자면, 전 메신저봇이 "불법"이 아니라는 주장으로 시작했는데 어쩌다가 여기까지 토론 주제가 옮겨왔는지 모르겠습니다…