Skip to content

Lắng Nghe

ardennguyen edited this page Jun 30, 2026 · 3 revisions

Lắng Nghe (listen)

Lắng nghe tin nhắn real-time với webhook và lưu trữ cục bộ.

# Lắng nghe cơ bản
zalo-agent listen

# Chỉ tin nhắn cá nhân + webhook
zalo-agent listen -f user -w https://your-n8n.com/webhook/zalo

# Lưu tin nhắn cục bộ dạng JSONL
zalo-agent listen --save ./zalo-logs

# Chế độ JSON + lưu + webhook
zalo-agent --json listen --save ./zalo-logs -w https://webhook.url

# Tự động chấp nhận lời mời kết bạn
zalo-agent listen --auto-accept

Flag

Flag Mô tả
-e <events> Loại sự kiện: message, friend, group, reaction
-f <filter> Lọc: user (cá nhân), group (nhóm), all (tất cả)
-w <url> URL webhook
--save <dir> Lưu JSONL cục bộ
--no-self Bỏ qua tin nhắn của chính mình
--auto-accept Tự động chấp nhận lời mời kết bạn

Lưu Trữ JSONL

Mỗi luồng hội thoại tạo một file riêng (<threadId>.jsonl), mỗi dòng là một đối tượng JSON chứa dữ liệu sự kiện và trường savedAt.

Hữu ích như giải pháp thay thế cho lịch sử trò chuyện — Zalo API chỉ trả về ~20 tin nhắn gần nhất.

Local Cache (v1.1.0)

listen cũng ghi thụ động mọi sự kiện vào SQLite theo tài khoản:

~/.zalo-agent-cli/accounts/<ownId>/zalo.db

Giúp các lệnh khác đọc cache-first:

Lệnh Hành vi cache
friend list Đọc từ cache; --no-cache fetch live
friend search Đọc từ cache; --no-cache fetch live
conv recent Đọc từ cache; --no-cache fetch live
msg history Đọc từ cache; --no-cache fetch live + backfill
msg search Tìm kiếm FTS5 trên tin nhắn trong cache

Xem Local Cache để biết thêm.

Clone this wiki locally