Hide Zoho SalesIQ chat widget outside operating regions to optimize engagements

Hide Zoho SalesIQ chat widget outside operating regions to optimize engagements

Have you ever found yourself in a situation where you're receiving chat requests from locations where your business isn't operational? Having to set routing rules or manually delete chats from your logs can be tedious and time-consuming, hampering your day-to-day operations.

Wouldn't it be great if you could simply hide your chat widget and prevent visitors from non-operational locations from initiating chats?

You can achieve this by using the visitor.getGeoDetails() API, which allows you to hide the SalesIQ chat widget based on location.

You can add all the mentioned code after the Zoho SalesIQ widget code or above the </body> tag in your website's source code. 

Let's take a look at the code snippet below:

<script>
$zoho.salesiq.ready = function(embedinfo) {
    $zoho.salesiq.floatbutton.visible("hide");
    $zoho.salesiq.visitor.getGeoDetails();
}
$zoho.salesiq.afterReady = function(info) {
    if (info.Country == "AUSTRALIA") {
        $zoho.salesiq.floatbutton.visible("show");
    }
}
</script>


The above code is used to hide your SalesIQ chat widget for visitors in all countries except Australia.

If you want to hide the chat widget for only a particular country, use the code below:

<script>
$zoho.salesiq.ready = function(embedinfo) {
    $zoho.salesiq.floatbutton.visible("show");
    $zoho.salesiq.visitor.getGeoDetails();
}
$zoho.salesiq.afterReady = function(info) {
    if (info.Country == "CHINA") {
        $zoho.salesiq.floatbutton.visible("hide");
    }
}
</script>


The above code is used to hide your SalesIQ chat widget for visitors in China. Likewise, you can replace the country name to hide the chat widget for the following country.

How do I hide widgets in multiple locations?  

<script>
$zoho.salesiq.ready = function(embedinfo) {
    $zoho.salesiq.floatbutton.visible("show");
    $zoho.salesiq.visitor.getGeoDetails();
}
$zoho.salesiq.afterReady = function(info) {
    if (info.Country == "CANADA"|| info.Country=="INDIA") {
        $zoho.salesiq.floatbutton.visible("hide");
    }
}
</script>


Note: The country name should be in all caps. Ex: INDIA

Tip 2: How do I increase chat wait time?  

In certain business conditions, there may be only a few operators available, making it difficult for them to respond within the maximum configurable time of 2 minutes allowed in the SalesIQ app.
For such cases, you can use the chat wait time API to set additional wait time as per your business requirements. 

Refer to the .chat.waittime() API documentation for more details.

Did you find this post helpful? Would you like to see more posts like this in the future? Please let us know in the comments below, and feel free to ask any questions you may have! We're here to help.