In this article, we will be going through how to set up a clickable image for the chatbot.
What is the clickable image? #
An image or an image area can be used as a link known as the clickable image.
In webchat, we can mark an area of the image to be linked to the chatbot content (similar to button/ quick reply feature)
Using images helps to visualize the conversation and draws attention and enhance the user experience.
Clickable Images can be used in various fields such as:
- Selection of body part- to indicate the area of the disorder.
- Clickable infographics – for the marketing purpose.
- Selection of area in the city to stay
How to setup clickable images in the chatbot? #
Step 1: Create an image map
An image map is an image with clickable areas. The areas are defined with one or more <area> tags.
Step 2: In the Keyreply Dashboard, save the image in the Files menu.
- Click the Files menu.
- Create a folder by clicking Folder icon in the right corner, input the folder name and save it.
- Once Folder is saved successfully, the system will display it with all other existing folders.
- Click the Folder
- To upload the image to the Folder, click the Upload icon, select the image from local drive, and confirm the upload.
Step 3: Create content node with image URL (using HTML format).
- Add Image source and usemap, which is created in Step-1, in the content node.
- Add Image link from the Files and add it as the image source.
- Add the “usemap” value starts with a hashtag # followed by the image map’s name; this is used to create a relationship between the image and the image map.
- You can use the content node ID as the image map name.
Below is the example:
<image src=”https://keyreplynhg.blob.core.windows.net/files/miniapp/NHG/priyanka_appointment/images/bodynew_2f375eb8-005a-447e-b944-aa93d0844ee9.png” usemap=”#image-map”>
Step 4: In the Embed Code of the Widget menu
Add the generated code for image map into the Embed code. And trigger the actions using the format. Map name should be same as usemap (as used in Step-3)
- To simulate a button press, use SEND_POSTBACK
- to simulate a text message, use SEND_MESSAGE
Below is the example:
- it is only applicable on webchat channel.
- Embed code needs to be manually saved and shared with other people. Your edits are only available to the user’s local browser. So, it is better to keep the generated imagemap code separately for project documentation.
- Once embed code is deployed to customer website, it is not so easy to change. Require customer’s IT team to make changes on the embed code.
- The image map coordinates are sensitive to the size of the image file displayed to the user and test it on different devices to ensure consistency.
Other alternative methods with responsive mapping: https://www.zaneray.com/responsive-image-map/
Custom SVG file with clickable zones. : https://jsfiddle.net/eLbpmsaj/