위챗 챗봇 개발 실패기: Tasker와 AutoNotification으로 시도한 메신저 자동화

중국 직장인의 위챗 자동화 니즈

저는 지금 중국에서 주재원으로 근무하고 있습니다.

중국에서 근무하는 직장인이라면 위챗(WeChat)의 파워는 누구보다 잘 알 수 있습니다. 메신저로 소통하는 것은 물론 물건을 살 때도 위쳇 페이로, 간단한 앱은 또 위쳇 안에서 돌아가는 등 말 그대로 중국인들의 생활에 완전히 녹아들어 있습니다.

그런 까닭에 제가 요즘 운영하고 있는 카톡봇을 위쳇에도 똑같이 구현하는 것은 제 염원이라고 할 수 있을 듯합니다. 그래서 시도해 봤는데...

오늘은 이 위챗 챗봇 개발에 도전했던 실제 경험담을 공유하려 합니다.

메신저봇R로 맛본 자동화의 편리함

우리는 메신저봇R을 활용한 카카오톡 자동화로 많은 성공체험을 했습니다. 스터디장님의 잘 만들어진 JavaScript 코드 기반으로 시작하다 보니 시작부터 많은 성공 경험을 할 수 있었습니다.

저 또한 한 ↔ 중번역, 어색한 문법 수정, 웹사이트 요약, 등의 기능을 구현해서 잘 사용해 왔습니다.

"위챗에서도 이 메신저 자동화가 가능하다면 얼마나 편할까?"

이런 생각이 위챗 챗봇 개발 프로젝트의 시작이었습니다.

메신저봇R의 한계 발견

카카오톡 전용 서비스의 아쉬움

메신저봇R에서 활성화된 봇의 설정을 누르면 지원하는 메신저를 확인할 수 있습니다.

챗봇 한국 - 스크린 샷

이때 볼수 있는 메신저는 카카오톡 밖에 없는 것을 확인할 수 있습니다. 국내 개발된 앱이다 보니 카카오톡에 특화되어 있는 것이라 생각되는데, 해외 거주자 입장에서는 아쉬울 수밖에 없었죠.

안드로이드 알림 시스템 분석

그럼 다른 접근 방법은 없을까? 메신저봇R의 동작 원리를 분석해보니 핵심은 다음과 같았습니다:

  1. 안드로이드 알림 가로채기(Notification Intercept)

  2. 조건별 자동 응답 처리

  3. JavaScript 기반 스크립트 실행

이런 원리라면 다른 앱을 이용해서도 위챗 챗봇을 만들 수 있을 것 같았습니다.

Tasker를 이용한 대안 모색

안드로이드 자동화의 끝판왕, Tasker 발견

구글링 결과 Tasker라는 강력한 안드로이드 자동화 앱을 발견했습니다.

메신저봇R과 유사한 알림 처리 기능을 제공한다는 정보를 확인하고 바로 도전해보기로 했죠.

위의 번개모양의 아이콘이 Tasker, 그리고 알림 정보를 Intercept 하기 위해 Tasker와 함께 설치한 AutoNotification 앱입니다.

Tasker의 복잡한 인터페이스

하지만 Tasker를 실제로 사용해보니... 정말 User Unfriendly한 앱이더군요. 😅

※ 메신저봇R은 코드창을 띄워주니 더 User Unfriendly 하다면 더 User Unfriendly 하겠지만... 요즘은 오히려 코드를 맨날 봐서 그런지 코딩창이 오히려 더 친숙하다능...

  • 뭘 해야 할지 모를 휑한 메뉴

전화기의 WeChat 트래커 앱의 스크린 샷
  • 버튼 하나만 누르면 확 뜨는 복잡한 버튼 & 메뉴 구조

전화기의 트래커 앱의 스크린 샷
이벤트 카테고리 - 스크린 샷을 선택하십시오
  • 직관적이지 않은 설정 방식

  • 초보자에게는 진입 장벽이 높은 인터페이스

그래도 위챗 자동화라는 목표를 위해 포기할 수는 없었습니다.

위챗 챗봇 개발 시행착오 과정

AutoNotification 플러그인 설치

Tasker만으로는 알림 처리에 한계가 있어서 AutoNotification 플러그인을 추가로 설치했습니다. 이 조합이 메신저 자동화의 핵심 도구가 될 예정이었죠.

1단계: 위챗 알림 가로채기 성공 ✅

몇 시간의 시행착오 끝에 위챗 메시지 인터셉트에 성공했습니다!

성공 요소들:

  • 위챗 메시지 내용 추출

  • 발신자 정보 확인

  • 실시간 알림 감지

2단계: Webhook을 통한 번역 시스템 연동 ✅

기존에 구축해둔 번역 자동화 시스템과 Webhook으로 연결하는 작업도 성공적으로 완료했습니다. 위챗 메시지가 들어오면 자동으로 번역되는 시스템까지는 완벽하게 작동했죠.

3단계: 자동 응답 시도... 예상 밖의 문제 발생 ❌

이제 AutoNotification의 Reply 기능으로 번역 결과를 전송하는 일만 남았다고 생각했는데...

�전화기의 트랙 편집기 스크린 샷

첫 번째 문제: 엉뚱한 곳으로 가는 답장

  • 위챗 메시지에 대한 답장이 카카오톡으로 전송되는 황당한 상황 발생

  • 급하게 필터 조건을 설정해서 위챗 알림에만 반응하도록 수정

두 번째 문제: 답장 기능 완전 실패

  • 필터 설정 후 아예 답장이 전송되지 않는 현상 발생

  • 무엇이 문제인지 파악하기 위한 추가 분석 필요

위챗 알림 구조의 한계점

카카오톡 vs 위챗 알림 시스템 비교

한참의 분석 끝에 위챗과 카카오톡의 알림 구조 차이를 발견했습니다.

카카오톡 알림의 특징:

  • 알림을 길게 누르면 답장 입력창이 확장

  • 알림창에서 직접 Quick Reply 기능 지원

  • AutoNotification이 이 기능을 활용할 수 있음

위챗 알림의 특징:

  • 답장 입력창(Quick Reply)이 아예 없음

  • 메시지 터치 시 위챗 앱으로 이동하는 기능만 제공

기술적 한계의 발견

AutoNotification이 아무리 뛰어나도 존재하지 않는 UI 요소는 조작할 수 없었습니다.

위챗의 알림 시스템 자체가 답장 기능을 지원하지 않기 때문에 이 방식으로는 위챗 챗봇 개발이 불가능하다는 결론에 도달했습니다.

처음에 카카오톡으로 답장이 전송된 것도 이제 이해할 수 있었습니다. 시스템에서 Reply 액션을 실행할 때 답장이 가능한 알림(카카오톡)을 자동으로 찾아서 거기로 전송한 것이었죠.

실패에서 얻은 교훈과 대안

위챗 챗봇 개발 실패의 의미

비록 위챗 자동 응답 시스템 구축에는 실패했지만, 이 과정에서 얻은 것들이 많았습니다.

프로젝트의 성과:

  1. 메신저봇R 대체제 발견: Tasker + AutoNotification 조합으로 카카오톡 자동화 대안 확보

  2. 안드로이드 자동화 스킬 향상: Tasker 사용법과 알림 시스템 이해도 증가

  3. 백업 솔루션 구축: 메신저봇R 오류 시 사용할 수 있는 플랜B 마련

이 3번 백업 솔루션 구축은 제게 매우 의미가 큽니다.

현재 메신저봇R이 간헐적으로 먹통이 되는 현상이 있어서 항상 불안한 상태였기 때문이지요

이런 상황에서 Tasker 기반 자동화 시스템을 대안으로 활용할 수 있게 된 것은 분명한 성과였습니다.

간헐적 먹통 문제를 결국 해결하지 못한다면 저는 이 Tasker + AutoNotification을 활용하게 될지도 모르겠습니다.

놀라운 발견: 메신저봇R의 숨겨진 기능

WhatsApp 지원 확인

프로젝트 진행 중 흥미로운 사실을 발견했습니다. 테스트 목적으로 WhatsApp을 설치해보니 메신저봇R이 WhatsApp 메시지도 인식하더군요!

메신저봇R의 실제 지원 범위

이를 통해 알게 된 것은 메신저봇R이 카카오톡 전용이 아니라는 점이었습니다:

  • 다양한 메신저 앱의 알림을 처리할 수 있는 구조

  • 어쩌면 위챗만 알림 시스템의 구조적 한계 때문에 지원하지 않는 것일 지도...

  • 개발사에서도 같은 기술적 벽에 부딪혔을 것으로 추정

🤔 자주 묻는 질문 (FAQ)

Q1. 위챗 챗봇을 만드는 다른 방법은 없을까요?

A: 현재로서는 위챗의 알림 구조상 안드로이드 알림 기반 자동화는 어렵습니다. 위챗 공식 API나 다른 접근 방식을 고려해볼 필요가 있습니다.

Q2. Tasker 외에 메신저봇R 대체제는 있나요?

A: MacroDroid, Automate 등의 앱들도 유사한 기능을 제공하지만, 각각 장단점이 있어 용도에 맞게 선택하는 것이 중요합니다.

Q3. 메신저봇R 오류는 어떻게 해결할 수 있나요?

A: 앱 재설치, 권한 재설정, 안드로이드 업데이트 등을 시도해볼 수 있으며, Tasker를 백업 솔루션으로 준비하는 것을 권장합니다.

마치며: 중국 거주자를 위한 조언

위챗 자동화의 현실적 한계

중국 생활에서 위챗 자동화는 여전히 해결되지 않은 숙제로 남아 있습니다. 하지만 이런 시도 자체가 의미 있다고 생각합니다.

2
3개의 답글

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요