Inbox channels·Updated Jul 12, 2026 · 10 min read

Phone calls

Take inbound phone calls through a Twilio Voice number — ring your team in the browser or on the Chatlane mobile app, hold callers in a queue agents pick from, send to voicemail, or forward to another number — plus greetings, recording, transcripts, and AI summaries.

Connect a Twilio Voice phone number and incoming calls land in Chatlane just like any other channel. You decide what happens when someone calls — ring your team in the browser or on the Chatlane mobile app, hold callers in a queue your agents pick from, take a voicemail, or forward to another number — optionally after a welcome greeting. You can record, transcribe, and summarise calls so your team can scan what was said, and agents can also call out from any conversation — desktop or mobile.

This article is just about regular phone calls. If you want voice calls over WhatsApp as well, see WhatsApp calling — it builds on the same in-browser answering and queue described here.

Before you start (Twilio)

  • A Twilio account with a Voice-capable phone number (buy or port one in the Twilio Console).
  • Your Twilio credentials. The cleanest setup is to connect Twilio once for the whole team under Team Settings → Integrations → Twilio; every voice/SMS/WhatsApp channel then reuses that connection. Alternatively you can paste an Account SID and Auth Token on the individual channel.
  • For answering calls in the browser: agents need HTTPS and to allow microphone access.

You don't need to wire up any webhooks in Twilio by hand — when you set up the channel, Chatlane points the number's Voice webhook at the right place automatically.

Step 1 — Add a Phone Call channel

  1. Open Inbox Settings → Channels and add a channel from the Calls category — Phone Calls (provider Twilio Voice).
  2. Connect Twilio (choose your team connection, or enter the Account SID + Auth Token).
  3. Pick the voice-capable number(s) this channel should answer.
  4. Save. Chatlane configures the number's voice webhook and the outbound-calling app for you.

Once the channel exists, all its call settings live on the channel's own page: Inbox Settings → Channels → (your phone channel) → Voice Config.

Greeting — welcome every caller (optional)

At the top of the Voice Config tab you can switch on a Greeting that plays to every caller before the call is routed — whatever routing you choose below. It's off by default.

Two kinds of greeting:

  • Spoken message (text-to-speech) — type the message (e.g. "Welcome to Chatlane support") and optionally pick a voice.
  • Audio fileupload an MP3/WAV straight from the settings page, or paste a URL to a file you host. Uploading a new file replaces the previous one.

The greeting plays once, up front. It's separate from the voicemail message, which plays only when a caller is about to leave a recording.

Step 2 — Choose how incoming calls are handled

On the Voice Config tab, set Inbound call routing to one of four options.

1. Ring agents (answer in browser)

The call rings every available agent who accepts calls for this inbox, right inside Chatlane — no separate phone or softphone app. Agents on the Chatlane mobile app ring natively too: the call appears on their lock screen like a regular phone call, even when the app isn't open. The first agent to answer is connected; if nobody answers within the ring timeout, the caller is sent to voicemail.

Settings:

  • Ring timeout (seconds) — how long to ring before falling back to voicemail.
  • Voicemail message — played to the caller if no one answers.

This option needs agents to opt in — see Step 3.

2. Hold in queue (agents pick up)

Instead of ringing everyone at once, callers wait on hold and your agents choose which call to answer. The caller hears your greeting (if enabled), then hold music, while every opted-in agent who accepts calls for this inbox sees them appear in a live "Calls waiting in queue" panel in the top bar — with the caller's name or number and how long they've been waiting. Any of those agents clicks Answer and is connected to that exact caller in the browser.

Settings:

  • Maximum hold time (seconds) — a caller still waiting after this long is sent to voicemail (default 120).
  • Hold music (optional)upload your own audio or paste a URL; leave empty for standard hold music.
  • Voicemail message — played when the maximum hold time is reached.

Good to know:

  • If no agent is online when a call arrives, the caller goes straight to voicemail rather than holding for nobody.
  • Agents hear a soft chime and get a browser push when a new call joins the queue — and agents with the mobile app get a push notification on their phone too. In the app, waiting callers show in a floating "calls waiting" bar with live wait timers.
  • An agent already on a call can't answer a second one — the Answer button is disabled until they finish.
  • Each queued call also has a Send to voicemail button — use it when nobody can take the call, so the caller can leave a message instead of waiting out the clock.
  • If two agents click Answer at the same moment, the first wins and the other sees that the call is taken.

Like Ring agents, this option needs agents to opt in — see Step 3.

3. Voicemail

Every call goes straight to voicemail. The caller hears your voicemail message, then leaves a recording that lands in a conversation.

Settings:

  • Voicemail message — a text-to-speech prompt, or
  • Voicemail audio URL — a link to your own recorded prompt (overrides the text).

4. Forward to a number

The call is forwarded to an external number you specify (for example, your existing support line or a mobile).

Settings:

  • Forward to number — the destination number.
  • Ring timeout (seconds) — how long to ring it.
  • Fallback (optional) — what to do if the forwarded call isn't answered or fails:
    • Take voicemail, or
    • Forward to another number (a second number), with its own option to take voicemail if that number also fails.

Forwarding sends the call to a normal phone line (PSTN). Recording and AI summaries still work, but the conversation happens off-platform on the forwarded device.

Step 3 — (Ring agents & queue) set your team up

Browser answering — whether simul-ring or picking from the queue — only involves agents who have opted in, so a call never rings everyone by surprise.

Each agent turns on Receive calls in browser:

  • in Settings → Notifications, or
  • with the quick toggle in the top bar (next to their account), or
  • on the Chatlane mobile app, with the Accept calls toggle in Settings.

The toggle only appears once the team has a channel set to Ring agents or Hold in queue, so if someone can't see it, check Step 2.

With it on:

  • The agent stays reachable on any page in Chatlane while signed in.
  • Ring agents: when a call arrives they get an incoming-call popup to Accept or Decline.
  • Hold in queue: a "N waiting" badge appears in the top bar; opening it lists every waiting caller with a live wait timer and an Answer button. Answering connects immediately — no second accept step.
  • With browser push notifications enabled, a push alert reaches a backgrounded tab too.
  • The top bar shows an "N online" count of how many teammates can currently take calls.
  • If nobody answers and the call goes to voicemail, the team gets a missed-call notification (following each agent's notification settings).

Choose which inboxes ring you

Receive calls in browser makes you reachable at all; a second, per-inbox switch decides which inboxes actually ring you and show you their queued calls. In Settings → Notifications, the "A call comes in" event is on by default for every inbox — so out of the box a call rings everyone who can take it, exactly as before.

To narrow it — say your Sales and Support teams share one Chatlane but don't answer each other's calls — a Support agent opens the per-inbox override for the Sales inbox and turns A call comes in off. They'll stop ringing, stop hearing the chime, and stop seeing Sales calls in their queue, while still handling Support. You only ever opt out of inboxes you don't answer; nobody has to change anything to keep today's behaviour.

This is enforced on the server: if you've opted out of an inbox you can't pick up or dismiss its queued calls, even if one briefly appears before your panel refreshes.

Recording, transcripts & summaries

These apply to any routing type and are toggled on the Voice Config tab:

  • Record calls — keeps an audio recording, attached to the call's conversation.
  • Transcribe calls — turns the recording into text using OpenAI Whisper. (Requires recording.)
  • Summarise calls — generates a short AI summary so your team can scan the call without listening to the whole thing. (Requires transcription.)

Calling out (outbound)

From any conversation with a phone number, use the Call button to dial out from your browser using Twilio's Voice SDK. You get live call controls — mute / unmute, hang up, and a duration timer — and if the channel has several numbers you can choose which one to call from. No external app required. The same works on the Chatlane mobile app, where you can also start a call straight from the inbox.

Calls on the Chatlane mobile app

Everything above works on the Chatlane app for iPhone too — with a few things that only a phone can do.

Receiving calls

  • Turn on Accept calls in the app's Settings (the same opt-in as Receive calls in browser — turning it on anywhere makes you reachable). The toggle appears once your team has a channel set to Ring agents or Hold in queue.
  • With Ring agents, incoming calls ring your phone natively, on the lock screen — like any phone call, with answer, mute, keypad, and speaker — even if the Chatlane app is closed. No banner-tapping needed.
  • With Hold in queue, you get a push notification when a caller joins the queue. In the app, a floating "calls waiting" bar shows the queue; tap it to see every caller with a live wait timer, who else on the team is available, and one-tap Answer (or send a caller to voicemail). Answering connects you immediately.
  • Your per-inbox "A call comes in" preferences apply on mobile exactly as on the web — inboxes you've opted out of don't ring your phone or appear in your queue.

Making calls

  • From a conversation or contact: tap the Call button. A dialer sheet opens with the number pre-filled and validated, and a "Call from" picker listing the inbox's lines.
  • From the inbox: inboxes with a phone channel show a call icon in the header next to compose. Search your contacts by name, email, or number — or create a new contact on the spot — and call them.
  • On a call you get a full-screen call view with a duration timer, mute, a keypad for phone menus, and speaker.
  • WhatsApp calling: if the inbox has a WhatsApp sender with calling enabled, it appears as a line in the "Call from" picker. WhatsApp requires the customer's consent before you can call them — the sheet shows the permission status and lets you send a call request; once the customer accepts (it updates automatically), the Call on WhatsApp button lights up. See WhatsApp calling for the full rules.

Recording, transcripts, and AI summaries work the same wherever the call is answered — every call still lands in its conversation with the recording and summary attached.

Tips & troubleshooting

  • No browser rings on "Ring agents". Either no agent has Receive calls in browser turned on, the routing isn't set to Ring agents, or the agents online have turned A call comes in off for this inbox. Check the "N online" count in the top bar and each agent's per-inbox notification setting.
  • A call isn't ringing someone who should get it. Beyond Receive calls in browser, check that agent's A call comes in setting for that specific inbox in Settings → Notifications — if it's off (as a default or a per-inbox override) they won't ring, chime, or see its queued calls.
  • Callers go straight to voicemail on "Hold in queue". That's the intended behaviour when no agent who accepts calls for that inbox is online — check the "N online" count. At least one such agent needs Receive calls in browser on for callers to be queued.
  • A queued call says the caller already hung up. The caller disconnected while waiting; the entry clears itself. Queue entries also clear automatically when a call ends.
  • No chime for queued calls. Browsers only allow sound after you've interacted with the page at least once since it loaded — click anywhere and the next call will chime. A browser push still arrives either way.
  • The mobile app doesn't ring. Check the Accept calls toggle in the app's Settings, that notifications are allowed for Chatlane in iOS Settings, and — for a specific inbox — that A call comes in isn't turned off for it. The first call also asks for microphone access; if it was declined, re-enable it in iOS Settings → Chatlane.
  • Forwarded calls drop when unanswered. Turn on a fallback (voicemail or a second number) so the caller always has somewhere to land.
  • Uploaded greeting or hold music doesn't play. The audio URL must be publicly reachable by Twilio — if you host the file yourself, check it opens in a private browser window.
  • Calls aren't reaching Chatlane at all. The number's Twilio voice webhook should point at Chatlane — re-saving the channel re-applies it. Also confirm the number is Voice-capable in Twilio.
  • One channel per type per inbox. To answer more than one number, add more inboxes (or use the team Twilio connection across them).
Was this article helpful?
Your feedback helps us improve our docs.