feat(channels): implement WhatsApp Web channel with wa-rs integration
- Add wa-rs dependencies with custom rusqlite storage backend - Implement functional WhatsApp Web channel using wa-rs Bot - Integrate TokioWebSocketTransportFactory and UreqHttpClient - Add message handling via Bot event loop with proper shutdown - Create WhatsApp storage trait implementations for wa-rs - Add WhatsApp config schema and onboarding support - Implement Meta webhook verification for WhatsApp Cloud API - Add webhook signature verification for security - Generate unique message keys for WhatsApp conversations - Remove unused Node.js whatsapp-web-bridge stub Supersedes: baileys-based bridge approach in favor of native Rust wa-rs
This commit is contained in:
parent
9381e4451a
commit
c2a1eb1088
10 changed files with 2502 additions and 516 deletions
|
|
@ -3148,10 +3148,13 @@ fn setup_channels() -> Result<ChannelsConfig> {
|
|||
};
|
||||
|
||||
config.whatsapp = Some(WhatsAppConfig {
|
||||
access_token: access_token.trim().to_string(),
|
||||
phone_number_id: phone_number_id.trim().to_string(),
|
||||
verify_token: verify_token.trim().to_string(),
|
||||
access_token: Some(access_token.trim().to_string()),
|
||||
phone_number_id: Some(phone_number_id.trim().to_string()),
|
||||
verify_token: Some(verify_token.trim().to_string()),
|
||||
app_secret: None, // Can be set via ZEROCLAW_WHATSAPP_APP_SECRET env var
|
||||
session_path: None,
|
||||
pair_phone: None,
|
||||
pair_code: None,
|
||||
allowed_numbers,
|
||||
});
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue