Package Information
Released: this month
Downloads: 0 weekly / 0 monthly
Latest Version: 1.0.0
Author: Custom Zalo Node
Documentation
n8n-nodes-zalo-personal
Bộ Node n8n Community kết nối tài khoản Zalo cá nhân (Unofficial Zalo Automation)
Được phát triển độc lập, tối ưu siêu nhẹ (~50KB so với ~9MB của codedao), không rác, mã nguồn mở 100% bằng TypeScript.
🌟 Tính năng chính
1. Tin nhắn (Message)
- Gửi tin nhắn văn bản (
sendMessage): Gửi tin nhắn cá nhân hoặc nhóm. - Gửi Video (
sendVideo): Hỗ trợ truyềnvideoUrl,thumbnailUrl, caption lời nhắn và thời lượng video (khớp chuẩn luồng của các workflow tự động hóa Zalo). - Gửi hình ảnh & tài liệu (
sendImage,sendFile): Tự động tải từ Direct URL hoặc đọc file trên máy chủ gửi qua Zalo.
2. Quản lý nhóm (Group)
- Lấy thông tin nhóm (
getGroupInfo): Trích xuất tên, creator, setting, tổng số thành viên... - Lấy danh sách thành viên (
getGroupMembers): Tự động bóc tách toàn bộmemberIdsvà profile chi tiết (Tên hiển thị, avatar, zaloName). Có tùy chọn Tách từng thành viên thành 1 dòng (Item) để chạy vòng lặp (Loop) trong n8n cực kỳ mượt mà. - Thêm / Xóa thành viên (
addUserToGroup,removeUserFromGroup): Quản lý thành viên nhóm tự động bằng User ID.
3. Quản lý bạn bè (Friend)
- Gửi lời mời kết bạn (
sendFriendRequest): Gửi kết bạn kèm lời nhắn tùy chỉnh theo User ID. - Đồng ý kết bạn (
acceptFriendRequest): Tự động duyệt kết bạn. - Tìm người dùng (
findUser): Tra cứu Zalo ID và thông tin profile từ Số điện thoại. - Lấy danh sách bạn bè (
getAllFriends): Xuất toàn bộ danh sách bạn bè hiện có.
4. Đăng nhập QR & Tự động đổi phiên (Auto Replace Credential)
loginQR: Tạo mã QR đăng nhập trực tiếp. Sau khi bạn dùng app Zalo điện thoại quét mã thành công, node sẽ tự động gọi n8n API để cập nhật đè session mới vào Credential trên n8n.- Giải quyết triệt để vấn đề Zalo tự động hết hạn phiên sau mỗi 30–45 ngày mà không cần mở DevTools copy/paste cookie thủ công.
5. Bộ lắng nghe thời gian thực (Trigger)
Zalo Personal Trigger: Bắt sự kiện tin nhắn đến (User hoặc Group), sự kiện nhóm, hoặc lời mời kết bạn mới theo thời gian thực (WebSocket).
🚀 Vì sao nên dùng bộ Node này thay cho codedao?
| Tiêu chí | codedao (n8n-nodes-ultimate) |
n8n-nodes-zalo-personal |
|---|---|---|
| Dung lượng | Nặng ~9 MB (nhồi Facebook, TikTok, yt-dlp...) | Siêu nhẹ ~52 KB, chỉ tập trung Zalo |
| Mã nguồn | Bị làm rối (Obfuscated), không thể sửa lỗi | TypeScript sạch 100%, dễ debug & tùy biến |
| Thông báo lỗi | Báo lỗi hàm mã hóa vô nghĩa (a(r-764)...) |
Báo lỗi rõ ràng bằng Tiếng Việt / chuẩn n8n |
| Quản lý Session | Dễ văng phiên, checkpoint do login liên tục | Session Manager thông minh, tự cache kết nối |
| Hỗ trợ Proxy | Giới hạn | Hỗ trợ HTTP/SOCKS5 Proxy chống checkpoint IP |
📦 Hướng dẫn cài đặt lên n8n Server
Cách 1: Cài đặt trực tiếp từ file nén .tgz (Khuyên dùng cho Docker / Self-hosted)
- Copy file
n8n-nodes-zalo-personal-1.0.0.tgzvào server hoặc container n8n của bạn. - Di chuyển vào thư mục cài đặt n8n (nơi có file
package.jsoncủa n8n hoặc thư mục.n8n):cd ~/.n8n npm install /path/to/n8n-nodes-zalo-personal-1.0.0.tgz - Khởi động lại n8n:
docker restart <n8n-container-id> # hoặc restart service n8n
Cách 2: Cài đặt thủ công qua thư mục Custom Nodes
Nếu bạn dùng Docker với mount volume:
- Tạo thư mục
custombên trong thư mục dữ liệu của n8n (ví dụ:/home/node/.n8n/custom). - Copy thư mục
n8n-nodes-zalo-personalvào trong đó:cd /home/node/.n8n/custom/ git clone <repo-cua-ban> n8n-nodes-zalo-personal cd n8n-nodes-zalo-personal npm install npm run build npm link cd ~/.n8n npm link n8n-nodes-zalo-personal
Cách 3: Đưa lên npm riêng (Private hoặc Public)
Nếu bạn publish gói này lên npm (ví dụ: npm publish --access public):
- Trong giao diện n8n: Vào Settings $\rightarrow$ Community Nodes $\rightarrow$ Install $\rightarrow$ Nhập tên gói của bạn.
🔑 Hướng dẫn lấy thông tin đăng nhập (Credentials)
- Đăng nhập tài khoản Zalo trên trình duyệt (web.zalo.me).
- Mở Công cụ nhà phát triển (F12) $\rightarrow$ tab Console hoặc dùng tiện ích lấy Cookie.
- Chạy script nhỏ hoặc copy mảng cookies &
imeitừlocalStorage:imei: Lấy trongApplication$\rightarrow$Local Storage$\rightarrow$https://chat.zalo.me$\rightarrow$ keyz_uuidhoặcimei.cookie: Lấy toàn bộ cookie của tên miềnzalo.me.
- Hoặc xuất Session JSON bằng
zca-jsCLI:{ "imei": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "cookie": [...], "userAgent": "Mozilla/5.0..." } - Trong n8n, tạo Credential Zalo Personal Account API và dán Session JSON vào.
⚖️ Lưu ý pháp lý & Bảo mật
- Đây là dự án sử dụng API không chính thức (Unofficial) mô phỏng Web Zalo qua
zca-js. - Hãy sử dụng tài khoản Zalo phụ để chạy tự động hóa và luôn đặt độ trễ (delay 10–15s) giữa các lần gửi tin nhắn/kết bạn để tránh bị Zalo giới hạn tính năng.