Newer Version Available
Handling Missed Calls and Call Errors
To end a call, call.reason must be set to ended or error, and call.closeCallOnError must be set to true or false.
Calls usually end when an agent clicks the End Call button, invoking the vendor’s endCall() method. In such cases, configure the connector to raise a HANGUP event with call.reason set to ended to mark the voice call as completed.
However, calls can also end when an agent misses or declines the call, or when the call fails and is in an error state.
- Raise a HANGUP event type with call.reason set to error in the publishEvent() method.
- Set call.closeCallOnError to false to keep the conversation open and leave the voice call in a “new” state. Don’t set call.closeCallOnError to true unless you want to close the conversation and mark the voice call as completed.
- When an agent misses a call, set call.agentStatus to MissedCallAgent.
- When an agent declines a call, set call.agentStatus to DeclinedByAgent.
- When a call fails due to the agent, set call.agentStatus to FailedConnectAgent.
- When a call fails due to any reason that’s unrelated to the agent, set call.agentStatus to FailedConnectCustomer.
To set the agent’s status automatically when the call is declined, go to Setup | Presence Configuration Settings | Update Status on Decline, and choose a presence status for when the agent declines a work item.
To set the agent’s status automatically when the call is missed or if there’s any error that isn’t due to call declined, go to Setup | Presence Configuration Settings | Update Status on Push Time-Out and choose a presence status.