Outbound Click-to-Dial (Legacy vs. Default)
There are two ways that the outbound click-to-dial feature is implemented in the voicemail application.
Default
The current method if the outbound click-to-dial functionality utilizes a “queued callback” implementation. Here, when the Agent initiates an outbound call from the voicemail UI, the startOutboundVoiceContact
API would still be invoked, however the call is directed to a dedicated DID in the Connect instance. Custom Attributes (the customer phone number and agent information) are sent with this call, where a specific call flow associated with the dedicated DID receives those attributes and sets up a “queued callback” with the callback number set to the customer’s phone number and is assigned to the Agent’s queue. This process will take at least 1 second to complete (as a queued callback requires at least 1 second of wait time before initiating a callback)
This results in a better experience for the customer and agent.
If for some reason the Agent receives a call from another queue, they can continue to answer the call as normal. After the Agent completes the call from another queue, the NEXT call will be the queued callback that will reach out to the customer (because the Agent queue has a higher priority than all queues in their routing profile). The key here is that Connect will connect to the Agent FIRST - once the agent accepts the queued callback, THEN the voicemail customer will be dialed while the Agent is on hold.
This results in no hold time for the customer.
Considerations
The voicemail application has no awareness or control of the Agent’s status in the CCP.
In call centers where “auto-answer” is set to ON, Agents will be forced to answer any incoming call. In some edge cases, inbound calls from other queues in their routing profile could appear before the outbound call they initiated from the voicemail application is presented in the CCP (this occurs between the time they click the “outbound click to dial” button in the voicemail UI and when the queued callback is initiated). Even in this case, the voicemail customer would not be contacted until the Agent accepts the queued callback after finishing the call that came in ahead of the callback.
If Agents want to “guarantee” the next call they receive is the one they initiated from the voicemail app, they would need to click the “outbound click to dial” button in the voicemail UI while they are in an non-”Available” status (or in ACW). Since the Agent queue is highest priority, queued callbacks supersede any other queues in their Routing Profile – queued callbacks would be the first calls to come in the CCP the next time they become “Available”.
Alternatively, if the Agent was temporarily given a routing profile that did not have any live queues, they could be free to initiate calls from the voicemail app without worrying about toggling Agent Status and only get calls coming to their CCP that they instantiated from the voicemail UI.
Legacy (deprecated)
*This method has been deprecated and is not recommended.*
The “legacy” method was the initial version of outbound click-to-dial. Here, when an agent initiates an outbound call from the voicemail UI, the startOutboundVoiceContact
API would be invoked, calling the CUSTOMER and placing them on hold. While the customer is holding, that call would be placed in the Agent queue of the Agent that started the call from the voicemail app.
The reason why this is not recommended is because there is a possibility that the Agent could be receiving inbound calls from queues in their Routing Profile between the time they clicked the button on the voicemail app to start the outbound call and when Connect contacts the customer and places them in the Agent queue (this process could take a few seconds).
In the event that the Agent DOES get a call from a different queue, the voicemail customer could potentially be placed on hold in the Agent queue – this means the Agent would need to complete their call with the other call, before answering the voicemail customer that was placed on hold. This results in a poor customer experience.