When a customer or site visitor clicks on your Freshchat messenger, they'll first see Topics. Think of Topics as an IVR for chat conversations. You can auto-route incoming messages from these Topics to different Groups (teams) or Bots in Freshchat. 


For example, if you're a SaaS company, you will have different teams for Support, Feedback, and Billing, for which you can create Groups in Freshchat. You can create Topics for each of these subjects and map them to the respective teams, such as a Topic called 'Customer Support,' mapped to your Support group so that when new messages come in on these Topics, they get auto-assigned to the corresponding groups.



You can also add a relevant welcome text to these Topics to set the right context and let your users know what they can reach out to you about on a specific Topic. This will also enable your team members to understand intent right when a message comes in. 


How to set up Topics

  • Go to Admin Settings > Web Chat Topics > + Topic



  • You can name your Topic, add an image and a relevant welcome text, and select the group (team) to which any incoming messages on this Topic must be routed



  • You can also trigger your chatbots to show up on a Topic
  • You can choose to trigger it inside or outside your Business Hours
    • For example, you can create a chatbot for support and launch it on your Customer Support Topic.



What are Response Expectations for Topics

You can let your users know how long they have to wait to get a response from your team. You can let Freshchat calculate this based on your team's response time (Account Settings > Chat Widget Settings > Response Expectations). Or you can add a custom message of your choice. 

For example, you can say 'Typically replies within 30 seconds", or something like 'We're on top of this.'




Note: Your custom message will be displayed only within the Business Hours you have set up for the Topic in Freshchat . Outside of this, the value calculated by Freshchat will be displayed.


Topic visibility

If you select 'Public,' the Topic will go live immediately, and all your users can see it on all your pages on your website or app. If you select 'Private,' the Topic will be locked and won't be visible to your customers. The 'Private' option will come in handy if you want to save a Topic as a draft or work on translating Topics into other languages before making it live.



What are tags

In Freshchat, you can turn Topics on or off on the different pages of your website/app and for different users such as visitors or customers who are logged in.



You can do this using tags. Let's say you have a Topic called 'Pricing Enquiry,' and you want this to appear only on your pricing page and not on your home page. All you have to do is uncheck the 'Set as public' checkbox and add a tag, say 'pricing,' to this Topic, and then use this tag in your Freshchat code on your pricing page. 


You can make the relevant Topics appear either when the widget loads or when a user switches from one page to another on your website/app.


Note: Navigate to Admin > Admin Settings > CRM Tracking Code > Integrate your website > Copy to get the widget code



If the tags are set when the init is set, relevant channels will appear when the widget loads.

<script>
window.fcWidgetMessengerConfig = {
tags: ["public", "paid"],
externalId: <externalId>
}
</script>
<script src='//fw-cdn.com/1*****7/2*****4.js' chat='true'></script>

Set Tags during page transition:

The tags can also be set later for specific web pages using Set Tags (only the latest selection will be updated for the channel list). For example, if a user is on the 'Payments' page, these tags will only show payment-related channels on Web Messenger. If he's switching to the 'Deliveries' page, Set Tags help show channels relating to deliveries during the transition. Once Set Tags are called, the channel list will immediately be updated.


<script>
window.fcWidgetMessengerConfig = {
externalId: "john.doe1987", // user's id unique to your system
restoreId: "RESTORE_ID", // restore id obtained
}
</script>
<script src='//fw-cdn.com/1*****7/2*****4.js' chat='true'></script>

<script>
window.fcWidget.setTags(tags); // For ex: ["public", "paid"]
</script>


Note: Make sure you use the tags you define for a Topic on the corresponding webpage’s code.


Some examples

For your VIP customers, you can have a separate Topic called 'Priority Support' for your VIP customers.



You can create ad-hoc Topics for temporary concerns or announcements like server downtime, scheduled maintenance, or webinar registrations.



You can translate Topics into other languages and support your customers in their native language.