The Slash Command Series - Build a command to create polls!

The Slash Command Series - Build a command to create polls!

Your team has decided to go for lunch and you're in charge of the menu. But before you decide on the menu, it's important to know their preferences. For instance, what if somebody is vegan and you haven't taken that into account!

Now now, we know hard it is to arrange the menu for a small group of 4, let alone for 50.   How can Cliq help this situation you may ask? Ah, simple. Create a poll using Cliq's slash commands!

With /poll command you can just post a message in channel, ask everybody to vote and get the list. The /poll command  helps you collect data, interpret, analyze and make a decision. Let's take a look at the command workflow, it's pretty easy. :D  

Command Workflow  

The command syntax would be   /poll -topic" " - optn " " 

The user would have to just specify the question (topic) and options in the command syntax and execute the command in a chat window. A poll message card is posted with the question and the options as buttons. Now, to wait for everybody to take their pick! 

The poll question and the options are stored as records in Zoho Creator and when an option is chosen, the selection made is also stored as a record.

To put it in a nutshell, this command is a classic example of multiple workflows and integration with other Zoho Products ( i.e Zoho Creator) 

Now there are four parts to the command execution- three in Cliq and one in Creator. Breaking down the command creation and execution  

Store the questions and results - Creator Application 

  • Create an application in Zoho Creator - Refer this  How to create an application help page in Zoho Creator. 
  • Create two forms - for Poll Questions and one for the Poll Results with the necessary fields. 
  • Use the zoho.creator.createRecord task and zoho.creator.getRecord task in your command and function execution code to create and get records from Creator.  Refer this  help page  

Sample Syntax for the create record task :

 

zoho.creator.createRecord("ownerName","appLinkName","formLinkName",dataMap,"connectionLinkNam", userAccess )

 

Get the owner name, appLinkName and formLinkName from the creator application URL. 

 

URL Format:  https://app.zohocreator.com/ownerName/appLinkName#formLinkName

 

Sample URL:  https://app.zohocreator.com/scottfisher5/poll-command#Questions

 

Note: We've attached a sample Poll application file for you. Download and import this file in your creator account to get an idea of the Poll application. 

Connect to the storage - Cliq Connections (authenticated)

Connections are used to integrate your application with other Zoho Applications or Third Party Web Services in an authenticated manner. 

Create a connection to invoke operations on the Creator Application from Cliq, using Cliq Platform. Use the connectionLinkName and define the userAccess parameter in the creator deluge tasks. 

Share the poll with  a group - Cliq commands 

Create a poll command and specify the command parameters. Command parameters will help fetch the question and the options given by the user in the poll. 

The command execution code is attached here. Copy the code in your deluge editor and try executing the command!


  1. message = Map();
  2. card = Map();
  3. card.put("theme","poll");
  4. b = options.get("Topic");
  5. a = options.get("Optn");
  6. buttonnames = a.toList(",");
  7. info buttonnames.size();
  8. card.put("title","POLL");
  9. message.put("text",b);
  10. dataMap = {"Question":options.get("Topic"),"Answers":options.get("Optn"),"Creator":user.get("email")};
  11. respFromCreator = zoho.creator.createRecord("ownerName","appLinkName","formLinkName",dataMap," connectionLinkName ",  
  12. userAccess );
  13. creatorId = respFromCreator.get("values").get("ID");
  14. buttons = List();
  15. for each  name in buttonnames
  16. {
  17. button = {"label":name,"hint":"Choose an option.","type":"+","action":{"type":"invoke.function","data":{"name":"FunctionName","owner":"yourname@yourdomain.com"}},"key":creatorId};
  18. buttons.add(button);
  19. }
  20. info buttons;
  21. if(buttons.size() > 0)
  22. {
  23. button = {"label":"View Result","hint":"Select an option.","type":"+","action":{"type":"invoke.function","data":{"name":"FunctionName","owner":"yourname@yourdomain.com"}},"key":creatorId};
  24. buttons.add(button);
  25. }
  26. info creatorId;
  27. card.put("thumbnail","<insert_image_url>");
  28. message.put("card",card);
  29. message.put("buttons",buttons);
  30. message.put("card",card);
  31. //aa = zoho.cliq.postToChat(chat.get("id"),message);
  32. info message;
  33. return message;

Variables used in the code

Line no 12: You'll find these in your creator application URL

Line no 18 & 24: Give your function name and email ID.

Poll Votes and Results - Cliq Buttons and Functions

  Functions work in association with buttons. Our aim for the function here should be  

  • To allow users to select an answer and store the selection in Creator.
  • To get the list of all answers for the poll when a user clicks the 'View Result' button.
  • To restrict users from answering a poll more than once. 

When a user clicks the 'View Result' option, the function will get records from Creator to display the total number of responses received for the poll. (u se the button name as the criteria for this)

Likewise, when a user tries responding to the poll twice, use the parameter 'Key' to identify if the user has already responded. If yes, then go ahead and show an error message. If no, take the user's response to the poll. 

That sure was a lengthy read. Well, have a look at this video for better understanding! 

So what are you waiting for? Go on and create a poll! Let us know how this command helps you and your team. 

If you're new here, welcome! Take a look at our slash command guide . You can also learn how to connect to accuweather.com and get weather forecast right inside your chat window. Cool right? Then, check this out !

Questions and discussions are welcome!

Until next time,

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

      • Items Landed Cost and Profit?

        Hello, we recently went live with Zoho Inventory, and I have a question about the Landed Cost feature. The FAQ reads: "Tracking the landed cost helps determine the overall cost incurred in procuring the product. This, in turn, helps you to decide the
      • CC and/or BCC users in email templates

        I would like the ability to automatically assign a CC and BCC "User (company employee)" into email templates. Specifically, I would like to be able to add the "User who owns the client" as a CC automatically on any interview scheduled or candidate submitted
      • Create Contract API Endpoint Unclear "inputfields" Requirements

        Hello, I'm trying to create a Deluge function that accepts inputs from a form in Zoho Creator and creates a barebones contract of a given type. See below for the current code, cleaned of authentication information. // Fetch form data // Hidden field client_name
      • Kaizen #46 - Handling Notes through Zoho CRM API (Part 1/2)

        Hello everyone! Welcome back to another week of Kaizen! This week, we will discuss Handling Notes through Zoho CRM API. What will you learn from this post? Notes in Zoho CRM Working with Notes through Notes APIs 1. Notes in Zoho CRM 1a. Why add Notes to records? Notes are a great way to summarize your observations on customer and prospect interactions and outcomes. By saving notes as CRM data, a sales rep will always be able to keep track of how a sale is progressing. To know more about notes in
      • Marketer's Space - Why email marketing matters in ecommerce (and how to get started with Zoho Campaigns)

        Hello Marketers, Welcome to this week's Marketer's space post. Today, we'll discus why email marketing matters in ecommerce businesses. Running an online store is exciting but challenging. If you're running an online store, you've probably experienced
      • Zoho Campaigns Event timestamps do not propagate to Zoho CRM

        We have integrated Zoho CRM and Zoho Campaigns. But when looking at Contact records, the Campaign event data is missing the actual timestamps: especially when a particular email was sent. They're not in the Campaigns related list, and the cannot be found
      • Kaizen #121 : Customize List Views using Client Script

        Hello everyone! Welcome back to another interesting Kaizen post. In this post, we can discuss how to customize List Views using Client Script. This post will answer the questions Ability to remove public views by the super admin in the Zoho CRM and Is
      • Setting default From address when replying to request

        At the moment, if I want to reply to a request, the From field has three options, company@zohosupport.com, support@company.zohosupport.com, and support@company.com.  The first two are really internal address that should never be seen by the customer and
      • Tip #45 - Explore Your Support Reach with Zoho Assist’s Geo Insights - 'Insider Insights'

        Understanding where your remote support sessions are happening can help you make smarter decisions, allocate resources effectively, and improve overall customer satisfaction. In this week's Zoho Assist's community post we will be exploring Geo Insights
      • Formatting of text pasted into Zoho documents

        Howdy, I'm a newbie and finding Zoho an improvement to MS Word. Consider yourself hugged. High on my wish list would be plain text cut-and-paste. When pasting text from the web to Zoho, presently Zoho imports the formatting along with the text. This means that every cut-and-paste operation brings in text in a different font, size, or style. Can we have at least the option of importing plain text without formatting (or better yet, is this option already out there?) ... Thanks Helen
      • Add additional features to Zoho Tables

        Zoho Tables is a really great tool, why not add features like diagramming capability into the tool from applications like Draw.io which I believe is open source, you should be able to do wireframes, process flow diagrams, network design, etc. Please note
      • The Social Wall: August 2025

        Hello everyone, As summer ends, Zoho Social is gearing up for some exciting, bigger updates lined up for the months ahead. While those are in the works, we rolled out a few handy feature updates in August to keep your social media management running smoothly.
      • The Social Wall: July 2025

        Hello everyone! July has brought some exciting new updates to Zoho Social. From powerful enhancements in the Social Toolkit to new capabilities in the mobile app, we’ve packed this month with features designed to help you level up your social media presence.
      • Use Zoho Creator as a source for merge templates in Zoho Writer

        Hello all! We're excited to share that we've enhanced Zoho Creator's integration with Zoho Writer to make this combination even more powerful. You can now use Zoho Creator as a data source for mail merge templates in Zoho Writer. Making more data from
      • Tagged problem !!!

        Damn it, we're one of dozens of construction companies in Africa, but we can't link purchasing invoices to projects. Why isn't this feature available?
      • Syntax for URLs in HTML Snippets

        What are some best practices for inserting a URL in an HTML snippet? I've looked at Zoho Help articles on navigation-based and functional-based URLs, but I'm still unclear on how to incorporate them in an HTML snippet. For example, 1. How do I link to
      • The Social Wall: June 2025

        Hello everyone, We’re back with June Zoho Social highlights. This month brought some exciting feature updates—especially within the Social Toolkit—to enhance your social media presence. We engaged with several MSME companies through community meet-ups
      • Make panel configuration interface wider

        Hi there, The same way you changed the custom function editor's interface wider, it would be nice to be able to edit panels in pages using the full width of the screen rather than the currently max-width: 1368px. Is there a reason for having the configuration panel not taking the full width? Its impossible at this width to edit panels that have a lot of elements. Please change it to 100% so we can better edit the layouts. Thanks! B.
      • Tip 7: How to fetch data from another application?

        Hi everyone, Following our Zoho Creator - Tips and Tricks series every fortnight, we are back today with a tip based on one of the most popular questions asked in our forum. This tip would help you fetch data from another application(App B) and use it
      • The Social Wall: May 2025

        Hey everyone, We're excited to share some powerful updates for the month of May! Let's take a look! Reply to your Instagram and Facebook comments privately through direct messages Are you tired of cluttered comment threads or exposing customer queries
      • Sub-Form Fields as Filters for Reports

        Hi, I would like to use the Sub-Form Fields as Filters in Reports just like we do for Main Page Fields. Thanks Dan
      • Zoho CRM Formula - Current Time minus Date/Time field

        Hello, I am trying to prevent duplicate emails going to clients when more than 1 deal is being updated. To do this, I would like to create a formula to identify if a date/time field is >= 2 hours ago. Can someone please help me write this formula? Example:
      • Billing Management: #7 Usage Billing in Telecom & Internet Service Provider

        Telecom and Internet Service Providers operate in markets where usage varies drastically from one customer to another. While flexible, usage-based models align revenue directly with consumption, they also introduce operational challenges like real-time
      • Zoho Sprints - Q3 updates for 2025

        The updates for the third quarter of 2025 are out. A few significant features and enhancements have been rolled out to improve user experience and product capabilities. The following are the updates: Manage tags and cluster tags Record and maintain project
      • Kaizen #208 - Answering your Questions | Functions, AI and Extensions

        Hello Developers! Welcome back to a fresh week of Kaizen! We are grateful for your active participation in sharing feedback and queries for our 200th milestone. This week, we will answer the queries related to Functions and Extensions in Zoho CRM. 1.
      • Zoho CRM still doesn't let you manage timezones (yearly reminder)

        This is something I have asked repeatedly. I'll ask once again. Suppose that you work in France. Next month you have a trip to Guatemala. You call a contact there, close a meeting, record that meeting in CRM. On the phone, your contact said: "meet me
      • Creating Restaurant Inventory Management on Zoho

        Hi,  We run a small cloud kitchen and are interested to use Zoho for Inventory and Composite Item tracking for our food served and supplied procured to make food items.  Our model is basically like subway where the customer can choose breads, veggies,
      • To Zoho customers and partners: how do you use Linked Workspaces?

        Hello, I'm exploring how we can set up and use Linked Workspaces and would like to hear from customers and partners about your use cases and experience with them. I have a Zoho ticket open, because my workspace creation fails. In the meantime, how is
      • Zoho Forms to Zoho CRM : First/Last Name to just Name ?

        When integrating a Zoho Form into the Accounts menu of the CRM I'm having trouble with how names are formatted ; In Forms the data is available as First Name or Last Name In the CRM there is only one field called Name How can I ensure that "John" "Smith"
      • This festive season, offer discounts with coupon code support in Stripe Checkout

        Hello form builders! It’s the festive season, the perfect time to spread joy and great deals! Now, with Zoho Forms’ latest enhancement for Stripe Checkout, you can do exactly that with coupon codes! Your payment forms integrated with Stripe Checkout can
      • Cómo creo una factura negativa o de abono?

        NEcesito anular una factura y crear una nueva igual pero en negativo. El sistema no me lo permite
      • Power of Automation::Streamline log hours to work hours upon task completion.

        Hello Everyone, A Custom Function is a user-written set of code to achieve a specific requirement. Set the required conditions needed as to when to trigger using the Workflow rules (be it Tasks / Project) and associate the custom function to it. Requirement:-
      • CRM : Function to add user name to text field

        I have a lookup field in a module that is linked to the CRM users so we can assign a Project Lead to the customer. Sadly Zoho Marketing Automation doesn't sync Lookup fields so I need to extract information from the lookup to text fields: Lookup field
      • Zoho CRM - Restrict Login based on work hours

        Hi there, I'm wondering if we can restrict users to login during works - For example the users would be able to login from 8am to 5pm. I have seen the IP address restriction - the only downfall is what if the customer has dynamic IP. thanks Jiri
      • Tips and Tricks #46: Customize themes and templates using Show's Master View

        Hi All!  Let's say you want to revamp your presentation and make changes to its visual design. You can do this easily using the Master Slide and its associated layouts. The Master Slide stores information about all the layouts used in the presentation.
      • Sheet View in CRM portal

        Hi, When will it be possible for my CRM portal users to edit/add records with Sheet View? George
      • What's New in Zoho Invoice | July - September 2025

        Hello everyone! We’re back with the latest updates and enhancements we’ve rolled out in Zoho Invoice from July to September 2025. Here’s what’s new this quarter: Introducing the Singapore Edition in Zoho Invoice Share Invoices through WhatsApp GST 2.0
      • Alert: Audio Call Support to be discontinued for Old Live Chat Widget from December 31, 2025

        Action Required: Upgrade to the New SalesIQ Live Chat Widget We're reaching out with an important update regarding the SalesIQ Live Chat Widget that requires your immediate attention. Effective December 31, 2025, audio call functionality will no longer
      • multiple contacts for one account

        We currently use Zoho CRM where each Account represents a club or organization, and each Contact represents a manager or owner. However, some of our managers own or manage multiple clubs, and Zoho only allows a contact to be linked to one account at a
      • Rich text Merge field - Not using font specified in HTML

        I have a rich text merge field in a writer template which is creating a table. I have chosen to use this method instead of a repeat region because I need to specify specific cell background colours which change every time the document is created. The
      • Next Page