코딩 몰라도 되는 카카오톡 봇 만들기
Astral은 안드로이드 폰에서 카카오톡 봇을 만들 수 있게 해주는 앱입니다.
코드를 한 줄도 몰라도 비주얼 편집기로 봇을 만들 수 있고,
나중에 배워서 직접 코드를 짤 수도 있어요.
"코드는 흐르는 거야 — let the code flow" — astral
- 자동 응답 봇 — 특정 키워드가 들어오면 자동으로 답장
- 명령어 봇 —
!help,!날씨같은 명령어로 동작 - 플로우 만들기 — 그림 그리듯이 노드 연결해서 봇 제작 (코딩 필요 없음!)
- 외부 연결 — REST API로 다른 앱이나 PC에서 봇 제어
네! Astral은 비개발자를 위해 만들어졌어요.
- 비주얼 플로우 — 네모 칸(노드)을 연결만 하면 봇이 완성돼요
- 기본 템플릿 — 봇 만들 때 기본 코드가 자동으로 들어가요
- 따라하기 쉬운 UI — 모든 버튼과 설명이 알기 쉽게 되어있어요
- 배우면서 쓸 수 있음 — 코드를 배우고 싶다면, Astral에서 직접 연습할 수 있어요
- 이 저장소를 다운로드하거나 빌드해서 APK를 설치하세요
- 앱을 실행하고 알림 접근 권한을 허용하세요 (카톡 메시지를 읽기 위해 필요)
- 봇을 만들고, 카톡에서 테스트해보세요!
빌드가 어렵다면, Releases에서 바로 APK를 받을 수도 있어요.
- 아래 탭에서 Flow 선택
+버튼 눌러서 노드 추가- 노드를 연결해서 봇 로직 완성
- Compile 버튼 눌러서 봇 코드 생성
- 아래 탭에서 Bots 선택
+버튼 눌러서 새 봇 생성- 봇 이름 짓고 언어 선택 (JavaScript 추천)
- 기본 코드가 자동으로 들어가 있어요, 바로 켜서 테스트!
메시지가 오면 자동으로 답장하는 봇:
JavaScript (Node.js)
bot.onMessage(function(room, sender, msg, isGroup) {
bot.reply('안녕! 나는 Astral 봇이야 ✦');
});Python
def on_message(room, sender, msg, is_group):
bot.reply('안녕! 나는 Astral 봇이야 ✦')
bot.on_message(on_message)앱 안에서 설정을 켜면, PC나 다른 기기에서도 봇을 제어할 수 있어요.
| 기능 | 주소 | 설명 |
|---|---|---|
| 상태 확인 | GET /api/v1/ping |
서버가 잘 돌고 있는지 확인 |
| 봇 목록 | GET /api/v1/bots |
등록된 봇들 보기 |
| 봇 생성 | POST /api/v1/bots |
새 봇 만들기 {name, language} |
| 봇 상세 | GET /api/v1/bots/:id |
특정 봇 정보 보기 |
| 봇 켜기/끄기 | POST /api/v1/bots/:id/toggle |
봇 켜기 또는 끄기 |
| 봇 삭제 | DELETE /api/v1/bots/:id |
봇 삭제 |
| 봇 코드 변환 | POST /api/v1/flows/compile |
플로우 → 코드 변환 |
| 메시지 전송 | POST /api/v1/message |
{room, message}로 답장 보내기 |
| 플러그인 목록 | GET /api/v1/plugins |
설치된 플러그인 보기 |
| 서버 재시작 | POST /api/v1/server/restart |
API 서버 다시 시작 |
기본 포트: 9345 · 인증: 필요하면 설정에서 토큰 추가 가능
.atlp 파일로 기능을 확장할 수 있어요.
앱 실행 시, 특정 이벤트가 발생할 때, 봇이 만들어질 때 등에 동작하는 플러그인을 만들 수 있습니다.
example.atlp (ZIP 파일)
├── plugin.json # 플러그인 정보
└── main.js # 플러그인 코드
| 노드 타입 | 색상 | 하는 일 |
|---|---|---|
| 메시지 감지 | 파랑 | 특정 단어가 들어오면 시작 |
| 명령어 감지 | 파랑 | !명령어 형식이 들어오면 시작 |
| 답장하기 | 초록 | 채팅방에 메시지 보내기 |
| 토스트 | 노랑 | 화면에 짧은 메시지 띄우기 |
| 기다리기 | 빨강 | 지정한 시간(ms)만큼 대기 |
| 로그 기록 | 보라 | 로그에 메시지 남기기 |
| 조건 분기 | 분홍 | 조건에 따라 다른 동작 실행 |
app/
├── engine/ # 봇 엔진, API 서버, 플러그인 시스템
├── model/ # 데이터 모델
├── service/ # 카톡 알림 감지 + 응답
├── store/ # 데이터 저장
└── ui/ # 화면 UI (Compose)
- JavaScript 엔진: 안드로이드 내장 WebView V8 사용 (별도 라이브러리 없음)
- Python 엔진: Jython (순수 Java 파이썬) 사용
- API 서버: 안드로이드 내장 HttpServer 사용
GNU General Public License v3.0 — LICENSE
이 프로그램은 자유 소프트웨어입니다. 누구나 배포하고 수정할 수 있습니다.