오토핫키 카카오톡 매크로 - otohaski kakaotog maekeulo

Chapter.20 오토핫키로 알람 받기 입니다. 지난 챕터에서 팀뷰어를 활용해서 컴퓨터를 원격 조정하는 방법에 대해 포스팅을 했었는데요, 오늘은 알람받기 입니다. 던전을 100번 돌게끔 시켜놓고 다른 작업을 하고있는데 핸드폰에서 매크로가 종료되었다고 알람이 옵니다. 그럼 팀뷰어를 활용해 다시 100번 돌라고 작업을 시켜놉니다. 너무편하겠죠? 

방법은 여러가지가 있습니다. 핸드폰으로 문자를 전송 시킨다거나 메일을 보낸다거나. 요즘 메일 어플들은 메일이 도착하면 실시간으로 알려주죠. 문자의 경우 전송당 비용이 발생합니다. 메일 전송은 메일을 보내고 어플을 깔고 귀찮죠 거기다가 메일 사이트에 접속해서 로그인도 해야하고 전송도 해야하고 스크립트가 너무 길어집니다.

그래서 쉬운 방법을 알려드립니다. 카카오톡을 활용하는 방법인데요. pc용 카카오톡은 모두 사용해 보셨을 겁니다. pc에서 카카오 톡이 로그인되면 핸드폰으로 알람이 오는걸 아시나요? 우리는 그걸 활용 할겁니다.  

시작하기에 앞어 오늘 할 스크립트의 활용 이미지입니다.

카카오톡을 로그아웃 해주시면 위사진처럼 로그인 화면이 나오죠? 거기에 패스워드 입력 + 엔터키로 접속을 합니다. 

그럼 이런식으로 접속이 되고 내 핸드폰으로는 알람이 오죠.

매크로를 켜놓고 다른일을 하다가 pc 버전 로그인 알람이 옵니다. 그럼 내 매크로가 작업을 마췄구나 하는거죠. 

그럼 스크립트를 보여드리겠습니다.

gui,show,w300 h350 center,chapter18

gui,Add,Button,x0 y300 w150 h50 gStart, Start

gui,Add,Button,x150 y300 w150 h50 gStop, Stop

return

#이게 gui창인건 이제 모두 아실겁니다.

Start:

PostMessage,0x100,65,1966081,Edit2,카카오톡

#0x100 은 키보드를 눌러라, 65는 'a'키의 param, 1966081은 'a'키의 laram 입니다.

#postmessage에 대해 설명을 조금 더 해드릴게요. 

postmessage의 사용법은, postmessage,wparam,lparam,입력창의 이름,프로그램의 타이틀

입니다. 우리는 쓸때, PostMessage,0x201,1,마우스좌표,,녹스플레이어 이런식으로 사용했었죠

좌표값과 녹스플레이어 사이에 ,, 이있는데 이값은 생략해도되고 안해도되고 이런식입니다.

그런데 카카오톡의 경우 ,,값을 넣어주어야 됩니다. postmassage에가 키보드를 입력하라고 하는데, 그게 아이디 창에 넣으라는건지, 비밀번호창에 넣으라는건지 명시 해주어야 하기 때문이죠. 그래서 Edit2라고 넣어 주었습니다. 이 이름은 Active Window Info (Window Spy) 통해서 얻을 수 있습니다.

오토핫키 카카오톡 매크로 - otohaski kakaotog maekeulo

보시면 ClassNN: Edit2 가 보이시죠 이게 이 창의 이름입니다.

PostMessage,0x100,66,3145729,Edit2,카카오톡

#66은 'b'의 wparame, 3145729는 lparam 입니다. 

PostMessage,0x100,67,3014657,Edit2,카카오톡

#67은 'c'의 wparame, 3014657는 lparam 입니다. 

Sleep,1000

#1초정도 쉬어주어야 접속이 잘되더군요 입력속도가 너무빨라서 안되는 경향이있습니다.

PostMessage,0x100,13,1835009,Edit2,카카오톡

#이건 엔터키 입니다.

sleep,1000

return

Stop:

ExitApp

return

그런데, wparam 과 lparam의 값을 다 외우고 있을 수가 없습니다. 컴퓨터의 모든 명령을 나눠둔 거기 때문이죠, 그래서 프로그램으로 하나로 쉽게 구하실 수 있어요.

이프로그램을 사용하시면 모든 키의 값을 쉽게 얻을 수 있습니다.

짧은 스크립트지만 올려드릴게요. 

비밀번호는 모두 다릅니다. 직접 구해서 넣어주셔야해요. 

이제 이 스크립트를 지난 시간 만들었던 챕터에 대입시키면 행동이 종료될때 카카오톡에 로그인해서 알려주게 되는 겁니다. 

[Update History]

2015-02-25 v1.0.2 Minor bug fix

- 일부 비정상 동작부 알고리즘 개선, 카카오톡 pc버전 2.0.4.777 기준 정상동작 확인했습니다.

- 숨겨진 기능 : Ctrl 키를 누른 채로 동작 버튼을 누르면 카운트 없이 빠르게 시작됩니다. (테스트 용도 등..)

2015-02-13 v1.0.1 Minor bug fix

- 잠금 상태에서 자동응답 동작 시, 로그인하라는 메시지만 출력되고 그대로 자동응답 모드로 진행되던 부분 수정

2015-02-12 v1.0 최초 배포

어느덧 십년지기를 훌쩍 뛰어넘은 친구가 쇼핑몰 운영한다길래 뭔가 도움이 되어줄만한 게 없을까 생각을 하다가

카카오톡 자동응답 프로그램 같은 게 있으면 상담시간 외라던가, 부재중이라거나, 다른 고객과 상담 중인 경우 유용하게

써먹을 수 있지 않을까, 하는 생각이 들어 하나 만들었습니다.

C에 C++에 뭐 이것저것 많이 건드려봤는데 이미 다 잊어버렸고!! (검술은 잊어야 경지에 도달한다던데 코딩은..?!ㅠ)

Autohotkey 스크립트로 만들었는데 아무래도 테스터가 좀 필요할 것 같아 배포합니다.

주변 지인들끼리만 테스트 하는 건 별 의미가 없잖아요^-'

카카오톡 자동답장, 자동응답 프로그램 필요하신 분, 아래 설명 보시고 한번 사용해보시고,

문의 혹은 건의사항 있으면 프로그램 내 About 버튼 눌러보시면 feedback 제공하는 기능이 있으니 참고 부탁드립니다.

(그래봐야 이 블로그 방명록으로 연결되는 용도지만- _-)

아마 블로그 다른 포스팅들 보시면 아시겠지만, 거짓부렁자료는 취급하지 않습니다. (실질객관!)

V3 lite는 안전성이 확인되지 않았다는 이유로 제가 만든 파일 실행여부를 물어보던데, 클라우드 분석에 올려놨으니

조만간 해결되리라 보고..

도대체 무슨 프로그램이길래 "카카오톡 자동응답"이라는 말을 제목에, 태그에 저만치 갖다붙여놨냐, 하고 들어오신 분들!

간략하게 설명드릴께요, 함께 보시겠습니다.

향후 어떻게 바뀔지 모르겠지만 현재로써는 Windows용 카카오톡 PC버전 Ver 2.0.3에 맞춰 제작되었습니다.

2.0.4.777까지 정상동작 확인했습니다.

오토핫키 카카오톡 매크로 - otohaski kakaotog maekeulo

뭐 보시다시피 인터페이스는 직관적입니다.

상담중, 자리비움, 퇴근에 따라 각각의 메시지오른쪽 [현재 지정된 메시지]창에서 실시간 편집 가능하고

오른쪽 [메시지 저장]만 눌러주시면 됩니다. (또는 프로그램 종료 시, 자동으로 저장됩니다.)

위와 같이 설정된 상태에서 On/Off 버튼을 눌러 주시면 아래와 같이 5초 후 자동 응답이 시작된다는 메시지를 보여줍니다.

카운트가 끝나면 아래와 같이 On/Off 및 종료 버튼을 제외한 모든 컨트롤은 비활성 상태가 됩니다.

아래와 같이 자동 응답이 동작 중임을 알 수 있으며,

이 상태에서 카톡이 오면 최초 1번에 대해 지정된 메시지가 자동으로 발송됩니다.

 자동으로 메시지를 발송한 대화창은 그대로 열려있게 되고, 그 대화창이 열리든, 닫히든 동일인으로부터 발송된 메시지에 

대해서는 더 이상 자동회신이 발송되지 않습니다. 즉, 1회 발송 후 해당 인물명을 customers.txt에 기록하고 이후

customers.txt에 기록된 사람에게는 메시지를 발송하지 않도록 되어 있습니다.

중복발송 또는 테스트 시에는 실행파일과 동일 경로에 생성된 customers.txt파일을 지우신 후 재실행해주세요.

단, 아래 친구옵션 선택 시, 내 친구 목록에 추가되어 있는 친구에게는 자동응답을 하지 않습니다.

대신, 자동응답 동작 중 친구의 메시지는 무조건 "읽음"으로 처리되기 때문에 왜 씹느냐는 오해를 받을 수 있습니다.

아래 예시 상황 참조하시어 각별히 유의하시기 바랍니다.

[발생할 수 있는 상황 예시]

A : 왜 내 카톡보고 씹어?

B : 그게 아니라, 카톡 자동답장 프로그램이라는게 있어서 써본 건데..

A : 근데 왜 내 카톡을 보고 씹냐고, 요즘 너 좀 변한 것 같애.

B : 아니, 그게 아니고.. 카톡 자동응답 프로그램이라는게 있는데 그게,

A : 메시지는 다 읽음으로 뜨는데 아무 대답도 안해주고, 너 변했어, 우리 헤어져.

On/Off를 한번 더 눌러서 꺼주시게 되면 아래와 같이 메시지가 표시되고,

 프로그램 화면은 처음으로 돌아옵니다. 간단하죠?

주변 지인 몇몇을 통한 테스트는 완료했습니다만 최초 버전이라 아직 숨겨진 버그 등이 있을 수 있습니다.

상황과 현상을 제보해주시는 분께는 수정본을 가장 먼저 보내드리도록(...) 하겠습니다.

동영상으로 보실께요.

보시면 최초 1번 이외에는 메시지가 발송되지 않고, customers.txt에 이름을 뺐음에도 불구하고 친구 추가 이후에는

메시지가 발송되지 않는 것을 확인할 수 있습니다.

[티스토리 첨부파일]

오토핫키 카카오톡 매크로 - otohaski kakaotog maekeulo
Mall Assistant v1.0.2.exe

소스 필요하신 분들은 아래 소스 가져가세요.

오토핫키 카카오톡 매크로 - otohaski kakaotog maekeulo
몰 어시스탄트 v1.0 - 카톡자동답장.ahk

다운받은 파일 실행 시, 환경설정 파일인 MAssistant.ini 파일이 동일한 경로에 생성됩니다.

이 파일은 프로그램 내의 설정값과 상황별 지정 메시지 등을 저장하는 용도로 사용되며 메모장으로 열어보셔도 됩니다.

추가로 카톡 메시지를 접수할 경우, 카톡 메시지를 보낸 사람의 이름을 customers.txt라는 파일로 역시 동일한 경로

저장합니다. 이 파일에 이름이 올라와있는 사람의 카톡 메시지에는 더 이상 자동회신을 하지 않습니다.

'15.02.12 20:00 현재 가끔 2개 창으로 동시에 메시지가 전송되는 버그가 확인되었습니다. 로직 상으로 있을 수가 없는 일인데 현재 Autohotkey 현지 Forum에 활동하시는 분들과 해당 현상에 대한 원인 확인 중에 있습니다.

 수정 시 version up하겠으며 혹시 사용자 분 중, 2개 이상의 창에 동시에 메시지가 전송되는 현상을 겪으시는 분들은 제게 알려주시기 바랍니다.

[Update History]

2015-02-25 v1.0.2 Minor bug fix

- 일부 비정상 동작부 알고리즘 개선, 카카오톡 pc버전 2.0.4.777 기준 정상동작 확인했습니다.

- 숨겨진 기능 : Ctrl 키를 누른 채로 동작 버튼을 누르면 카운트 없이 빠르게 시작됩니다. (테스트 용도 등..)

2015-02-13 v1.0.1 Minor bug fix

- 잠금 상태에서 자동응답 동작 시, 로그인하라는 메시지만 출력되고 그대로 자동응답 모드로 진행되던 부분 수정

2015-02-12 v1.0 최초 배포

깔끔하게 티스토리 파일 첨부 기능으로 사용합니다.

제 블로그의 다른 포스팅 보시면 아시겠지만 보통 오토핫키 스크립트로 코딩 후 컴파일해서 배포할 때에는

제 경우에는 반드시 소스 코드를 함께 배포하고 있습니다. (불순한 목적으로 악성코드 등을 유포하는 나쁜 사람들이 있기 때문)

1) 버그가 있을 수 있는 최초 배포 버전입니다.

2) 비영리적 목적으로 제공되었고 수정/배포/출처 없는 이동, 재배포 등 모두 가능합니다.