Tổng quan
ZaloPoll là node giúp bạn tương tác với tính năng Bình chọn (Poll) trong nhóm Zalo. Đây là công cụ hữu ích để thu thập ý kiến, tổ chức sự kiện hoặc vote nhanh trong các nhóm cộng đồng và công việc.
Use Cases chính
- 📊 Tạo khảo sát nhanh trong nhóm
- 📅 Chọn lịch họp team tự động
- 🍽️ Vote món ăn trưa
- 🔒 Tự động khóa bình chọn khi hết hạn
- 📈 Thống kê kết quả bình chọn
Operations
Node hỗ trợ 6 operations chính:
| Operation | Mô tả |
|---|---|
| Tạo Bình Chọn | Tạo poll mới với các lựa chọn |
| Lấy Chi Tiết | Lấy thông tin poll và kết quả vote |
| Khóa Bình Chọn | Dừng nhận vote mới |
| Mở Khóa | Cho phép vote lại |
| Ẩn Bình Chọn | Ẩn poll khỏi chat |
| Ghim Bình Chọn | Ghim poll lên đầu nhóm |
Resource: Tạo Bình Chọn
Tạo một cuộc bình chọn mới trong nhóm.
Parameters
| Parameter | Type | Bắt buộc | Mô tả |
|---|---|---|---|
| Group ID | String | ✅ | ID nhóm để tạo poll |
| Câu Hỏi | String | ✅ | Tiêu đề bình chọn |
| Các Lựa Chọn | String[] | ✅ | Danh sách options (Mỗi dòng 1 option) |
| Hết Hạn Sau | Number | ❌ | Thời gian hết hạn (phút) |
| Cho Phép Thêm | Boolean | ❌ | Thành viên được thêm option mới |
| Ẩn Người Vote | Boolean | ❌ | Ẩn danh người vote |
| Vote Nhiều | Boolean | ❌ | Cho phép chọn nhiều đáp án |
Example
Tạo bình chọn món ăn trưa:
{
"groupId": "123456789",
"question": "Trưa nay ăn gì? 🍜",
"options": [
"Cơm tấm",
"Phở bò",
"Bún đậu",
"Tự túc"
],
"allowAddOptions": true,
"allowMultiChoices": false
}
Resource: Lấy Chi Tiết
Lấy thông tin chi tiết và kết quả hiện tại của poll.
Parameters
| Parameter | Type | Mô tả |
|---|---|---|
| Poll ID | String | ID của cuộc bình chọn |
Output Data
{
"pollId": "987654321",
"question": "Trưa nay ăn gì? 🍜",
"options": [
{
"optionId": "opt_1",
"content": "Cơm tấm",
"votes": 5,
"voters": ["user_1", "user_2", ...]
},
{
"optionId": "opt_2",
"content": "Phở bò",
"votes": 2,
"voters": ["user_3", ...]
}
],
"totalVotes": 7,
"isClosed": false,
"createdTime": 1704067200000
}
Common Use Cases
1. Daily Lunch Poll (Vote Ăn Trưa)
Tự động tạo bình chọn mỗi sáng và chốt đơn lúc 11h.
Workflow:
- Trigger: Schedule (9:00 AM, Mon-Fri)
- ZaloPoll: Tạo bình chọn "Trưa nay ăn gì?"
- Wait: Đợi đến 11:00 AM
- ZaloPoll: Khóa bình chọn
- ZaloPoll: Lấy chi tiết kết quả
- ZaloSendMessage: Thông báo kết quả "Chốt đơn: Cơm tấm (5 phiếu)"
2. Meeting Scheduler (Chọn Lịch Họp)
Tìm khung giờ họp phù hợp cho cả team.
Workflow:
- Trigger: Webhook / Manual
- Date & Time: Generate 3 time slots tiếp theo
- ZaloPoll: Tạo poll "Chọn giờ họp Sprint Review"
- Option 1: 14:00 Hôm nay
- Option 2: 10:00 Sáng mai
- Option 3: 14:00 Chiều mai
- ZaloGroup: Ghim bình chọn để mọi người thấy
3. Event Registration (Đăng Ký Sự Kiện)
Đăng ký tham gia Year End Party.
Workflow:
- ZaloPoll: Tạo poll "Tham gia YEP 2024?"
- Option 1: Tham gia (+1)
- Option 2: Tham gia (+ người thân)
- Option 3: Không tham gia
- Trigger: Schedule (Hàng ngày)
- ZaloPoll: Lấy kết quả
- Google Sheets: Cập nhật danh sách người tham gia
Troubleshooting
❌ Lỗi: "Group ID not found"
Nguyên nhân:
- ID nhóm sai
- Bot chưa tham gia nhóm
Giải pháp:
- Kiểm tra lại Group ID (dùng node ZaloGroup - Lấy Nhiều Nhóm)
- Đảm bảo tài khoản bot đã ở trong nhóm
❌ Lỗi: "Poll ID invalid"
Nguyên nhân:
- Poll ID sai hoặc poll đã bị xóa
- Copy nhầm Message ID thay vì Poll ID
Giải pháp:
- Poll ID thường được trả về ngay sau khi tạo poll (trong output của operation Tạo Bình Chọn)
- Lưu Poll ID vào biến hoặc database để dùng lại
❌ Không thể khóa bình chọn
Nguyên nhân:
- Chỉ người tạo poll (bot) mới có quyền khóa
- Poll đã bị khóa trước đó
Giải pháp:
- Đảm bảo workflow dùng đúng credential đã tạo poll
- Check trạng thái
isClosedtrước khi khóa
Tips & Best Practices
Pro Tips
- Auto-lock: Luôn thiết lập thời gian hết hạn hoặc workflow tự động khóa poll để tránh vote rác sau khi sự kiện kết thúc.
- Pin Poll: Ghim poll quan trọng để tăng tỷ lệ tương tác.
- Dynamic Options: Sử dụng Function node để tạo danh sách options động (ví dụ: lấy thực đơn từ Google Sheets).
- Reminder: Kết hợp ZaloSendMessage để tag
@Allnhắc nhở nếu tỷ lệ vote thấp.
Bước tiếp theo
Trong bài tiếp theo, chúng ta sẽ tìm hiểu về ZaloTag Node - công cụ giúp phân loại và quản lý labels cho bạn bè và tin nhắn.
Bài viết hữu ích?
Chia sẻ để nhiều người biết đến!
>_ LLM-Friendly Copy
Copy as Markdown to use with ChatGPT, Claude, or other AI tools



