Automation#23: Automate Guided Conversations in Zoho Desk with Business Hours

Automation#23: Automate Guided Conversations in Zoho Desk with Business Hours


Hello Everyone, 
This week's edition introduces a custom function designed to automate Guided Conversations in Zoho Desk, based on your business hours. With this feature, you can align the bot's behavior with your business schedule, ensuring a smooth and professional customer experience.

Self-service platforms are now a cornerstone of effective customer service, improving productivity for both customers and support agents. With the evolving nature of customer support, self-
service has become indispensable. It saves time and provides quick access to solutions, empowering customers to address their concerns efficiently.

Zoho Desk's Guided Conversations serves as a robust self-service tool, offering Tier-1 solutions to customers through an intuitive interface. For more complex or escalated queries, the bot seamlessly connects customers to a live agent, ensuring both self-service and human assistance for effective issue resolution.
However, businesses often have non-working hours, such as weekends or holidays, when agents are unavailable. In such cases, configuring your Guided Conversations based on your business hours is essential. During non-working hours, the bot can:
  1. Notify customers that your business is currently closed, along with your operating hours.
  2. Provide an option for customers to submit a ticket, ensuring their query is addressed promptly during working hours.Configure your Guided Conversations today and streamline your customer support process!

How to incorporate this custom function within your GC flow?
1. Go to Setup (S) >> Self-Service >> Guided Conversation. 
2. Choose the Department and click on Create Flow
(If you would like to add this to your existing flow, click on the ellipsis icon under Published Flows and click on the Edit button.)
3. Select the channels, give a Name and Description, and click Next. 
4. Click on the + icon, add the Webhook block, under Perform Actions
5. Enter the Block name as Business Hours, Choose Get under Method
NotesNote: In the Business Hours URL, replace .com with .in/.eu/.ca/.sa based on your DC

How to fetch the Business Hour Id? 
6.1 To fetch the Business Id, Go to Setup (S) >> Organization >> Business Hours.  
6.2 Click on the Business Hours configured within your Zoho Desk Account. Go to the URL of the specific Business Hours, and you can fetch the business Id from the URL.


7. After entering the URL, do not make changes to the Query Params and Headers. 
8. Under Connections, click on Add
To Create a connection
      8.1 Click Create Connection.
      8.2 Select Zoho OAuth under Default Connection.
      8.3 Give a connection name (let's say configureBusiness Hours).
      8.4 Disable the toggle for User Credentials of Login User.
      8.5 Under Scope, choose the below scope values:
               Desk.settings.READ
      8.6 Click Create and Connect.
      8.7 Click Connect and click Accept.
Connection is created successfully.



 9. After creating the connection, click on Refresh and then click on the drop down arrow and select the connection (configureBusiness Hours) created.
10. Click on the gear icon in the Formatter option and paste the below code in the Deluge window: 
  1. dayMAp = {"SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY"};
  2. businessTimes = response.get("businessTimes");
  3. timez = response.get("timeZone").get("id");
  4. response = Collection();
  5. createdTime = zoho.currenttime.toString("yyyy-MM-dd HH:mm:ss",timez).toDateTime();
  6. createdDay = createdTime.getDay();
  7. //get this from above created time
  8. createdHour = createdTime.getHour();
  9. //get this from above created time
  10. createdMinute = createdTime.getMinutes();
  11. //get this from above created time
  12. createdWeekDay = createdTime.getDayOfWeek();
  13. //get this from above created time
  14. createdWeekDay = dayMAp.get(createdWeekDay - 1);
  15. for each  businessTime in businessTimes
  16. {

  17. if(businessTime.get("day") == createdWeekDay)

  18. {

  19. businessTimeStartHour = businessTime.get("startTime").getPrefix(":").toLong();

  20. businessTimeEndHour = businessTime.get("endTime").getPrefix(":").toLong();

  21. businessTimeStartMinute = businessTime.get("startTime").getSuffix(":").toLong();

  22. businessTimeEndMinute = businessTime.get("endTime").getSuffix(":").toLong();

  23. if((createdHour > businessTimeStartHour || createdHour == businessTimeStartHour && createdMinute >= businessTimeStartMinute) && (createdHour < businessTimeEndHour || createdHour == businessTimeEndHour && createdMinute <= businessTimeEndMinute))

  24. {

  25. response.insert({"status":"true"});

  26. }

  27. else

  28. {

  29. response.insert({"status":"false"});

  30. }

  31. }
  32. }
  33. return response.get(0).get("status");

11. Click Save after pasting the code. 
12. Click on the gear icon in the Response icon
12.1 Click on the gear icon on the Status Code
12.2 Give Status Code as 200, Flow Variables as status, Response Value as /
12.3 Let the Type be single element and the Data Type be String. Click Save. Click Save for the Response List with the updated status. 
13. Disable the toggle for the Multi Path
14. Choose a Request timeout if required. This sets a response waiting time from the server. 
15. Set the Error message if required to display in case waiting time exceeds the response time. 
16. Click Save

This is the configuration for setting the business hours through a custom function. 

17. After the Webhook, click on the + icon and add the Fork block under the Perform Actions



18. Give the Block Name  as Check, Enter Path list : name it as Check. 
Under Criteria 1, click on the drop-down arrow, and enter choose Status under Block variables, from the drop-down menu.  Choose operation: contains and give the value : True

19. Do not add an else path. 
20. Click Save

In the Fork block, under Check, you can add the Transfer to agent block from the Zoho Desk Blocks. Under Else, you can add a text icon/ info card stating you are out of business hours. 

Notes
Note: This custom function does not include the Holiday Lists configured within Zoho Desk. 
You can seamlessly integrate this Guided Conversation flow into your self-service platform to ensure you never miss a customer, even during non-working hours. Keep your customer support running smoothly!

See you next week!
Regards,
Lydia | Zoho Desk


      • Sticky Posts

      • Register for Zoho Desk Beta Community

        With the start of the year, we have decided to take a small step in making the life of our customers a little easier. We now have easy access to all our upcoming features and a faster way to request for beta access. We open betas for some of our features
      • Share your Zoho Desk story with us!

        Tell us how you use Zoho Desk for your business and inspire others with your story. Be it a simple workflow rule that helps you navigate complex processes or a macro that saves your team a lot of time; share it here and help the community learn and grow with shared knowledge. 
      • Tip #1: Learn to pick the right channels

        Mail, live chat, telephony, social media, web forms—there are so many support channels out there. Trying to pick the right channels to offer your customers can get pretty confusing. Emails are most useful when the customer wants to put things on record. However, escalated or complicated issues should not be resolved over email because it's slow and impersonal.  When you need immediate responses, live chat is more suitable. It's also quick and convenient, so it's the go-to channel for small issues. 
      • Welcome to Zoho Desk Community - Say hello here!

        Hello everyone! Though we have been here for a while, it’s time to formally establish the Zoho Desk Community; we’re really happy to have you all here! This can be the place where you take a moment to introduce yourself to the rest of the community. We’d love to hear all about you, what you do, what company or industry you work for, how you use Zoho Desk and anything else that you will like to share! Here’s a little about me. I am Chinmayee. I have been associated with Zoho since 2014. I joined here
      • Webinar 1: Blueprint for Customer Service

        With the launch of a host of new features in Zoho Desk, we thought it’ll be great to have a few webinars to help our customers make the most of them. We’re starting off with our most talked about feature, Blueprint in Zoho Desk. You can register for the Blueprint webinar here: The webinar will be delivered by our in-house product experts. This is a good opportunity to ask questions to our experts and understand how Blueprint can help you automate your service processes. We look forward to seeing

        • Recent Topics

        • Exciting Updates to the Kiosk Studio Feature in Zoho CRM!

          Hello Everyone, We are here again with a series of new enhancements to Kiosk Studio, designed to elevate your experience and bring even greater efficiency to your business processes. These updates build upon our ongoing commitment to making Kiosk a powerful
        • Zoho Projects - Refine Access to Collaboration Menu

          Hi Projects Team, I noticed that Calendar, Chat and Meeting menu options in the Collaboration section are visible to client users, even when they don't have access to the features. This could be confusing and frustrating, because if it's there you expect
        • Zoho Projects - Add Feed to Project Tabs

          Hi Projects Team, I'm working on a lightweight communications requirement for one of my customers in relation to communicating with their client users via Zoho Projects. I noticed that the Feed is only available in the Collaboration section, but you can
        • Zoho Projects - Email Notifications for Feed Updates

          Hi Projects Team, I'm working with a client who wants a simple way to communicate with their customers on projects. Getting the customer to add comments to Tasks or Bug records is not ideal, as we need a way which is easy with minimal training, and has
        • Zoho Books Finance Modules Not Accessible in Zoho CRM Mobile App

          We have integrated Zoho CRM with Zoho Books using the Zoho Finance Suite integration. In the CRM web version, we can see the Finance modules (Estimates/Quotes, Invoices, Sales Orders, Items, Payments) and are able to create invoices and quotes directly
        • Zoho CRM Kiosk Upload Files

          Hello all, We are trying out Kiosks at the moment to see where it can fit best in our business. We are still a bit off in the application but lets say we will sort this out. My question is the following - when I create a Kiosk I can add "File Upload"
        • Connecting zoho creator to zoho writer to send prefilled documents

          i will paste the worflow below // Get user's submitted data from the form userSalary = input.Current_Salary; userCIBIL = input.CIBIL_Score; userEmail = input.Email; userName = input.Name; // You need to get the Document ID from the URL of your Zoho Writer
        • Extracting Images from a Zoho Creator Report into a Pages

          If you’ve uploaded images in a form and can see them in your report, you might also want to display those same images inside a Page (custom HTML page). This is useful for dashboards, profile pages, or any place where images should be visible dynamically
        • How do I change a form's name? Why isn't this more intuitive?

          Can someone please let me know how to change a form's name?
        • Zoho is blocking emails I subscribe to from one sender

          About 4 months ago I stopped receiving newsletters that I subscribe to from @thedispatch.com. They tell me that zoho's server is blocking them. I've added them to my contacts list, but they're not even reaching my inbox. I don't know how to troubleshoot
        • Introducing Formula Fields for performing dynamic calculations

          Greetings, With the Formula Field, you can generate numerical calculations using provided functions and available fields, enabling you to derive dynamic data. You can utilize mathematical formulas to populate results based on the provided inputs. This
        • Inactive Items - Make Less Prominent by Default

          Currently, when one marks an Item as "Inactive", it really doesn't do much of anything to hide it or get it out of the way. Search and reporting within Finance should, by default, hide inactive Items from standard reports, searches, etc. If one specifically
        • Items should display under specific warehouse

          I have configured the multi warehouse but it show all the items under all warehouse which is not correct according to our business logic, so i want that items should only display under that specific warehouse not under all the warehouses not even with zero quantity. Some items should be common but not all so is there any option for that purpose so i can specific the items to its warehouse. Regards
        • Zoho Analytics Bulk Api Import json Data

          HI, I’m trying to bulk-update rows in Zoho Analytics, and below are the request and response details. I’d like to understand the required parameters for constructing a bulk API request to import or update data in a table using Deluge. Any guidance on
        • E-Invoicing in Belgium with Zoho Billing

          Starting January 1, 2026, Belgium is introducing mandatory electronic invoices (e-invoicing) for all B2B transactions between VAT-registered businesses. Invoices and credits notes must be exchanged in a prescribed digital format. How E-Invoicing works
        • Convert HTML to PDF & Send as Email Attachments in Zoho Creator (Deluge)

          This approach is useful for sending welcome letters, instructions, or promotional offers after order creation. // 1. Define the variables using the submitted input customerName = input.Customer_Name1; orderID = input.ID; customerEmail = input.Email_Address; //
        • Auto-fill New Row with Previous Row Values

          rowsize = input.Order_Items.count(); for each row1 in input.Order_Items { rowsize = rowsize - 1; if(rowsize == 1) { row.Door_Model = row1.Door_Model; row.Door_Color = row1.Door_Color; row.Materials = row1.Materials;
        • I am facing a problem with an if-else condition

          If I use if, else if, and else conditions in Deluge with the same variable name, sometimes the variable causes an error because the same variable name is present in every block
        • When I click on PDF/PRINT it makes the invoice half size

          When I click PDF / Print for my invoice in Zoho Books, the generated PDF appears at half size — everything is scaled down, including the logo, text, and layout. The content does not fill the page as it should. Could someone advise what causes Zoho Books
        • Python - code studio

          Hi, I see the code studio is "coming soon". We have some files that will require some more complex transformation, is this feature far off? It appears to have been released in Zoho Analytics already
        • API question - adding a thread to an existing ticket

          Hi Is there an API function for the customer to add to an existing ticket thread? example, customer puts in new support ticket. support replies and ask for more details. customer replies with more details -what api function is used for this (will add record append to same ticket number?) Thanks
        • search and Smart Bar both missing in Mail

          One of the users on my account does not have the search bar at the top right or the Smart Bar at the bottom left of the desktop Mail app. Any ideas how to get those back?
        • Why is Zoho Meeting quality so poor?

          I've just moved from Office 365 to Zoho Workplace and have been generally really positive about the new platform -- nicely integrated, nice GUI, good and easy-to-understand control and customisation, and at a reasonable price. However, what is going on
        • Hide fields only for creation

          Hello, I'd like to hide some fields only during the creation of a contact in Zoho CRM. In fact I have some fields that are automatically calculated thanks to an automation, so when my users create a contact I don't want them to fill those fields. I know
        • Items Below Reorder Point Report?

          Is there a way to run a report of Items that are below the Reorder Point? I don't see this as a specific report, nor can I figure out how to customize any of the other stock reports to give me this information. Please tell me I'm missing something s
        • Qwen as the default open source Generative AI model for Zia

          Hello everyone, Zia Generative AI is transitioning from Llama (8B parameters) to Qwen (30B parameters) as the default model. This means that users who were using Llama as a GenAI service will now use Qwen. This upgrade was made with a vision to enhance
        • Calendar week view: Today + 6

          Is there anyway to have the calendar change dynamically based on the date? Due to the amount of events, we only display a week at a time, but towards the end of the week, we can no longer see ahead to next week (without changing it manually every time).
        • How to restrict user/portal user change canvas view

          Hi , I would like to restrict user / portal user change their canvas view because I hide some sensitive field for them. I dont want my user switch the canvas view that do not belong to them But seems Zoho do not provide this setting?
        • E-Invoicing in Belgium with Zoho Books

          Starting January 1, 2026, Belgium is introducing mandatory electronic invoices (e-invoicing) for all B2B transactions between VAT-registered businesses. This means that invoices and credits notes must be exchanged in a prescribed digital format. How E-Invoicing
        • E-Invoicing in Belgium with Zoho Inventory

          Starting January 1, 2026, Belgium is introducing mandatory electronic invoices (e-invoicing) for all B2B transactions between VAT-registered businesses. Invoices and credits notes must be exchanged in a prescribed digital format. How E-Invoicing Works
        • Enhancement Request for Multi-Asset Work Order Feature

          Hello Latha, Thank you for your continued support. The multi-asset Work Order feature is extremely helpful. I did some testing based on our requirements, and during the process, I noticed a few areas where we need your team’s support to improve the feature
        • CRM x WorkDrive: File storage for new CRM signups is now powered by WorkDrive

          Availability Editions: All DCs: All Release plan: Released for new signups in all DCs. It will be enabled for existing users in a phased manner in the upcoming months. Help documentation: Documents in Zoho CRM Manage folders in Documents tab Manage files
        • Weekly Tips : Make collaboration effortless with Whiteboard in Zoho Mail

          Working with your team often means switching between emails, notes, and other applications just to explain an idea. Maybe you are trying to sketch a layout, plan a workflow, or quickly brainstorm ideas—with text alone, things can get confusing. So how
        • Add Option to Mass Dispatch by User

          Hello! We are using the dispatch console to dispatch service appointments to our service ressources. Right now, the process is our dispatcher verifies each ressource's route for the day and dispatches it after validation. Sadly, there doesn't seem to
        • Introducing parent-child ticketing in Zoho Desk [Early access]

          Hello Zoho Desk users! We have introduced the parent-child ticketing system to help customer service teams ensure efficient resolution of issues involving multiple, related tickets. You can now combine repetitive and interconnected tickets into parent-child
        • Error AS101 when adding new email alias

          Hi, I am trying to add apple@(mydomain).com The error AS101 is shown while I try to add the alias.
        • How to add to Subforms via Zapier with Zoho Writer?

          I have the following layout for a Zoho Writer Document. As you can see there is a repeating subform taking in "Items". I am trying to make a Zapier integration with it, and I can see there is 1 field saying: "Items", but it does not specify how I'm supposed
        • Contrôles administratifs granulaires : un atout pour la sécurité des e-mails

          La moindre erreur dans votre système de messagerie peut coûter très cher à votre entreprise, tant en argent qu’en conformité et en image de marque. Pour beaucoup d’organisations, ce risque est bien réel. Les e-mails véhiculent quotidiennement des informations
        • Include the "Added Email ID" to the Filters of a Report

          Hi, With a Report and lots of entries, a normal thing is to filter entries by the submitter, but that is not included in the Auto Filter of Reports and you can't add a custom filter to a Report without specifying the actual value. I would like to be able
        • Marketer's Space: Why mobile optimization deserves a place in your email strategy

          Hello Marketers, Welcome back to Marketer's Space! Today, we'll talk about the importance of creating mobile-friendly email designs. While mobile phones were once used only to make phone calls, today they're used for almost everything, including texting,
        • Next Page