Supported Channels
Weaver supports the following chat platforms (pkg/config/config.go:71):- Telegram - Popular messaging platform with bot API
- Discord - Gaming and community platform
- Slack - Enterprise team collaboration
- WhatsApp - Via bridge server
- LINE - Popular in Asia-Pacific region
- Feishu (Lark) - Enterprise platform by ByteDance
- DingTalk - Enterprise platform by Alibaba
- QQ - Chinese instant messaging
- OneBot - Universal bot protocol
- MaixCam - IoT device integration
Channel Configuration Structure
All channels follow a common configuration pattern (pkg/config/config.go:71):Telegram Setup
Create a Telegram Bot
- Open Telegram and search for
@BotFather - Send
/newbotcommand - Follow prompts to set bot name and username
- Copy the API token (format:
123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11)
Get Your User ID
To find your Telegram user ID:
- Start a chat with your bot
- Send any message
- Check Weaver logs for the user ID
- Add it to
allow_fromarray
Telegram Configuration Reference
From pkg/config/config.go:90:Discord Setup
Create Discord Application
- Go to Discord Developer Portal
- Click “New Application”
- Give your application a name
- Navigate to “Bot” section
- Click “Add Bot”
- Copy the bot token
Discord Configuration Reference
From pkg/config/config.go:106:Slack Setup
Create Slack App
- Go to Slack API
- Click “Create New App” → “From scratch”
- Name your app and select workspace
Configure Bot Permissions
Under “OAuth & Permissions”, add scopes:
app_mentions:readchat:writechannels:historygroups:historyim:historympim:history
Enable Socket Mode
- Go to “Socket Mode” in sidebar
- Enable Socket Mode
- Create an app-level token with
connections:writescope - Copy the token (starts with
xapp-)
Install App to Workspace
- Go to “OAuth & Permissions”
- Click “Install to Workspace”
- Copy the Bot User OAuth Token (starts with
xoxb-)
Slack Configuration Reference
From pkg/config/config.go:133:LINE Setup
Create LINE Channel
- Go to LINE Developers Console
- Create a new provider or use existing
- Create a Messaging API channel
- Note your Channel Secret and Channel Access Token
Set Webhook URL
In LINE Developers Console:
- Go to Messaging API settings
- Set Webhook URL to
https://your-domain.com:18791/webhook/line - Enable “Use webhook”
- Disable “Auto-reply messages”
LINE Configuration Reference
From pkg/config/config.go:140:Access Control
All channels support theallow_from field to restrict access to specific users:
Flexible String Format
From pkg/config/config.go:13,allow_from accepts both strings and numbers:
Unrestricted Access
To allow all users (not recommended for production):Multi-Channel Configuration Example
Run agents on multiple platforms simultaneously:Advanced Channel Configuration
WhatsApp (via Bridge)
From pkg/config/config.go:84:Feishu (Lark)
From pkg/config/config.go:97:DingTalk
From pkg/config/config.go:126:OneBot Protocol
From pkg/config/config.go:150:Running the Gateway
Start with All Configured Channels
- Load configuration from
~/.weaver/config.json - Connect to all enabled channels
- Start listening for messages
- Health check available at
http://localhost:18790/health
Troubleshooting
Channel Won't Connect
Channel Won't Connect
- Verify API tokens are correct
- Check
enabled: trueis set - Review Weaver logs for error messages
- Ensure network connectivity to platform APIs
Bot Doesn't Respond
Bot Doesn't Respond
- Check if your user ID is in
allow_fromlist - Verify bot has necessary permissions
- For Discord/Slack: Ensure bot is in the channel/server
- Check Weaver logs for incoming message events
Webhook Errors (LINE, Feishu)
Webhook Errors (LINE, Feishu)
- Ensure webhook port is open and accessible
- Use a reverse proxy (nginx) for HTTPS
- Verify webhook URL is set correctly in platform console
- Check firewall rules
Environment Variables Not Loaded
Environment Variables Not Loaded
- Use
.envfile in working directory - Export variables before running
weaver gateway - Check variable names match exact format (case-sensitive)
- Restart gateway after changing environment
Next Steps
- Configure OAuth Authentication for secure provider access
- Set up Docker Deployment for production multi-channel hosting
- Learn about Spawning Agents for advanced channel workflows