Help
Guides and references for bot setup and user onboarding
Telegram User Onboarding
How new users connect via Telegram and get approved
User opens the bot on Telegram
A new user finds or is given the bot's Telegram handle and taps "Start". The bot detects this is an unrecognized account.
User taps Start on @your_bot
Bot asks for their name
Since the Telegram account isn't linked to any identity, the bot responds asking the user to identify themselves.
"Hey! I'm Alfred. I don't recognize this Telegram account yet. What's your name?"
User replies with their name
The user types their name. The bot uses smart extraction to parse it — so replies like "I'm Mike", "call me Sarah", or just "Mike" all work.
"im mike" → extracted as "Mike"
Bot creates an approval request
The bot saves a pending approval request and notifies the admin. The user gets a confirmation that they need to wait.
"Got it, Mike! I've sent an approval request to the admin. You'll get a message here once you're approved."
Admin reviews in the Control Panel
The admin opens the Approvals page in the dashboard. They see the pending request with the claimed name, Telegram contact, and can either link to an existing seat or create a new one.
Approvals page → Approve → Link to existing identity or create new
Telegram account gets linked
On approval, the user's Telegram ID is automatically bound to the selected identity. Their role and permissions take effect immediately.
Telegram ID added to the identity's channel bindings
User is notified and can chat
The bot sends the user a message confirming they're approved. From now on, all messages from this Telegram account are routed through the normal pipeline with proper identity and permissions.
"You've been approved! Welcome aboard. How can I help?"
WhatsApp User Onboarding
How new users connect via WhatsApp (Twilio Sandbox)
User joins the WhatsApp sandbox
The user sends the sandbox join code (e.g. "join gentle-government") to the Twilio WhatsApp sandbox number from their phone. This registers them as a sandbox participant.
Send "join gentle-government" to +1 415 523 8886
User sends any message
Once joined, the user sends a message to the sandbox number. The bot detects the WhatsApp number isn't linked to any identity.
User sends "hello" to the sandbox number
Bot asks for their name
Same as Telegram -- the bot responds asking the user to identify themselves. Smart name extraction handles natural replies.
"Hey! I'm Alfred. I don't recognize this WhatsApp number yet. What's your name?"
Approval flow (same as Telegram)
The user replies with their name, the bot creates an approval request, notifies the admin, and the admin approves via the dashboard. The phone number is linked to the identity.
Approvals page shows WhatsApp request with phone number
User is approved and can chat
Once approved, the WhatsApp number is bound to the identity. All subsequent messages flow through the normal pipeline with proper permissions.
"You've been approved! Welcome aboard. How can I help?"
Note: The Twilio sandbox sessions expire every 3 days. Users must re-send the join code to continue receiving messages. This is a testing limitation -- production WhatsApp requires Meta Business verification.
Managing Seats
Go to Seats to add, edit, or disable users. Each seat can have multiple channel bindings (Telegram, Phone, Email, Slack, Discord) and a role that controls permissions.
Permission Levels
- Admin — full access, can approve users
- Builder — configure integrations & pipelines
- Operator — use tools, send messages
- User — standard conversation
- Viewer — read-only access
Supported Channels
- Telegram — fully integrated
- iMessage — via BlueBubbles
- WhatsApp — via Twilio (sandbox)
- SMS — via Twilio
- Email — configurable
- Slack / Discord — planned