Channels overview
A channel is the source of an event to be processed by a pipeline. Each channel is an independent module: adding an email channel has no impact on the telephony channel.
A channel triggers a pipeline. To read data or act on an external tool inside a pipeline (Stripe, GitHub, Google, LinkedIn, telephony), see Integrations.
Catalogue
Real-time voice
- Telephony — LiveKit + SIP, ASR/TTS streaming, barge-in, multi-language. For regulated call centers.
Asynchronous writing
- Email — IMAP, attachment parsing, preserved threads.
- WhatsApp — Cloud API, media.
- Telegram — Bot API, groups and private conversations.
- Mattermost — Outgoing webhook, threads.
Web
- Chat widget — embeddable JS script for any website.
- HTTP webhook — generic signed POST reception.
External systems
- Meta Lead Ads — instant reception of Facebook / Instagram leads.
- Schedule (cron) — recurring triggers.
Choosing the right channel
| You want to… | Recommended channel |
|---|---|
| Automate an inbound or outbound phone call | Telephony |
| Triage support emails automatically | |
| Run a chat on your marketing site | Chat widget |
| Receive Meta leads directly | Meta Lead Ads |
| Connect an in-house tool that speaks HTTP | Webhook |
| Launch a daily pipeline at 8am | Schedule |
| Reply to WhatsApp messages on a business number |
Common anatomy
All channels follow the same internal contract:
- Receive an event (HTTP, WebSocket, scheduler, SIP…).
- Authenticate the event (signature, token, org identifier).
- Normalize the payload into the internal format (
ExchangeInput). - Trigger the target pipeline configured in your organization.
Practical consequence: the pipeline you design does not depend on the input channel. You can switch from email to WhatsApp without changing anything downstream.
Limitations
Some channels have external prerequisites (SIP number, Meta app, verified WhatsApp domain). See each channel's dedicated page for the complete list.