web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

No record found.

News and Announcements icon
Community site session details

Community site session details

Session Id :
Service | Customer Service, Contact Center, Fie...
Suggested Answer

Copilot Studio Agent Active During and After Operation Hours

(0) ShareShare
ReportReport
Posted on by 8
Hello everyone,

I have a copilot studio agent embedded in a chat channel in contact center.
 
At the moment, out of operation hours and during breaks, the chat widget displays that we are offline.
 
I want it to work 24/7, however I don't want it to handoff to a live representative out of operation hours.
 
Is there a way to do it through contact center? If not is there a workaround? 
 
My Initial solution was to handle the out of operation hours inside the copilot studio bot; however, I can't find the values of the working hours that was set in contact center admin center, all its columns are deprecated.
 
Kindly find attached screenshots of everything mentioned above to have a better understanding of what I am trying to do.
 
Appreciate any insight anyone might have.
 
Best,
Tamer
Screenshot 2026-02-04 160348.png
Screenshot 2026-02-04 155955.png
I have the same question (0)
  • Suggested answer
    Goloknath Profile Picture
    1,890 User Group Leader on at

    1. Set the Widget to "Always Open"

    For the Bot to work 24/7, the "front door" must stay open.

    • In the Customer Service Admin Center, go to your Chat Widget settings.

    • Ensure the Operating Hours assigned to the Workstream are set to 24/7.

    • If you have "Show widget during out of office hours" toggled off, turn it On.

    • Note: This will make the bot available all the time, but we will block the "Escalate" part in the next step.

    2. The Workaround for "Deprecated" Operating Hour Columns

    You are correct—the columns on the msdyn_operatinghour table are often empty or deprecated because Microsoft moved that data into the Calendar and Calendar Rule tables (which are notoriously difficult to query via standard Flow).

    The Efficient Workaround: Instead of trying to parse the complex Dynamics Calendar via API, create a simple Environment Variable or a Custom Configuration Table in Dataverse that stores your "Start Hour" and "End Hour" (e.g., 9 and 17).

    3. Handle the Logic in Copilot Studio

    Before the bot executes a "Transfer to Agent" node, it needs to perform a "Gatekeeper" check.

    1. Create a Power Automate Flow called from your "Escalate" topic.

    2. In the Flow, use the "Convert Time Zone" action to get the current time in your local business timezone.

    3. Use a Condition to check if the current hour is between your Start and End hours (e.g., CurrentHour is greater than 8 AND CurrentHour is less than 18).

    4. Return a Boolean (isInHours) back to Copilot Studio.

    5. In Copilot Studio:

      • If isInHours is True: Proceed to the Transfer to Agent node.

      • If isInHours is False: Show a message like, "Our live agents are currently away, but I can help you right now or take a message for them to review tomorrow."

    4. Alternative: The "Queue Overflow" Method

    If you don't want to build a Flow, you can handle this at the Routing level in the Admin Center:

    • Keep the Bot in the "Primary" queue.

    • Set the Queue Overflow settings.

    • You can set a rule that if no agents are available (which happens automatically out of hours), it performs a specific action.

    • However, the Copilot Studio method (Step 3) provides a much better user experience because the bot can explicitly tell the user why they aren't being transferred.

    ​​​​​​​if this helps pls mark as verified so that it may be helpful for someone else. Thanks!

  • TI-09120726-0 Profile Picture
    8 on at
    Hello @Goloknath,
    I was able to retrieve the start and end time of the operating hours set in contact center through an unbound action, and then returned the results using power automate to copilot studio.
     
    Thanks for your suggestions but I already resolved this workaround.
  • Suggested answer
    Goloknath Profile Picture
    1,890 User Group Leader on at
    if this thread closed then pls mark verified if the suggestions make sense to close the thread. Happy Coding!

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Stars!

Congratulations to our 2025 Community Spotlights

Thanks to all of our 2025 Community Spotlight stars!

Leaderboard > Service | Customer Service, Contact Center, Field Service, Guides

#1
NeerajPawar Profile Picture

NeerajPawar 31

#2
Tom_Gioielli Profile Picture

Tom_Gioielli 23 Super User 2026 Season 1

#3
Encore Business Solutions Profile Picture

Encore Business Sol... 14

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans