For any call that gets routed via Exotel, the status is tabulated based on the direction of the call initiation viz. Incoming and Outgoing, which in turn results in inferring the Leg1 status (status of the 1st party on the call i.e. From Number) and Leg2 status (status of the 2nd party on the call i.e. To Number).

Dashboard: Inbox & Reports

  • Completed - the caller & the callee were successfully connected over a call

  • Call attempt - the caller hung up before the call could be routed to any of the agents

  • Missed call:

    • No answer - the call was not answered by any of the agents after it rang for the specified duration

    • Busy - none of the agents were available to answer the call

    • Failed - calls could not either reach or connect to the agents

  • Voicemail - based on the call flow, if a voicemail applet is configured, then any calls that end up here would have a final status indicating that it is a ‘voicemail’

Dashboard: Call Stats (Beta)

This feature is available only on demand and might be chargeable. Please contact your account manager or write to hello@exotel.com.

What does the status bucket mean on the page?

  • completed - The destination number answered the call.

  • no-answer - Exotel dialed the number but no one answered before the timeout elapsed.

  • canceled - The caller disconnected the call during a dial attempt or ringing the destination number.

  • busy - Exotel dialed the number but received a busy response from the destination number.


Inbound calls

Leg1Status will always be 'completed' if the call is picked up by Exotel i.e., if the caller is connecting to a call flow that has a menu prompt such as Greeting, IVR, Gather, and Voicemail as the first applet.





Leg1Status

Leg2Status 

(DialCallStatus)

Status

Description

completed

completed

completed

This indicates that a connection was established and audio was exchanged between the caller and the callee.

completed

no-answer

completed

Exotel dialed the number but we did not get an answered event back before the timeout value elapsed.

completed

busy

completed

Exotel dialed the number but received a busy response

completed

failed

completed

Exotel's carriers could not connect the call. Possible reasons include the number is switched off or not reachable, the number being invalid, transient connection error, etc.

completed

canceled

completed

Exotel dialed the number (Leg2) but Leg1 disconnected the call before we received the completed / busy / failed / no-answer signal (i.e. before the timeout period elapsed).


This can occur if a user disconnects when the call is queued / ringing or as he begins to hear the operator tone suggesting the phone number is invalid or switched off.

completed

N/A (empty)

completed

The incoming call didn't have a second leg or the user disconnected before Exotel reached the connect applet to begin dialing.

Completed


     N/A 
Missed-CallThis status comes up when all of your agents were busy on other calls or all of them had toggled off. 



Leg1Status can vary in case the caller is connecting to a call flow that does not have a menu prompt in the beginning as Exotel will directly patch the user to the 2nd leg without picking up the call.


Leg1Status

Leg2Status (DialCallStatus)

 Status

Description

busy

no-answer / busy

completed

Exotel dialed the number but we did not get answered event back before the timeout value elapsed or Leg2 disconnected. In such cases, Exotel will send a busy signal back to Leg1.

no-answer

no-answer

completed

Exotel dialed the number but we did not get answered event back before the timeout value elapsed. In such cases, Exotel will send a no-answer signal back to Leg1.

busy

canceled

completed

Exotel dialed the number but Leg1 disconnected the call before the timeout value elapsed. In such cases, Exotel will receive a busy signal from Leg1.


NOTE: In case of an incoming call, for all purposes, Leg2Status will determine all scenarios to find out what happened with a call. 'Status' and 'Leg1Status' are not really relevant to be used for practical purposes and are present due to archaic (backward compatibility) reasons


Explanation:

  • The overall ‘Status’ will always be 'completed' in case of an incoming call as it has successfully arrived at Exotel from the caller.

  • Leg2Status (also passed as 'DialCallStatus' in pass-thru) will refer to the call status of the callee (to whom the caller wanted to get connected to) of the last attempted number via the connect applet (if it attempts to multiple numbers).


Outbound calls

Connecting two numbers (API Link)


Leg1StatusLeg2Status 
(DialCallStatus)
 Status
Description
completed
completedcompletedThis indicates that a connection was established and audio was exchanged between the caller and the callee.
completed
no-answerno-answerThis indicates Leg1 picked up the call and Exotel dialed the Leg2 number but we did not get an answered event back before the timeout value elapsed.
completed
busybusyThis indicates Leg1 picked up the call and Exotel dialed the Leg2 number but received a busy response
completedfailedfailedThis indicates Leg1 picked up the call and Exotel dialed the Leg2 number but Exotel's carriers could not connect the call. Possible reasons include the number is switched off or not reachable, the number being invalid, transient connection error, etc.
completedcanceledfailedExotel dialed the number (Leg2) but Leg1 disconnected the call before we received the completed / busy / failed / no-answer signal (i.e. before the timeout period elapsed).

This can occur if a user disconnects before the ringing is completed or as soon as he begins to hear the operator tone suggesting the phone number is invalid / switched off.
completed
N/A (empty)
failed
This indicates Leg1 picked up the call but the call didn't have a second leg or the user disconnected before Exotel began to dial.
no-answerN/A (empty)no-answerThis indicates Exotel dialed the Leg1 number but we did not get an answered event back before the timeout value elapsed.
busyN/A (empty)busyExotel dialed the Leg1 number but received a busy response.
failedN/A (empty)failedExotel's carriers could not connect Leg1 of the call. Possible reasons include the number is switched off or not reachable, the number being invalid, transient connection error, etc.


NOTE: In case of an outgoing call, for all purposes, Leg1Status and Leg2Status will determine all scenarios to find out what happened with a call. 'Status' is not really relevant to be used for practical purposes and is present due to archaic (backward compatibility) reasons


Connecting a number to a call flow (API Link)


Leg1 Status

Leg2 Status (DialCallStatus)

 Status

Description

completed

completed

completed

This indicates that a connection was established and audio was exchanged between the caller and the callee.

completed

no-answer

completed

This indicates Leg1 picked up the call and Exotel dialed the Leg2 number but we did not get an answered event back before the timeout value elapsed.

completed

busy

completed

This indicates Leg1 picked up the call and Exotel dialed the Leg2 number but received a busy response

completed

failed

completed

This indicates Leg1 picked up the call and Exotel dialed the Leg2 number but Exotel's carriers could not connect the call. Possible reasons include the number is switched off or not reachable, the number is invalid, transient connection error, etc.

completed

canceled

completed

Exotel dialed the number (Leg2) but Leg1 disconnected the call before we received the completed / busy / failed / no-answer signal (i.e. before the timeout period elapsed).

This can occur if a user disconnects before the ringing is completed or as soon as he begins to hear the operator tone suggesting the phone number is invalid / switched off.
completed
N/A (empty)

completed
This indicates Leg1 picked up the call but the call didn't have a second leg or the user disconnected before Exotel began to dial.

no-answer

N/A (empty)

no-answer

This indicates Exotel dialed the Leg1 number but we did not get an answered event back before the timeout value elapsed.

busy

N/A (empty)

busy

Exotel dialed the Leg1 number but received a busy response.

failed

N/A (empty)

failed

Exotel's carriers could not connect Leg1 of the call. Possible reasons include the number is switched off or not reachable, the number being invalid, transient connection error, etc.


NOTE: In case of an outgoing call, for all purposes, Leg1Status and Leg2Status will determine all scenarios to find out what happened with a call. 'Status' is not really relevant to be used for practical purposes and is present due to archaic (backward compatibility) reasons


Points to remember:

  • In the Call details API, we have the Leg1Status and Leg2Status that denote the statuses of those specific legs, in a particular call
    • Here, you would also find an additional parameter called ‘canceled’, which would essentially indicate that ‘the call was canceled while queued or ringing’ i.e. during the call run

  • Similarly, in the pass-thru applet, we have a ‘DialCallStatus’ that corresponds to Leg2Status

  • Irrespective of the status, a call is charged based on the Leg1 or Leg2 (or both) having answered a call from an Exotel number (ExoPhone), at any given point in time

  • Below are the reasons for Leg2 which can be N/A (empty/null):
    • No number is returned to dial out the 2nd leg of the call
    • The number is returned but before even Exotel starts dialing out, the 1st leg caller dropped the call
    • If there is no Leg2 in the call flow

Glossary:


Leg1StatusStatus of the first leg of the call. Can be one of
  • completed - The call was answered and has ended normally
  • busy - The caller received a busy signal
  • failed - The call could not be completed as dialed, most likely because the phone number was non-existent
  • no-answer - The call ended without being answered
  • canceled - The call was canceled while queued or ringing
Leg2StatusStatus of the second leg of the call. Can be one of
  • completed - The call was answered and has ended normally
  • busy - The caller received a busy signal
  • no-answer - The call ended without being answered
  • failed - The call could not be completed as dialed, most likely because the phone number was non-existent
  • canceled - The call was canceled while queued or ringing


If you have any questions or concerns, please connect with us using the chat widget on your Exotel Dashboard or Whatsapp us on 08088919888