How to connect WhatsApp with a human-agent service

Use the multichannel feature to communicate with WhatsApp users in real-time. Build a journey using Quickwork, integrate Conversation Management and WhatsApp, and start the conversation at ease.

Conversation Management is powered to interact with customers via various messaging platforms such as WhatsApp, LINE, Facebook Messenger, etc. in integration with Quickwork Journey Builder. The Multichannel feature allows admins and agents to communicate with customers available on any of the above-mentioned messaging platforms and enables them to view all the conversations in real-time on a single dashboard. Messages received through different channels get highlighted with respective channel identifiers. Looking at this, it becomes easy for an agent to identify the point of origin of the customer and what the nature of communication will be. This helps to broaden the customer’s reach by not just getting confined to the website portal.

Communicating with customers on their choice of messaging platforms imposes a good sign of future relations instead of begging the customer to move to a confined chat window for any purpose.

To understand multichannel more in detail, let's take a use case and build a journey that explains the functionality more precisely.

Use case

Communicate with a WhatsApp user and make him/her understand the product functioning using Conversation Management as a messaging platform.

To implement this use-case, we need to build two journeys with the following two adaptors which will execute in synchronization for the flow of messages in real-time:

  1. Conversation Management by Quickwork

  2. WhatsApp by Gupshup

Prerequisite

According to the use case, the user should have an active Whatsapp Business account with access to Whatsapp Business API. The user can then integrate these platforms with Conversation Management using Quickwork. Here in the example, we'll be using WhatsApp by Gupshup APIs to integrate and communicate. Before integration, a user must have an app registered in his/her Gupshup account. Follow these steps to do so:

  1. Log in to WhatsApp by Gupshup account using Google sign-in. Note: The same WhatsApp by Gupshup account to be used for authorization while configuring the journey in Quickwork.

  2. You'll be redirected to the WhatsApp dashboard.

  3. Click the blue-colored + icon to create a new WhatsApp Messaging App. Then click the Access API button.

  4. Enter the name for the Whatsapp app you are creating, say ConversationManagementMultiChannel. The user will interact with this bot on WhatsApp in the execution phase:

5. Click the Submit button. You'll be driven through a couple of steps that give an overview of the app created. Simply click on the Next button. Your app has now been created successfully. You can check the phone number allotted to you in the Send messages to desired recipients section.

Gupshup provides a sandbox environment supporting WhatsApp APIs with a static phone number using which testing of an app and configuring a journey could be done easily.

Creating an inbox

Go to Conversation Management and create a multichannel inbox named Whatsapp communication. To do this, click on the gear icon (Settings) > Inbox Settings > click the Add New Inbox button > and select the Multichannel option:

Enter the name for the inbox as WhatsApp communication and click Continue. Add any agents if you want and proceed further. Your inbox is ready. Now to monitor the conversations belonging to this specific inbox, click the Conversations icon and select WhatsApp communication. You'll be redirected to its conversation dashboard which is blank as of now:

Creating the first multichannel journey

Let's create a journey that will fetch a new message from a WhatsApp user and forward it to a Conversation Management agent

Configuring the trigger

  1. Create a new journey named New message from WhatsApp user.

  2. Under the Event section, choose the WhatsApp by Gupshup app from the drop-down menu in the Apps field present right below the New Trigger button.

  3. Select the trigger event, New text message, from the drop-down menu in the Triggers field.

  4. For authorizing and connecting your WhatsApp by GupShup account, select an existing connection from the drop-down or create a new connection. Click here to know how to create a new connection. While creating a new connection, a Connect to WhatsApp by Gupshup dialog box will appear. Fill all the required fields carefully as shown below:

5. The input fields will open up automatically after a successful connection. In the Message field, enter the welcome message for the user. E.g., Hello, welcome to Conversation Management multichannel service. How may I help you? and select Yes as an input to Send Welcome Message:

6. As soon as you do this, Journey Builder will return a Callback Webhook URL as shown in the following figure. You need to paste this URL to listen for incoming messages from WhatsApp user:

7. Copy this URL, go to your app created in Gupshup, click the ConversationManagementMultichannel app, and search for the Callback URL / Link your Bot section. Now, toggle ON to enable the Enter your Callback URL field, paste the above callback URL, and click Set:

8. Your successfully configured trigger will look like this:

Configuring the action

To do this, follow these steps:

  1. Under the Steps section, click the SImple Action button.

  2. Choose the Conversation Management by Quickwork app from the Apps drop-down menu field.

  3. Select the Forward message to agent action in the Actions field.

  4. Connect the WhatsApp communication inbox to establish the connection. Click the Link an account button and specify the API key and Inbox ID of this inbox. You'll get these in the Toolkits window of the WhatsApp communication inbox. Click the Link account button:

The API key is common for all the inboxes of an account whereas Inbox ID is unique for each inbox.

5. The input fields will open up automatically after successful connection establishment. Drag the Sender ID and Text data pills from the Data Tree Output and drop it in the Multichannel identifier and Message fields, respectively. Select WhatsApp as the Multichannel type from the drop-down given. Your action should now look as below:

6. The journey is now successfully configured. Click the Save changes button and start the execution by clicking the Save & Start button.

Creating the second multichannel journey

Let's configure the second journey that will allow an agent to reply to user's queries on WhatsApp via the Conversation Management portal.

Configuring the trigger

To do so, follow these steps:

  1. Create a new journey named Reply from QC agent to the WhatsApp user.

  2. Under the Event section, choose the Conversation Management by Quickwork app from the drop-down menu in the Apps field present right below the New Trigger button.

  3. Select the trigger event, New agent message, from the drop-down menu present in the Triggers field.

  4. From the drop-down menu of selecting the existing connection, use the same connection that you had created in the previous journey with the inbox named Whatsapp Communication.

  5. In the Event field, mention Message from an agent. The journey builder will return a webhook URL as shown in the following figure:

6. Now, copy this URL and go to the WhatsApp communication inbox in your Conversation Management account. Then, go to the Webhook tab of the inbox and paste this webhook URL in the Agent Response Webhook field:

7. Click the Save Changes button. 8. The successfully configured trigger will look like this:

Configuring the action

To do this, follow these steps:

  1. Under the Steps section, click on the Simple Action button and choose the WhatsApp by Gupshup app from the drop-down menu in the Apps field.

  2. Select the action, Send message, from the drop-down menu in the Actions field.

  3. From the drop-down menu, select the existing connection and connect the same WhatsApp by Gupshup account as we had done for the previous journey:

  4. In the Message and Phone number field, pass the Content and MultiChannel Identifier key from the Data Tree Output, respectively:

6. The journey is now successfully configured. Click the Save changes button and start the execution by clicking the Save & Start button.

Activating the app on WhatsApp

Go to your WhatsApp by Gupshup account, click the ConversationManagementMultiChannel, and scroll down to the Smart mechanisms to get active and opted in users section. Go to the Click URL option and copy the URL:

Paste it into the new tab to open it. The web version of WhatsApp will open with the pre-defined command PROXY ConversationManagementMultiChannel in the text field. Click the Continue to Chat button:

Click the Use Web version option. If you haven't linked the web version of WhatsApp, you'll be asked to do so.

Send the command PROXY ConversationManagementMultiChannel to the WhatsApp by Gupshup chat account. You'll receive the welcome message confirming that the app is now connected successfully:

Executing the multichannel functionality

Now let’s send a Hi and check if the agent receives the message on the dashboard or not.

Now to check whether the agent has received the message or not. Let’s get back to the Conversation Management dashboard. Click on the Conversation icon on the left-hand side and select the inbox named Whatsapp Communication. Now in the filters drop-down which is located exactly beside the inbox name, select the Mine and Resolved filters:

Now, the agent can start sending responses to the user's message from this portal and a user can follow up with the agent directly on Whatsapp:

The agent's response gets automatically synced on WhatsApp as per the execution of the journey and the user gets a response for the concern raised. This can be clearly seen in the following screenshot:

Hence, this is how a human agent can connect with a user on WhatsApp with the help of Conversation Management and Quickwork. The same functionality can also be used to achieve the goal of connecting with customers on messaging platforms like Facebook, Line, etc., the only condition being that the steps for creating a connection with the respective platform and the input fields for sending messages will differ.

Last updated