# 🚀 n8n-nodes-zalo-test-trial

**Kết nối Zalo vào thế giới tự động hóa của bạn với n8n!**  
Tích hợp Zalo cá nhân, nhóm, bạn bè, tin nhắn, voice-to-text, đăng nhập QR... chỉ với vài cú click.  
Tối ưu cho chatbot, CRM, automation, chăm sóc khách hàng, cảnh báo nội bộ, và hơn thế nữa!

---

## 🌟 Tại sao nên chọn bộ node Zalo này?

- **Đầy đủ tính năng:** Gửi/nhận tin nhắn, quản lý nhóm, bạn bè, voice-to-text đa ngôn ngữ, đăng nhập QR, v.v.
- **Dễ dùng:** Kéo thả, cấu hình trực quan, không cần code phức tạp.
- **Tối ưu cho workflow hiện đại:** Kết hợp linh hoạt với các node khác của n8n.
- **Chuẩn hóa voice kéo dài:** Nhận diện tốt tiếng Việt dù nói “đi đâyyyyyy”.
- **Mở rộng dễ dàng:** Hỗ trợ nhiều tài khoản, nhiều ngôn ngữ, nhiều kịch bản.

---

## 🚦 Tính năng nổi bật

### 🔑 Đăng nhập Zalo bằng QR code
- Đăng nhập siêu nhanh, không cần copy cookie thủ công.
- Lưu Credential tự động, dùng lại cho mọi node Zalo khác.
- Hỗ trợ nhiều tài khoản, proxy, quản lý Credential thông minh.

### 👤 Quản lý người dùng Zalo
- Gửi/kết bạn, chặn/bỏ chặn, đổi avatar, cập nhật thông tin cá nhân.
- Lấy thông tin chi tiết user, trạng thái, avatar, v.v.

### 💬 Gửi & nhận tin nhắn Zalo
- Gửi tin nhắn text, ảnh, file, nhắc tên, trích dẫn, typing...
- Lắng nghe tin nhắn từ user hoặc group, tự động kích hoạt workflow.
- Hỗ trợ voice-to-text: nhận diện tiếng Việt, Anh, Trung (tự động hoặc thủ công).
- Chuẩn hóa text voice kéo dài, trả về cả text, ngôn ngữ và độ tin cậy.

### 👥 Quản lý nhóm Zalo
- Tạo nhóm, thêm/xóa thành viên, đổi tên/avatar nhóm, phân quyền quản trị.
- Lấy thông tin nhóm, danh sách thành viên, quản trị viên.

### 🤝 Lắng nghe sự kiện bạn bè
- Tự động phát hiện kết bạn mới, kích hoạt workflow khi có lời mời.

---

## ⚡️ Cài đặt siêu tốc

```bash
pnpm install
# hoặc
npm install
```

**Yêu cầu:**  
- Node.js >= 16  
- n8n >= 1.0.0  
- Đã cài ffmpeg (bắt buộc cho voice-to-text)  
- Tài khoản Zalo cá nhân

---

## 🛠️ Hướng dẫn sử dụng nhanh

1. **Đăng nhập Zalo:**  
   - Dùng node “Zalo Login Via QR Code” để đăng nhập, Credential sẽ tự lưu.

2. **Cấu hình Credential:**  
   - Có thể nhập cookie/imei/userAgent thủ công hoặc dùng Credential đã lưu.

3. **Cấu hình Wit.ai (voice-to-text):**  
   - Đăng ký Wit.ai, tạo app cho từng ngôn ngữ (vi, en, zh).
   - Lấy Server Access Token, nhập vào Credential WitAIApi.

4. **Kéo thả các node Zalo vào workflow:**  
   - Gửi/nhận tin nhắn, quản lý nhóm, bạn bè, voice-to-text...  
   - Kết nối với các node khác để xây dựng quy trình tự động hóa mạnh mẽ.

---

## 💡 Lưu ý kỹ thuật

- Voice-to-text chỉ hoạt động với voice message .aac (chuẩn Zalo).
- Cần cài ffmpeg trên máy chủ/server.
- Tự động nhận diện ngôn ngữ cần ít nhất 1 token Wit.ai hợp lệ.
- Nếu workflow chạy trên server, đảm bảo server có internet.

---

## 🤝 Đóng góp & Phản hồi

- Gặp lỗi? Có ý tưởng mới?  
  → Tạo issue hoặc pull request ngay trên GitHub!
- Đội ngũ phát triển luôn lắng nghe và chào đón mọi đóng góp.

---

## 📬 Liên hệ

- **Tác giả:** Nguyễn Thắng  
- **Email:** ntnguyenthangtn@gmail.com

---

> **Hãy để Zalo trở thành một phần của hệ sinh thái tự động hóa của bạn!**  
> _n8n-nodes-zalo-test-trial - Đơn giản hóa mọi kết nối, bứt phá mọi workflow!_ 

---

## 🧩 Hướng dẫn chi tiết từng node Zalo

---

### 1. 🔑 Zalo Login Via QR Code

**Chức năng:**  
Đăng nhập tài khoản Zalo cá nhân bằng mã QR, lưu Credential tự động cho các node khác.

**Cách dùng:**
- Thêm node “Zalo Login Via QR Code” vào workflow.
- Chạy node, quét mã QR hiện ra bằng app Zalo trên điện thoại.
- Sau khi đăng nhập thành công, Credential sẽ được lưu lại (không cần nhập cookie thủ công nữa).

**Tips:**  
- Có thể dùng cho nhiều tài khoản Zalo khác nhau, mỗi tài khoản một Credential riêng.
- Credential này sẽ dùng cho tất cả các node Zalo khác trong workflow.

---

### 2. 👤 Zalo User

**Chức năng:**  
Quản lý tài khoản cá nhân, bạn bè, thông tin user.

**Các thao tác nổi bật:**
- Gửi lời mời kết bạn, chấp nhận/kết bạn.
- Chặn, bỏ chặn người dùng.
- Đổi avatar, cập nhật thông tin cá nhân.
- Lấy thông tin chi tiết user (ID, tên, trạng thái, avatar...).

**Cách dùng:**
- Thêm node “Zalo User” vào workflow.
- Chọn Credential Zalo đã đăng nhập.
- Chọn thao tác muốn thực hiện (ví dụ: “Send Friend Request”, “Get User Info”, ...).
- Nhập các thông tin cần thiết (userId, avatar URL, ...).

**Ví dụ:**  
- Gửi lời mời kết bạn tự động cho danh sách số điện thoại.
- Lấy thông tin bạn bè để đồng bộ với hệ thống CRM.

---

### 3. 💬 Zalo Send Message

**Chức năng:**  
Gửi tin nhắn tới user hoặc group trên Zalo.

**Các tính năng:**
- Gửi text, ảnh, file, nhắc tên, trích dẫn tin nhắn cũ.
- Gửi nhiều ảnh cùng lúc qua URL.
- Gửi sự kiện “đang nhập” (typing) để tăng trải nghiệm người nhận.

**Cách dùng:**
- Thêm node “Zalo Send Message” vào workflow.
- Chọn Credential Zalo.
- Chọn loại đối tượng gửi (user hoặc group).
- Nhập ID người nhận hoặc group, nội dung tin nhắn, file/ảnh nếu có.

**Ví dụ:**  
- Gửi thông báo tự động cho nhóm khi có sự kiện mới.
- Gửi file báo cáo PDF cho từng user.

---

### 4. 💬 Zalo Message Trigger

**Chức năng:**  
Lắng nghe tin nhắn mới từ user hoặc group, tự động kích hoạt workflow.

**Các tính năng nổi bật:**
- Lắng nghe tin nhắn text, ảnh, file, voice.
- Hỗ trợ voice-to-text: tự động nhận diện ngôn ngữ (Việt, Anh, Trung) hoặc chọn thủ công.
- Chuẩn hóa text voice kéo dài, trả về cả text, ngôn ngữ và độ tin cậy.
- Tùy chọn lắng nghe cả tin nhắn do chính mình gửi (self listen).

**Cách dùng:**
- Thêm node “Zalo Message Trigger” vào workflow.
- Chọn Credential Zalo.
- Chọn loại tin nhắn muốn lắng nghe (user, group).
- Bật/tắt voice-to-text, chọn chế độ nhận diện ngôn ngữ.
- Kết nối node này với các node xử lý tiếp theo (ví dụ: gửi email, lưu database, gọi API...).

**Ví dụ:**  
- Khi có ai nhắn “báo cáo” vào group, tự động gửi file báo cáo mới nhất.
- Khi nhận voice message, tự động chuyển thành text và gửi sang hệ thống khác.

---

### 5. 👥 Zalo Group

**Chức năng:**  
Quản lý nhóm Zalo.

**Các thao tác:**
- Tạo nhóm mới, thêm/xóa thành viên, đổi tên/avatar nhóm.
- Lấy thông tin nhóm, danh sách thành viên, quản trị viên.
- Phân quyền quản trị, thêm phó nhóm.

**Cách dùng:**
- Thêm node “Zalo Group” vào workflow.
- Chọn Credential Zalo.
- Chọn thao tác muốn thực hiện (tạo nhóm, thêm thành viên, lấy info...).
- Nhập các thông tin cần thiết (tên nhóm, userId, ...).

**Ví dụ:**  
- Tạo nhóm mới cho dự án, tự động thêm thành viên từ danh sách.
- Lấy danh sách thành viên nhóm để gửi thông báo cá nhân hóa.

---

### 6. 🤝 Zalo Friend Trigger

**Chức năng:**  
Lắng nghe sự kiện kết bạn mới, tự động kích hoạt workflow khi có lời mời kết bạn đến.

**Cách dùng:**
- Thêm node “Zalo Friend Trigger” vào workflow.
- Chọn Credential Zalo.
- Kết nối với các node xử lý tiếp theo (gửi tin nhắn chào mừng, lưu thông tin bạn mới...).

**Ví dụ:**  
- Khi có bạn mới, tự động gửi tin nhắn chào mừng và hướng dẫn sử dụng dịch vụ.
- Lưu thông tin bạn mới vào Google Sheet hoặc CRM.

---

## 📌 Lưu ý chung khi sử dụng các node

- Luôn chọn đúng Credential Zalo cho từng node.
- Đảm bảo đã đăng nhập thành công bằng QR hoặc nhập đúng cookie/imei/userAgent.
- Đối với voice-to-text, cần cấu hình token Wit.ai hợp lệ cho từng ngôn ngữ.
- Có thể kết hợp các node Zalo với bất kỳ node nào khác của n8n để xây dựng workflow mạnh mẽ, sáng tạo! 