Cliq Bots - Let your bot welcome it's subscribers via the welcome handler

Cliq Bots - Let your bot welcome it's subscribers via the welcome handler

In this post, we're going to shed light on how important it is for a bot to greet subscribers with a welcome message. We'll also be looking at how to configure a simple yet effective welcome handler! 

A welcome message is the first and the most important action / interaction performed by your bot. But why is it so important? 
  • A message that explains the user what the bot does will provide them with a concrete understanding of how the bot can help them. 
  • Including a call to action, such an instant button in the message will show the user how easy it is to interact with the bot.
Working of the bot welcome handler 

The bot welcome handler will be triggered to send a message when a user subscribes to a bot. Another interesting fact is that, the handler can also send a message to a user if they unsubscribe and subscribe to the bot again! There are a list of attributes passed when a welcome handler is triggered. Take a look at them in our welcome handler help page. 

Sample Scenario

Let us try to build a conference bot with a welcome message explaining the user on what the bot does and a call to action. Assuming the conference has a hackathon event where participants are encouraged to build applications. The welcome handler should serve the following purposes : 

  • The welcome message will explain all the necessary details- about the verticals available, how to get started with their application, so on and so forth. 
  • A call to action for the user to select their choice of vertical under which they can submit the application. 
  • Each entry from the user will be added to the creator form to maintain a record.
Sample Welcome Handler Code

  1. response = Map();
  2. response = {"text":" Hey *" + user.get("first_name") + "* !​ \n Welcome to ZylCal Developers Conference -2017 and thank you for subscribing! I'm here to help you with the following : \n ​​  Session Timings \n ​  Session Overview \n ​​  Feedback \n ​​  ZylCal Hackathon \n Click on any of the buttons know more about the respective topics! [+Sessions](invoke.function|conference|li.jung@zylker.com|session-1)  [+Hackathon](invoke.function|conference|li.jung@zylker.com|hack-2)"};
  3. return response;

Sample Functions Execution Code

  1. response = Map();
  2. message = Map();
  3. button_name = target.get("name");
  4. key = arguments.get("key");
  5. // details = zoho.creator.getRecords("<app_creator_name>","<application_name>","<form_name>","<condition>",1,1,"<insert_connection_name> ", <user_access>);

  6. details = zoho.creator.getRecords("lijungdeveloper","test","Sessions_Report","ID1 == 100",1,1," <insert_connection_name> ",true);
  7. if(key.matches("session-1"))
  8. {
  9. overview = details.toMap().get("Session_Overview");
  10. feedback = details.toMap().get("Feedback");
  11. response = {"text":" Please refer the session information (Details, Timings) from here! \n Session Overview: " + overview + " \n Feedback: " + feedback,"bot":{"name":"ZylCal Conf Bot","image":" <insert_bot_image_url> "}};
  12. }
  13. else if(key.matches("hack-2"))
  14. {
  15. response = {"text":"The hackathon event involves developing applications under any of these categories. Select any category to register with your name and email ID. \n [+Productivity](invoke.function|conference|li.jung@zylker.com|101)  [+IT-Admin](invoke.function|conference|li.jung@zylker.com|102) [+Entertainment](invoke.function|conference|li.jung@zylker.com|103)","bot":{"name":"ZylCal Conf Bot","image":" <insert_bot_image_url> "}};
  16. }
  17. else if(key.matches("101"))
  18. {
  19. dataMap = {"Resp":target.get("name"),"zuid":user.get("email")};
  20. record = zoho.creator.createRecord("lijungdeveloper","test","Hackathon",dataMap,"zohocreator2",true);
  21. response = {"text":"Awesome! Your name has been registered under the *" + target.get("name") + "* category! All the best. :grinning:","bot":{"name":"ZylCal Conf Bot","image":" <insert_bot_image_url> "}};
  22. }
  23. else if(key.matches("102"))
  24. {
  25. dataMap = {"Resp":target.get("name"),"zuid":user.get("email")};
  26. record = zoho.creator.createRecord("lijungdeveloper","test","Hackathon",dataMap,"zohocreator2",true);
  27. response = {"text":"Awesome! Your name has been registered under the *" + target.get("name") + "* category! All the best. :grinning:","bot":{"name":"ZylCal Conf Bot","image":" <insert_bot_image_url> "}};
  28. }
  29. else if(key.matches("103"))
  30. {
  31. dataMap = {"Resp":target.get("name"),"zuid":user.get("email")};
  32. record = zoho.creator.createRecord("lijungdeveloper","test","Hackathon",dataMap,"zohocreator2",true);
  33. response = {"text":"Awesome! Your name has been registered under the *" + target.get("name") + "* category! All the best. :grinning:","bot":{"name":"ZylCal Conf Bot","image":" <insert_bot_image_url> "}};
  34. }
  35. else
  36. {
  37. response = {"text":"I can only help you with these right now! To know any other information please contact support@zylcal.com"};
  38. }
  39. post = zoho.cliq.postToChat(chat.get("id"),response);
  40. return message;


The slide show below will give a better understanding of the sample execution!




The welcome handler sets an opening tone to the bot and also establishes a connection between the user and the bot. Try using this sample code snippet and let us know what you think! Comments and suggestions are welcome. 


Few useful links:




Best,
Manasa
Cliq
    • Sticky Posts

    • Customer payment alerts in Zoho Cliq

      For businesses that depend on cash flow, payment updates are essential for operational decision-making and go beyond simple accounting entries. The sales team needs to be notified when invoices are cleared so that upcoming orders can be released. In contrast,
    • Automating Employee Birthday Notifications in Zoho Cliq

      Have you ever missed a birthday and felt like the office Grinch? Fear not, the Cliq Developer Platform has got your back! With Zoho Cliq's Schedulers, you can be the office party-cipant who never forgets a single cake, balloon, or awkward rendition of
    • Accelerate Github code reviews with Zoho Cliq Platform's link handlers

      Code reviews are critical, and they can get buried in conversations or lost when using multiple tools. With the Cliq Platform's link handlers, let's transform shared Github pull request links into interactive, real-time code reviews on channels. Share
    • App Spotlight : PagerDuty for Zoho Cliq

      App Spotlight brings you hand-picked apps to enhance the power of your Zoho apps and tools. Visit the Zoho Marketplace to explore all of our apps, integrations, and extensions. In today's fast-paced world, seizing every moment is essential for operational
    • Automate your status with Cliq Schedulers

      Imagine enjoying your favorite homemade meal during a peaceful lunch break, when suddenly there's a PING! A notification pops up and ruins your moment of zen. Even worse, you might be in a vital product development sprint, only to be derailed by a "quick
      • Recent Topics

      • Product details removed during update from other system

        We maintain our product details in an other system. These details are synchronized with Zoho at the end of each day, through an API. This has worked perfectly sofar. But last Monday, all product codes and some other product data have been wiped during
      • Client Customer

        I purchased a customer user license, but we cannot see the project I added in the customer account. I would like to ask for support on what we should do.
      • Add Ability to Use Zoho Finance Tags

        For Zoho Finance (Books and Inventory), the current actions do not allow us to affect the tags associated with the entities in question (customers, vendors, items, etc.). Please consider adding this functionality into the actions.
      • Embeded Signing doesn't work on Safari Browser

        We have implemented Zoho Sign in our website by using embeded signing, It works perfectly on Chrome. But it fails on Safari, We get stuck on Zoho Sign Page during redirection from Zoho Sign to our website after signing the document, Please let us know
      • Dataprep Webhook Limits and Cannot update column with Dataprep

        I have two problems : 1 - I am using Airflow to trigger my pipeline, and when I tested it, it worked fine a couple of times. However, after that, I received an error: {"code":429,"message":"Request rate limited"}. I didn’t send too many requests — maybe
      • New in Zoho Forms: Google reCAPTCHA v3 for smarter spam protection

        Hello form builders, Spam submissions are one of the biggest challenges when you share your forms online. They not only clutter your data but can also waste valuable time. To help you combat this without making life harder for genuine respondents, we’re
      • Project Management Bulletin: August, 2025

        We’ve touched a grand 19 years since we started pioneering project management solutions with Zoho Projects. What started as a simple one-page interface is now a suite of products with Zoho BugTracker, Zoho Sprints, and our new debut Zoho Projects Plus,
      • Zoho Sign and Zoho Workdrive Integration

        Hello, there. I want to know if it's possible to save a signed document from Zoho Sign in an specific folder for each signer in Zoho Workdrive.  For example: If John Doe signs the document in Zoho Sign I want to save it automatically in a folder named
      • How do you list multiple contacts for a lead?

        My sales team wants to be able to add additional contacts for leads, how do we do that? Is there a different way we should be using the lead / contact functionality? Moderation update (9th September 2025): Our developers have built an extension to achieve
      • Modifying Three Dot Menu Options

        Is there a way to modify the three dot menu options that display in a Report header? They currently display: Show As (List, Calendar, Timeline), Print, Import, Export. I'd like to remove the Show As and Print options, since they aren't applicable for
      • Field Not Updating in FSM Script - Service and Parts module.

        Dear Team, I am reaching out regarding a script I have implemented in Zoho FSM to automate the calculation of the End of Service date based on the End of Sale date in the Service and Parts module. Overview of the script: Fetches the End_of_Sale__C and
      • Zadarma + Zoho CRM Integration – Missed Calls Saved as Contacts Instead of Leads

        Hello everyone, I’m looking for input from anyone with experience using the Zadarma + Zoho CRM integration. Currently, I’m seeing that missed calls are automatically being created as Contacts instead of Leads. From a CRM perspective, this doesn’t make
      • How to update Multiple Users field in Quote Module from Deal Module

        Scenario : Deal Module having Multiple User Field (Presales Engineer) which having more than 1 User and through Deluge Script I need to get that Users Details and need to put into Multiple User Field (Presales Engineer) of Quote Module. Note: Both Module
      • Clone a Module??

        I am giong to repurpose the Vendors module but would like to have a separate but very similar module for another group of contacts called Buyers. I have already repurposed Contacts to Sellers. Is it possible to clone (make a duplicate) module of Vendors
      • How to change the text in WhatsApp Zobot integrated to Zoho Booking?

        I have integrated Zoho Bookings into Zoho SalesIQ, I want to change the text in WhatsApp when creating a booking in Zobot how to change those text?
      • Updating Subform Record from other Form

        Just wanted to ask how to properly approach this. I have 2 forms and would like to trigger an auto update on the subform once record submitted. block below only updates 1 row for each recordRow in input.AV_System { AssetRecord = Site_Asset_Services[SOR_No
      • Zoho Books - Hide Convert to Sales Order if it can't be used.

        Hi Books team, I noticed that it is not possible to convert a Quote to a Sales Order when a Quote is not yet marked as accepted. My idea is to not show the Convert to Sales Order button when it is not possible to use it, or show it in a grey inactive
      • How do I bulk archive my projects in ZOHO projects

        Hi, I want to archive 50 Projects in one go. Can you please help me out , How can I do this? Thanks kapil
      • Cross-Data Center Collaboration and / Or allowing users to choose DC

        Dear Zoho Cliq Support Team, We are writing to request a significant enhancement to Zoho Cliq that would greatly benefit our geographically dispersed development team. Current Challenge: Currently, Zoho Cliq automatically routes users to specific data
      • New Mandatory One-Click Unsubscribe Link Overshadowing Custom Unsubscribe Link

        I was recently informed by Zoho CRM Support that they are now mandated by the large email service providers like Google and Yahoo to provide a one-click unsubscribe option in the header (not the body) of all mass emails. I have a custom unsubscribe link
      • Send / Send & Close keyboard shortcuts

        Hello! My team is so close to using Zoho Desk with just the keyboard. Keyboard shortcuts really help us to be more efficient -- saving a second or two over thousands of tickets adds up quickly. It seems like the keyboard shortcuts in Desk are only for
      • Is it possible to register webhooks in Zoho CRM using API?

        Hello, I am trying to register a webhook in Zoho CRM programmatically (using the API). Specifically, I want to register a webhook that is fired when new Contacts are created in the CRM. I was able to setup a webhook using the UI, by creating a rule that
      • Calls where the local audio is shared, have echo

        When another user is sharing their screen with audio, I get echo from my own voice. We tested this with multiple users, with different audio setups, and there's no obvious way to fix it. Is this a bug you could look into, or are we missing something?
      • Update application by uploading an updated DS file

        Is it possible? I have been working with AI on my desktop improving my application, and I have to keep copy pasting stuff... Would it be possible to import the DS file on top of an existing application to update the app accordingly?
      • Markdown support, code cells...

        Hi Zoho I'd like to vote for a feature that markdown is supported with: Headings Code highlighting Quoteblocks ... Furthermore a inline card(like inline sketch card) for special text like Code would be great. And just to add my vote as well for "Tags"!
      • Minimise chat when user navigates to new page

        When the user is in an active chat (chatbot) and is provide with an internal link, when they click the link to go to the internal page the chat opens again. This is not a good user experience. They have been sent the link to read what is on the page.
      • Zoho Projects app update: Voice notes for Tasks and Bugs module

        Hello everyone! In the latest version(v3.9.37) of the Zoho Projects Android app update, we have introduced voice notes for the Tasks and Bugs module. The voice notes can be added as an attachment or can be transcribed into text. Recording and attaching
      • zurl URL shortener Not working in Zoho social

        zurl URL shortener Not working in while creating a post in Zoho social
      • In the Zoho CRM Module I have TRN Field I should contain 15 digit Number , If it Contain less than 15 digit Then show Alert message on save of the button , If it not contain any number not want to sh

        Hi In the Zoho CRM Module I have TRN Field I should contain 15 digit Number , If it Contain less than 15 digit Then show Alert message on save of the button , If it not contain any number not want to show alert. How We can achive in Zoho CRm Using custom
      • Zoho Bookings know-how: A hands-on workshop series

        Hello! We’re conducting a hands-on workshop series to help simplify appointment scheduling for your business with Zoho Bookings. We’ll be covering various functionalities and showing how you can leverage them for your business across five different sessions.
      • Custom report

        Hello Everyone I hope everything is fine. I've tried to To change the layout of the reports, especially the summary page report, and I want to divide summary of each section in the survey but I can't For example: I have a survey containing five different
      • Zoho Journey - ZOHO MARKETING AUTOMATION

        I’ve encountered an issue while working with a journey in Zoho Marketing Automation. After creating the journey, I wanted to edit the "Match Criteria" settings. Unfortunately: The criteria section appears to be locked and not editable. I’m also unable
      • Custom Fields in PDF outputs

        I created a couple of custom fields. e.g Country of Origin and HS Tariff Code. I need these to appear on a clone of a sales order PDF template but on on the standard PDF template. When I select "appear on PDFs' it appears on both but when I don't select
      • How to create a Service Agreement with Quarterly Estimate

        Hello, I'm not sure if this has been asked before so please don't get mad at me for asking. We're an NDIS provider in Australia so we need to draft a Service Agreement for our client. With the recent changes in the NDIS we're now required to also include
      • Zoho Social - Post Footer Templates

        As a content creator I often want to include some information at the end of most posts. It would be great if there was an option to add pre-written footers, similar to the Hashtag Groups at the end of posts. For example, if there is an offer I'm running
      • Allow to pick color for project groups in Zoho Projects

        Hi Zoho Team, It would be really helpful if users could assign colors to project groups. This would make it easier to visually distinguish groups, improve navigation, and give a clearer overview when managing multiple projects. Thanks for considering
      • Zoho Books - Quotes to Sales Order Automation

        Hi Books team, In the Quote settings there is an option to convert a Quote to an Invoice upon acceptance, but there is not feature to convert a Quote to a Sales Order (see screenshot below) For users selling products through Zoho Inventory, the workflow
      • Can't find imported leads

        Hi There I have imported leads into the CRM via a .xls document, and the import is showing up as having been successful, however - when I try and locate the leads in the CRM system, I cannot find them.  1. There are no filters applied  2. They are not
      • Custom Button Disappearing in mobile view | Zoho CRM Canvas

        I'm working in Zoho CRM Canvas to create a custom view for our sales team. One of the features I'm adding is a custom button that opens the leads address in another tab. I've had no issue with this in the desktop view, but in the mobile view the button
      • The connected workflow is a great idea just needs Projects Integrations

        I just discovered the connected workflows in CRM and its a Great Idea i wish it was integrated with Zoho Projects I will explain our use case I am already trying to do something like connected workflow with zoho flow Our requirement was to Create a Task
      • Next Page