Forward call to personal service technician

Author Ellinor Niklasson

Last updated: June 24th, 2024 by Oscar Hjelmstedt

Customer scenario

A car dealer has dedicated a personal service technician to each customer. But when the customer calls for support, too much time is spent waiting for the call and manually being forwarded to the right person.

Opportunity

Connect the caller with their technician without agent involvement. Reduce wait time and increase customer satisfaction.

Solution

  1. Find out who the personal service technician is without any involvement from the caller or the support agents.

  2. Re-route the call to the correct person.

Click on the tabs below to get a step-by-step guide on how to Forward a call to a personal service technician:

Get started

Prerequisites

  • Advanced Nodes activated.
  • An API point to reach your customer database, e.g. www.yourcompany.com/customers/support{phoneNumber}.
  • Access token to the API (if needed by your system).

Create a new IVR or use an existing one

  • If this is your first IVR, please refer to the support page for info on how to set up an IVR with standard nodes: How to set up your PBX services.
  • The image to the right is an example of a complete IVR setup that caters to this use case. Use this as a reference to create your own IVR flow in the admin portal.
  • The following steps will go through the setup of the Advanced nodes marked with green in the IVR flow.

Delete

Request personal service technician’s number with HTTP

Add HTTP Request node

Choose an empty box in your IVR and click Advanced > HTTP-request to add the node.

Make a request to your customer database containing the incoming phone number. Your system should respond with the phone number of the corresponding technician.

URL

Enter the URL address to the HTTP request. To include the caller’s phone number, write {system.caller}. The number will be sent in E.164 format (e.g. +46706170786).

Keep in mind that the request is sent from the Telavox network, which means that the system needs to allow requests made from the network 80.83.208.0/20. 


What is an HTTP request?
HTTP works as a request-response protocol between a client and a system. The system's API specifies what information you can receive from it and how to reach it.


This example requires an API point that can accept a request containing a phone number and send back a response with the phone number where this call should be sent. The system to which the request is sent could be your own or the API of a supplier that you use.

Variable name

Choose what you would like to call the response from the HTTP request. The more accurate the description, the easier it will be to understand in the next node when we will use it.

The variable that is saved here can be accessed later in other Advanced nodes or in a Call Widget. A Call Widget can display information about a call to the agent answering it.


What will my response be?
The response can differ depending on the design of your API. In this example, the response is the phone number of the customer’s technician.

JSON-Path

Choose this based on what format the response from the API will be in.


If the response from your system is already exactly what you want to save in the variable, such as the phone number in this case, then no need to write a JSON-Path. 


But if the response is an object of information, where you need to extract the specific part needed for the variable, then enter the path to that part here.


Example of a JSON object:
{

    “customer”: {

        “name”: “John Doe”,

        “phoneNumber”: “+46706170786”,

        “personalServiceTechnician”: “+46706937466”,

      }

}


To save the technician’s number in the variable, enter customer.personalServiceTechnician as JSON-Path.


HTTP Method

Specify which method the API endpoint uses, either GET or POST.

In this example, we use GET since that is the standard method for a request that shows information from the system database (like a phone number).


When do I use POST?

In most cases, POST is used when the API request is not for displaying information but for updating the system database. For example, an API request to add the calling number to a list in the database.

HTTP Headers

Here, you have the option to input headers into the request if your system requires them. This could be for authentication purposes, for example. Another way to authenticate without using headers is to make sure your service's firewall allows requests made from 80.83.208.0/20.


Once you have entered a Name and a Value, click the button to add this header to the request. You can add several headers.


Are there any limitations on what I can send in a header?
It’s not possible to send nested objects/JSON, only one plain text Name and Value per header.

We do not support OAuth, an authentication method used in Microsoft Dynamics, for example. It requires a token to be sent back and forth, which is not possible in Advanced Nodes.

Delete

Forward the call to the personal service technician

Add Call Variable node

Choose an empty box in your IVR and click Advanced > Call Variable to add the node.

This node will route the call to a new phone number, which is contained in a variable.

Variable name

Enter the variable's name where the correct phone number has been saved.

Delete