The new direct callback feature found in Microsoft’s Omnichannel for Customer Service gives customers the ability to request a callback as soon as an agent becomes available. I will explore this new feature in this blog post.

The concept of a callback is simple enough!

If a customer is going to be in a queue for longer than a specified duration, then instead of them holding we will offer the customer a chance to be called back. Then when an agent becomes available the customer will be called. (The assigned agent will have a chance to accept the callback before the customer’s number is dialed.)

Overflow Setup

The first step in using the callback feature is to configure your overflow logic. For this open the queue you have created for voice calls. On the queue you will find an option to manage the overflow settings.

Below you can see that in my overflow settings I have decided to offer a callback if the queue limit exceeds “1”. One is a very low value; this is obviously a test! In my test I wanted my overflow logic to be triggered as soon as possible. Another option exists to trigger a callback based on average wait time.

Note: You cannot trigger a callback out of hours! Maybe for that you’d be better diverting customers to voicemail.

Automated Messages

Out of the box we have two callback automated messages. The first is triggered when a callback is offered. And the second is triggered if the customer decides to proceed with a callback.

  • Offer customer callback – Current wait times are longer than expected. If you would like a call back, please press 1 or continue to wait for the next available agent.
  • Customer callback response – You have requested a callback. We will call you back as soon as an agent is available. Good bye!

It is possible to customize the automated messages for each workstream. Below you can see that I have opened my workstream, use the “Edit” option to maintain the automated messages and other workstream specific options.

Having clicked “Edit”, go to the “Behaviors” tab. As you will find the automated message settings on this tab.

Scrolling down slightly on the behaviors tab will reveal the automated message options. We can now click “+ Add” and pick a suitable trigger. You can then enter whatever custom automated message you’d like.

Callbacks in Action!

As a test I called from two phones at once. As I’d set my work item limit in my overflow to 1, this should trigger my overflow logic.

The first call waited in the queue.

The second call triggered the overflow logic. Meaning the caller was given an automated messages saying “Current wait times are longer than expected. If you would like a call back, please press 1 or continue to wait for the next available agent”.

I pressed “1” and ended the call.

Back as the agent, when I made myself available, I received a popup, which I accepted. This then automatically dialed the customer.

FYI: As a test I’d opened my supervisor dashboard that shows ongoing conversations. The supervisor should be able to see the calls awaiting a callback!

Below you can see how my call looked as it started. It might be worth noticing the “1” in the transcript. This showed because the caller had clicked “1” to register the callback. Meaning we can see the call transcript from before the callback was scheduled. In my simple example I didn’t have a IVR BOT setup. But I believe if the caller had “spoken” with an IVR BOT then the agent would now be able to see the transcript from the IVR.


I think callbacks are a great new feature. They are currently in preview (as at Nov 2022) so not yet recommended for production use.

But I found the callbacks behaved exactly as I expected. I saw no “bugs”. Great job Microsoft!

I do have two observations which you might want to consider.

  1. When the agent accepts the call back, it dials immediately. In many circumstances this will be perfect. However, in some scenarios it might be cool if the agent could review the IVR transcript, find the correct customer record or maybe review open cases prior to connecting with the customer. As having some prep-time might enable them to handle the customer more effectively. I’ve seen some solutions that give the agent “n” seconds to review the caller details prior to connecting. Something like that would make a great future feature.
  2. In my test I made two calls. No agents were online. Only one of the callers was offered a callback. I think because the overflow didn’t kick in until the queue was longer than one work item. Meaning …. Callbacks appear to only be triggered when the overflow conditions are satisfied, I’d ideally like to also see callbacks being offered to anyone already in the queue.

But I do think callbacks are an amazing addition to the Omnichannel voice channel capabilities. This is a feature I look forward to working with more.