6. Thêm Channels - WhatsApp, Discord, Slack
Mục tiêu: Thêm các kênh khác ngoài Telegram.
WhatsApp
Tại sao dùng WhatsApp?
- Phổ biến nhất tại VN
- Dùng số điện thoại cá nhân
- Không cần tạo bot
Bước 1: Đăng nhập
bash
openclaw channels login whatsappHiển thị QR code → Quét bằng WhatsApp trên điện thoại:
- Mở WhatsApp
- Settings → Linked Devices
- Link a Device → Scan QR
Bước 2: Cấu hình bảo mật (QUAN TRỌNG)
bash
# Bật pairing
openclaw config set channels.whatsapp.dmPolicy "pairing"
# Giới hạn ai có thể nhắn tin
openclaw config set channels.whatsapp.allowFrom '["+84123456789", "+84987654321"]'Bước 3: Test
bash
# Gửi tin nhắn test
openclaw message send --to whatsapp --to-id "+84123456789" --message "Hello from OpenClaw!"Cấu hình nâng cao
json5
{
channels: {
whatsapp: {
dmPolicy: "pairing",
allowFrom: ["+84123456789"],
groups: {
"*": { requireMention: true }, // Tất cả nhóm cần @mention
"Family Group": { requireMention: false }, // Nhóm này luôn phản hồi
},
},
},
}Discord
Bước 1: Tạo Bot
- Truy cập: https://discord.com/developers/applications
- New Application → đặt tên
- Tab Bot → Add Bot
- Copy Bot Token
- Bật Privileged Intents:
- SERVER MEMBERS INTENT
- MESSAGE CONTENT INTENT
Bước 2: Cấu hình OpenClaw
bash
openclaw config set channels.discord.token "YOUR_BOT_TOKEN"Bước 3: Mời bot vào server
- Tab OAuth2 → URL Generator
- Scopes:
bot,applications.commands - Bot Permissions:
- Send Messages
- Read Message History
- Mention Everyone
- Copy URL → Mở browser → Chọn server
Bước 4: Cấu hình nâng cao
json5
{
channels: {
discord: {
token: "${DISCORD_BOT_TOKEN}",
dmPolicy: "pairing",
intents: [
"GUILDS",
"GUILD_MESSAGES",
"DIRECT_MESSAGES",
"MESSAGE_CONTENT",
],
guilds: {
"guild-id": {
dmPolicy: "pairing",
requireMention: true,
},
},
},
},
}Slash Commands
bash
# Đăng ký commands
openclaw discord register-commandsCommands có sẵn:
/ask- Hỏi AI/status- Kiểm tra trạng thái/help- Trợ giúp
Slack
Bước 1: Tạo App
- https://api.slack.com/apps → Create New App
- From scratch → đặt tên → chọn workspace
Bước 2: Cấu hình OAuth
OAuth & Permissions → Add Bot Token Scopes:
app_mentions:readchat:writechannels:historyim:historygroups:history
Install to Workspace → Allow
Copy Bot User OAuth Token (bắt đầu bằng
xoxb-)
Bước 3: Cấu hình OpenClaw
bash
openclaw config set channels.slack.botToken "xoxb-..."Bước 4: Cấu hình Events (tùy chọn)
Nếu muốn bot phản hồi real-time:
- Event Subscriptions → Enable
- Add URL:
https://your-domain.com/webhook/slack - Subscribe to events:
app_mentionmessage.channels
Signal
Yêu cầu
Cần cài signal-cli trước:
bash
# macOS
brew install signal-cli
# Ubuntu
sudo apt install signal-cliCấu hình
json5
{
channels: {
signal: {
phoneNumber: "+1234567890",
signalCli: {
path: "/usr/bin/signal-cli",
configPath: "~/.local/share/signal-cli",
},
allowFrom: ["+1234567890", "+9876543210"],
},
},
}Đăng ký số
bash
signal-cli -u +1234567890 register
# Nhập mã xác minh từ SMS
signal-cli -u +1234567890 verify 123456iMessage (macOS only)
Yêu cầu
- Mac với Apple ID
- BlueBubbles server (nếu dùng remote)
Cấu hình
json5
{
channels: {
imessage: {
mode: "local", // hoặc "bluebubbles"
// Nếu dùng BlueBubbles:
serverUrl: "https://your-mac.local:8181",
password: "your-password",
},
},
}Quản lý nhiều channels
Liệt kê tất cả
bash
openclaw channels listOutput:
Channels:
├─ telegram: active ✅
├─ whatsapp: active ✅
├─ discord: active ✅
└─ slack: disconnected ❌Kiểm tra trạng thái
bash
openclaw channels statusKhởi động lại kênh
bash
openclaw channels restart telegramNgắt kết nối
bash
openclaw channels unlink whatsappCấu hình Multi-Channel
json5
{
channels: {
telegram: {
botToken: "${TELEGRAM_BOT_TOKEN}",
dmPolicy: "pairing",
},
whatsapp: {
dmPolicy: "pairing",
allowFrom: ["+84123456789"],
},
discord: {
token: "${DISCORD_BOT_TOKEN}",
dmPolicy: "pairing",
},
slack: {
botToken: "${SLACK_BOT_TOKEN}",
dmPolicy: "pairing",
},
},
}So sánh các kênh
| Kênh | Độ khó | Phù hợp cho | Lưu ý |
|---|---|---|---|
| Telegram | ⭐ Dễ | Mới bắt đầu | Chỉ cần bot token |
| ⭐⭐ Trung bình | Cá nhân | Cần quét QR | |
| Discord | ⭐⭐ Trung bình | Cộng đồng | Cần thiết lập intents |
| Slack | ⭐⭐ Trung bình | Team/Work | Cần OAuth scopes |
| Signal | ⭐⭐⭐ Khó | Bảo mật cao | Cần signal-cli |
| iMessage | ⭐⭐⭐ Khó | Hệ sinh thái Apple | Chỉ macOS |
Best Practices
1. Bắt đầu với 1-2 kênh
- Telegram (dễ nhất)
- WhatsApp (phổ biến VN)
2. Luôn bật pairing cho tất cả kênh
bash
openclaw config set channels.telegram.dmPolicy "pairing"
openclaw config set channels.whatsapp.dmPolicy "pairing"
openclaw config set channels.discord.dmPolicy "pairing"3. Backup cấu hình trước khi thêm kênh mới
bash
openclaw config export > backup-before-new-channel.jsonTiếp theo?
- Bài 7: Troubleshooting - Xử lý sự cố