Servetel offers HTTP WebHook callback, which is an event-notification via HTTP- POST/ GET methods.
WebHook sends data to the URL ( specified by the user ) when one of the triggers happen.

WebHook can be created on the Servetel portal by configuring the HTTP Method, URL ( where data will be sent ) and selecting one of the below trigger options.

📘

1.Kindly contact Servetel support team to enable WebHook on Servetel portal for your account

2.The timeout error set to 10 sec for all the webhook

WebHook Triggers

Trigger NameDescriptionCall Type
Call received on ServerWhen a call is received on Serverinbound
Call answered on IVRWhen a call is answered on IVRinbound and outbound
Call answered by AgentWhen a call is answered by Agentinbound and outbound
Call MissedWhen a call hung up due to being missedinbound and outbound
Call HangupWhen a call is answered and then hung upinbound and outbound
Call Missed or AnsweredWhen a call is either hung up due to missed or after being answeredinbound and outbound
DTMF OptionWhen DTMF Option is pressed on IVRoutbound
Dialed on AgentWhen call is Dialed on Agentinbound
Received on DepartmentWhen Call is received on departmentinbound
Received on Auto AttendantWhen Call is received on auto attendantinbound
Call answered by CustomerWhen call is answered by customer in Click to Calloutbound

Below are the request variables for different trigger types.

Response Variables

- DTMF Option

Variable NameDescriptionData Type
$uuidUnique ID of the callString
$call_to_numberDialed numberString
$caller_id_numberCaller ID shown to customerString
$digit_pressedDTMF Option PressedString
$dateTime at which Option is pressedString

- Call hangup Missed/ Answered/ Both

Variable NameDescriptionData Type
$uuidUnique ID of the CallString
$call_to_numberDialed numberString
$caller_id_numberCaller ID shown to customerString
$start_stampStart time of the callString
$answer_stampAnswer time of the call on serverString
$end_stampEnd time of the callString
$hangup_causeHang-up reason of the callString
$billsecBilled secondsString
$digits_dialedArray containing DTMF inputArray of Strings
$directionCall direction [inbound/outbound]String
$durationCall durationString
$call_flowFlow of the callArray
$broadcast_lead_fieldsWill be present in case call type is broadcast and leads have custom fieldsObject
$answered_agentData of the agent who answered the call.Object
$missed_agentData of the agent who missed the call.Object
$recording_urlURL for recordingString
$start_dateStart Date of CallString
$start_timeStart time of the callString
$bridged_durationDuration of the call between an agent and a client (in seconds)String
$call_connectedDescribes if the call was answered by any agent or not.
1: Answered
0: Missed/Not Answered
Integer

🚧

Fields that are present only on certain conditions

$broadcast_lead_fields: present in case call type is broadcast.
$call_flow: present only if the call is answered by an agent.
$answered_agent: present only if the call is answered by an agent.
$missed_agent: present only if the call is missed by at least one agent

📘

For broadcast

To obtain details related to leads, the below variables can be used.

Variable NameDescriptionData Type
$broadcast_lead_fieldsComplete list of all details related to leadObject
$field_0Phone number of leadString
$field_1Name of leadString
$field_2Email ID of leadString
$field_3Address of leadString
$field_4Company name of leadString
$field_5Custom detail for lead set by userString
............
$field_15Custom detail for lead set by userString

broadcast_lead_fields array

Variable NameDescriptionData Type
Phone_NumberPhone Number of the LeadString
NameName of the LeadString
Email_IdEmail ID of the LeadString
AddressAddress of the LeadString
Company_NameCompany Name of the LeadString

Missed Agent Array/ Answered Agent Array

Variable NameDescriptionData Type
idUnique Extension ID of the AgentString
nameName of the AgentString
numberNumber of the AgentString

- Call Received on Server/ Answered on IVR/ Agent

Variable NameDescriptionData Type
$uuidUnique ID of the callString
$call_to_numberDestination NumberString
$caller_id_numberCaller ID shown to customerString
$start_stampStart Time of the callString
$answer_agent_numberNumber of the agent who answered the callString
$ivr_idUnique ID of the IVRInteger
$ivr_nameName of the IVRString
$start_timeStart Time of CallString
$start_dateStart Date of CallString
$departmentsDetails of departments which received the callArray of Objects
$ivrsDetails of IVRs which received the callArray of Objects
$channel_idChannel ID of the CallString

🚧

$answer_agent_number : present in case call is answered by Agent.
$ivr_id: present in case of answered on IVR.
$ivr_name: present in case of answered on IVR
$departments: present in case of answered by Agent
$ivrs: present in case of answered by Agent.
$channel_id present in case of received on Server

- Dialed on Agent

Variable NameDescriptionData Type
$uuidUnique ID of the callString
$call_to_numberDestination NumberString
$caller_id_numberMy Number on which client CalledString
$dateTime at which agent is calledString
$call_flowComplete call flow of how call reached the agentArray
$dept_nameNames of the department which received the callsArray of strings
$ivr_nameNames of the IVR's which received the callArray of strings

🚧

$dept_name : present in case the call was received on at least one Department.
$ivr_name: present in case the call was received on at least one IVR.

- Received on Department

Variable NameDescriptionData Type
$uuidUnique ID of the callString
$call_to_numberMy Number on which client calledString
$caller_id_numberClient's numberString
$dateDate time at which call was received on departmentString
$call_flowComplete call flow of how call reached the departmentArray
$dept_idUnique ID of the departmentString
$dept_nameName of the departmentString
$ivr_nameName of the IVR through which call has been receivedString

- Received on Auto Attendant

Variable NameDescriptionData Type
$uuidUnique ID of the callString
$call_to_numberMy Number on which client calledString
$caller_id_numberClient's numberString
$start_stampDate time on which call was receivedString
$auto_attendant_idUnique ID of auto attendantString
$auto_attendant_nameName of auto attendantString

- Call Answered by Customer

Variable NameDescriptionData Type
$uuidUnique ID of the callString
$call_to_numberDialed NumberString
$caller_id_numberCaller ID shown to customerString
$start_stampDate time on which call was receivedString
$directionCall directionString
$answer_agent_numberNumber of agent who answered the callString
$billing_circleBilling circle details (operator and circle)Object
$call_statusStatus of call (Answered by customer)String