Skip to main content

Call Transfers

Transfers let your AI agent hand a live call over to a real person — a department, a colleague's extension, or a mobile phone. This guide explains the two transfer mechanisms BESS supports, how to configure them on an agent, and what your telephony provider or PBX must allow for each to work.

Transfers are configured per agent: open the agent's configuration, expand the Functions accordion, and enable Transfer to Human. You can add several transfer destinations to one agent (for example Sales, Support, Accounting) — the agent chooses the right one from your descriptions during the conversation.

The two transfer modes

The single most important choice is how the call is handed over. There are two mechanisms, and which one you can use depends on your operator or PBX.

SIP REFER (native transfer)

BESS asks your operator to redirect the call, using the standard SIP REFER method. After the handoff the call runs entirely on your operator's side — BESS is out of the picture, and the AI portion of the call ends at the moment of transfer.

Caller ──► Operator ──► BESS agent Caller ──► Operator ──► Human
│ ▲
└── REFER "send caller to +90…" ───────────┘
  • Cleanest handoff: audio no longer flows through BESS after the transfer.
  • Requires your operator or PBX to trust and execute REFER requests from BESS. Many wholesale carriers do not — they drop the call instead (see Troubleshooting).
  • The transfer target is a SIP URI or phone number: sip:200@your-pbx.example.com, sip:+905331234567@operator-host, or tel:+905331234567.

Bridged transfer (outbound dial)

BESS places a second outbound call to the human through one of your outbound SIP connections and bridges the two calls together. Both call legs stay connected through BESS for the rest of the conversation.

Caller ──► Operator ──► BESS ◄── outbound call ◄── Human's phone / extension
(bridges both legs)
  • Works with any operator — no REFER support needed. This is the right choice for most Turkish carriers and for PBX extensions.
  • Needs an outbound SIP connection (a synced trunk on the Phone Numbers page) to dial through, plus the number or extension to dial.
  • The caller's real number is presented to the human's phone, so your staff see who they are talking to.
  • The bridged call keeps running through BESS until either side hangs up — or until the agent's maximum call duration is reached, which caps bridged calls too.

:::tip Which mode should I pick? Start with bridged transfer (outbound dial) unless you know your provider honors REFER. REFER failures are not graceful — the typical symptom is the call dropping the instant the transfer starts. If you want REFER, test it once and watch what happens; if the call dies immediately, your carrier does not allow it and you should switch the destination to bridged mode. :::

Direct vs. warm transfer

Independent of the mode, a transfer can be direct or warm:

  • Direct (cold) — the agent tells the caller it is transferring, and connects them straight through. Available in both modes.
  • Warm (attended) — before connecting the caller, BESS first calls the human privately, briefs them with an AI-generated summary of the conversation so far, and only bridges the caller in when the human accepts. The caller hears hold music while this happens. Warm transfers are only available in bridged (outbound dial) mode.

During a warm transfer the human can also decline (the agent returns to the caller and continues) — or the screening step detects it reached voicemail and backs out.

note

In a warm transfer, the destination phone rings twice: once for the private briefing, and once more when the caller is bridged in. This is expected — the briefing tells the human it will happen.

Configuring a transfer destination

Each destination in the Transfer to Human tool has these settings:

SettingWhat it does
LabelHuman-friendly name of the destination ("Sales", "Ahmet Bey").
Function name / descriptionWhat the AI sees. The description is how the agent decides when to use this destination — write it like an instruction: "Transfer here when the caller wants to place a bulk order."
Transfer modeSIP REFER or Outbound dial (bridged) — see above.
Transfer targetREFER mode: a SIP URI or tel: number. Outbound dial mode: pick one of your synced outbound SIP connections and enter the number or extension to dial (extensions like 1011 are dialed as-is).
Transfer styleDirect or Warm (warm requires outbound dial mode).
Transfer messageWhat the agent says to the caller right before transferring ("One moment, I'm connecting you to our sales team.").
Screening instructionsWarm only — extra guidance for the briefing call to the human.
Play dial tonePlays ringing to the caller during the transfer instead of silence.
Skip voicemail detectionSee below. Turn this on when the destination is a queue, IVR, or ring group.

Voicemail detection

When dialing a human, BESS applies two safeguards so your caller is never handed to a voicemail box:

  1. Redirect detection — if the operator's signaling shows the call was diverted (forwarded to voicemail after no answer), the transfer is aborted.
  2. Fast-answer detection — if the destination "answers" faster than a human could physically pick up (under ~1 second), it is treated as voicemail.

If the transfer is aborted for either reason, the agent returns to the caller and offers to take a message instead.

When to turn on "Skip voicemail detection": call queues, IVRs, auto-attendants and ring groups legitimately answer instantly — fast-answer detection would wrongly classify them as voicemail and the transfer would always fail. If your destination is one of these (for example a 3CX queue), enable the skip. For direct human phones, leave detection on.

What your provider or PBX must allow

Give this section to the technical contact at your operator or PBX administrator. BESS's SIP gateway address is 34.14.67.246 (signaling on port 5060 UDP/TCP, media on UDP 10000–20000).

For SIP REFER transfers:

  1. Trust REFER from BESS. On 3CX: enable "Allow REFER" on the trunk. On Asterisk: allowtransfer=yes (chan_sip) or allow_transfer=yes (PJSIP). On FreeSWITCH: include the BESS address in the profile's inbound ACL.
  2. Map the transfer target in the dial plan. The REFER contains the destination (an extension like 200, or a full number). The PBX/operator must have a rule that routes it.
  3. Allow outbound calls for external targets. If the agent transfers to a mobile number, the operator must permit that call to be originated (caller-ID policy included).

Typical REFER failure codes: 405 Method Not Allowed (REFER trust is off), 403 Forbidden (outbound denied or caller-ID rejected), 404 Not Found (no dial-plan rule for the target).

For bridged (outbound dial) transfers:

  1. Accept calls from BESS on the trunk or extension used as the outbound connection — IP whitelist 34.14.67.246 and/or the extension's credentials.
  2. That's it — no REFER support needed. The transfer is an ordinary incoming call from BESS's registered trunk or extension.

For PBX destinations, one sharp edge: if a target extension is registered on multiple devices (desk phone + mobile app), some PBXs fork the call to all of them, and the duplicate answers can collide (SIP error 482 Merged Request). If transfers to a specific extension fail with 482, ask the PBX admin to limit that extension to a single registration or route via a queue.

Troubleshooting

  • The call drops the moment the transfer starts (REFER mode). Your operator does not honor REFER — many wholesale carriers terminate the call instead. Switch the destination to Outbound dial mode; it works everywhere.
  • The transfer always "fails" even though the destination is reachable. If the destination is a queue, IVR or ring group, it answers instantly and voicemail detection kicks in. Enable Skip voicemail detection for that destination.
  • The transfer connects to the employee's voicemail. Keep voicemail detection on for direct phones; if it still slips through, the operator may not be signaling the diversion — contact support.
  • Transfers to one specific extension fail with error 482. Multiple registrations on that extension — see the PBX note above.
  • The human's phone shows the trunk number instead of the caller. Caller-ID passthrough depends on the operator accepting a foreign caller ID on the transfer leg. Some operators overwrite it with the trunk's own number — ask your operator whether they allow original caller-ID presentation ("CLI passthrough").
  • Busy / declined / unreachable destinations return the agent to the caller with an apology; the agent can offer alternatives if your prompt tells it to (e.g. "If the transfer fails, offer to take a message.").