Custom Integration - HelpDesk Tools May 11, 2023 20:24 Updated Index: Context Prerequisites Macro view Solution Context Currently, Blip is connected to 2 human service tools: Blip Desk (native tool of the platform) and LiveAgent from Salesforce. However, anyone can build custom integrations with other tools. This document explains the steps to be followed to accomplish this task. Note: To simplify the text, understand that customized human service tool (or simply, customized tool), always refers to the tool that you want to integrate with Blip. Some examples of this type of tool: Zendesk, Service Now, Intercom, Omnize and etc. Prerequisites The solution described in this document assumes that the company that wants to perform the integration has at least 3 bots in Blip. Bot Router (Smart company contact) - Bot responsible for receiving and sending messages to customers. Subbot 1 (Main Bot) - Subbot created in Builder (or via SDK / HTTP), responsible for automating the conversation. This subbot is also responsible for defining the moment when the customer will be served by a human being. Subbot 2 (Human Service Bot) - Subbot created via SDK (or HTTP), responsible for the connection between Blip and the customized human service tool. To learn how to create a subbot via SDK (or HTTP) click on this link. Macro view This solution provides that all customers, when starting a conversation with the bot router, will be sent to Subbot 1 (Main Bot) to perform an automated service. If necessary, at some point Subbot 1 will redirect a given customer to human service. After redirecting, Subbot 2 starts the process of sending (and receiving) messages to the customized human service tool. This process consists of converting JSON objects in LIME format (understood by Blip) to objects in the format supported by the customized tool. Solution Once we understand what needs to be done, let's go to the steps that must be followed to solve the problem. Redirecting the client from Subbot 1 (Main Bot) to Subbot 2 A. In Subbot 1, create a content block that represents the moment of the conversation when the user will be sent for human assistance. In the Contents tab, remove all content. B. In the Actions tab, create an input action such as Redirect to a Service and enter the name of the service associated with Subbot2. Note that this is the name chosen when defining the subbots that make up the Bot Router. Sending messages to the customized human service tool. A. Access the code built to run Subbot 2 and make sure that all messages received are properly sent to the customized tool. For more details and examples of how to receive messages in an SDK (or HTTP) bot access the Blip documentation. Comments: Use the FROM property of incoming message envelopes to identify the customer who is requesting human assistance. Remember to store the status of customers who are already in service. You will probably need to map the customer ID in Blip with the customer ID in the custom tool. Receiving messages from the customized human service tool and sending them back to customers A. Each tool works in a specific way. Check the documentation of the tool you want to perform the integration and understand what the process is for receiving the responses sent by the attendant during a human service. B. Once the message is received it is time to place it in the standard of the messages accepted by Blip (click here to analyze all types of supported content) and send them back to customers. To find out more details and see examples of how to send messages in an SDK (or HTTP) bot access the Blip documentation. Note: Use the TO property of the message envelopes that will be sent to identify the customer who will receive the response from the attendant. Remember that the customer's identifier is in the FROM property of the messages received in step 2. Finishing customer service. A. At some point, human attendance will be completed by the attendant. At this time, it is the responsibility of Subbot 2 to redirect the client back to Subbot 1. Each tool has a specific way of signaling the end of an appointment. When you receive the signal that a service has been completed, it will be necessary to send a message of the type Redirect, defining which service will be responsible for treating the customer from that moment. For more information and examples of how to send Redirect content click here. For more information, visit the discussion on the subject in our community or the videos on our channel. 😃 Related articles Setting up chat support in Salesforce Submitting data for analysis through Webhooks FAQ - Integrations How to connect to a personalized service channel How to Create Custom Reports