We are introducing a new component for the Dial plan: Webhook. This allows you to receive the call data of an incoming call to a Dialplan. In the Webhook component, you can add the URL of your server and as soon as the incoming call reaches the Webhook in the Dialplan, you immediately receive the call data. Once the Webhook receives a response from the server, further routing of the Dialplan is performed.
The combination of the new WEBHOOK and CONDITION component gives a completely new dimension to the customer's telephony solution. Many integrations are possible, for example:
Check in the CRM system whether the customer has outstanding invoices; if so, route the call to Finance;
Check in the CRM system whether the customer has a pending ticket; if so, route the call to the person assigned the ticket;
If the caller is calling for the second time, route the call to the same colleague who answered the first incoming call.
Note: The request data is sent only with the POST request. The request data coming to the URL are the following:
Company ID
Dial plan ID
Dial plan internal number
Dial plan external number
Callee number
Caller number (number or SIP account)
Call uuid (ID of a call in Kwebbl platform)
Phonebook caller name
RTA Call ID (RTA style call ID, will be obsolete after CDRs 2.0)
SIP Call ID (SIP signalling call ID)
Timestamp of the event
Timestamp of the call start (the timestamp the call came into the Dial plan)
{ "com_id": "42f30becd4ea93edd284e059427b5ee0", "dp_id": "42f30becd4ea93edd284e059427cf1f7", "dp_in_number": "1003", "dp_ex_number": "31102380095", "callee_number": "31102380095", "caller_number": "31152026057", "uuid": "b587f4ee-718d-11ed-88ee-b97829e8fee4", "phonebook_caller_name": "", "event_time": "1669908899250", "call_start_time": "1669908896814", "rta_call_id": "8a5d5db451e9-6bd98ab0066f" "sip_call_id": "lsjuf8l09juq1i0a9vai" }
The variable set in the WEBHOOK component is added to the CONDITION component. Based on the response text-body received from the server set in this Webhook, it is now possible to set different call routes.
The WEBHOOK variable set in the Dial Plan or Choice menu (IVR) becomes available in the CONDITION component and is executed only if set after the Webhook component. In other words, all variables, which are set in the Webhook components before the CONDITION, appear in that CONDITION component. If the variable is not set, it does not appear in the CONDITION component. The variable must be unique within one DIAL PLAN or IVR/SUBMENU.