Voice - Perform a cold transfer

This page explains how to use Telesign Voice to perform a cold transfer. A cold transfer is one where the transferring agent does not talk to the new agent before performing the transfer.

For example, a customer might call in to a credit card company to ask an agent about their bill. After learning that their bill is past due, the customer might want to pay the bill immediately. The agent tells the customer that they will transfer them to the billing department. The customer is then connected to a new agent in the billing department immediately after the initial agent drops off the call.

πŸ“˜

NOTE

If you are interested in trying Telesign Voice, sign up by contacting our experts.

Before you begin

Make sure you have the following:

  • Telesign authentication credentials: Your Customer ID and API key.
  • Telesign phone number: A phone number you have purchased from Telesign to use as a caller ID. Purchase a number using the Telesign Phone Numbers API or ask our Customer Support Team to purchase a number for you. Make sure that the number is voice-capable (include the parameter and value voice_capable=true in your request to the Phone Numbers API). Refer to Phone Numbers API - Get Started for more details.
  • Webhook endpoint: A notification service you have set up for Telesign to send Event notifications to. See Voice - Receive Events with webhooks for instructions on how to set that up.

Be sure also to only use supported standards and codecs (see Voice - Supported standards and codecs).

πŸ“˜

NOTE

Telesign calls have a maximum call duration of four hours. You can also set a shorter maximum for an individual call.

How to implement a cold transfer

20002000

In this example, caller A calls into their credit card company. Telesign receives the call and notifies the credit card company that there is an incoming call by sending an Event to the company's customer event URL on their server. Their server responds by sending an Action to Telesign requesting that it dial agent B. Telesign calls agent B, and when agent B picks up, caller A and agent B are bridged together. Caller A and agent B talk about the caller's bill, and agent B says they will transfer caller A to make a payment. Caller A accepts, and agent B initiates a cold transfer by hanging up. The hang up triggers a call to agent C. Telesign calls agent C, and this bridges caller A and agent C.

Sections of a call are referred to as "legs". A call leg is a logical connection between two voice gateways or between a gateway and an IP telephony device. Caller A connecting to Telesign in the example is call leg A, Telesign connecting to agent B and bridging the call is call leg B, and Telesign connecting to agent C and bridging the call is call leg C.

To set up the call, do the following:

  1. Imagine caller A makes an incoming call. Telesign sends you an incoming call Event. Caller A calling and reaching Telesign can be thought of as call leg A. Here is an example of an incoming call Event from Telesign:

Incoming call Event

{
  "event": "incoming_call",
  "reference_id": "534e1848-235f-482d-983d-e3e11a04f58a",
  "data": {
        "to": "15555551212",
        "from": "15558675309",
      }
}
  1. To set up call leg B and connect the call, respond to the Event by sending the dial Action. Include the phone number of agent B in this Action as well as the Telesign-purchased caller ID you want to use to mask the number you are connecting to the customer.

Dial Action

{
  "method": "dial",
  "params": {
    "to": "15555551212",
    "caller_id_number": "15554441313"
  }
}
  1. This bridges the call. Caller A and agent B can now communicate. The agent says something like "If you want to make a payment, I can transfer you to the billing department." If the caller agrees, the agent hangs up. Telesign sends you a call_leg_completed Event. Telesign then sets up the C leg of the call.
{
  "event": "call_leg_completed",
  "reference_id": "01695AB90A3F570CE200338200000000",
  "data": {
    "from": "15558675309",
    "to": "15555551212",
    "caller_id": "15550000001",
    "status": "call_answered"
  }
}
  1. Send another dial Action to call the new agent (agent C). This will bridge the caller who is still on the line to the agent. This is the cold transfer. The bridging occurs, but there is no overlap between agent B and agent C being on the call. You can think of this as bridging the A leg of the call to the C leg.

Example Dial Action

{
  "method": "dial",
  "params": {
    "to": "15552311234",
    "caller_id_number": "15554441313"
  }
}
  1. Caller A and agent C talk, and then at some point the caller hangs up. Telesign sends you a call_completed Event. If the A leg does not hang up, you can either hang up the call yourself or provide other options to the caller.

Did this page help you?