Before proceeding, ensure you have Sunshine conversation installed in Ultimate and available when you set up actions.
This guide shows how you can add SnapCall Flow or Clip into an existing Ultimate configuration, so that you can allow your customers to upload anything using our solution and then ensure the media will be available for agents while they review the ticket. Once you open your Ultimate configuration, the steps are the following.
Collect the conversation id from the chat
The first step is to obtain the conversation ID from the chat. You can do this by adding an action to one of the first step of the configuration (this will ensure us that the parameter is available within most of the flow built forward). If you have already collected this parameter in your flow, you can skip this step and move to the next.
β
Select any step, then click on the button 'Add/Edit action' from the right side of the screen, you will be shown a pop up menu with a blue button on the top right side of the screen. Click there to continue.
β
You will be asked now to define a few information in a pop up window, you can set them all up as shown below:
Set 'Target' as 'Sunshine conversation'
'Action' should be set as 'Get Conversation Metadata'
Define the 'Field to retrieve' as 'id'
On the field just next to it, 'Save as parameter', define this as 'conversation_id'
Click on the 'Apply' button
Add SnapCall to a webview
Now that you have the conversation_id of the chat, you can provide the end user with a button to record a video or another type of media. This will open a webview within the messaging widget, so that the overall experience will be seamless.
Back into your SnapCall account, ensure you have already a Flow configured, otherwise you can create one within the same page here. Once this is done, copy its unique link using the dedicated button in the page, then add the following formula at the end of the URL
?ticket=smooch_{{conversation_id}}
Now that you have the link, create a new action in a different step, using the instructions below:
Select a 'Bot message' step in the flow where you want to add a Webview, then click on the button 'Add/Edit action' from the right side of the screen, you will be shown a pop up menu with a blue button on the top right side of the screen. Click there to continue.
Define rest of the requested information as shown on the image below.
Message text, Fallback and Button text fields can be set up as you prefer, while the URI field needs to have the URL that you located earlier in your dedicated Public Page.
Wait for SnapCall to confirm the media receipt
When a client use the webview to submit a media, SnapCall adds a Free Text Written message on the chat as a confirmation that this is submitted. You can pause the configuration using this message, so that you will make sure to continue the Flow only when a media is actually uploaded by a client.
Within the Ultimate configuration, just after the step where you open the webview, add a Customer Message step
Ensure the type of output will be 'Free Text Written'
Collect SnapCall metadata
From the same Customer Message step, we can also collect all AI output that SnapCall generates by using the Ultimate metadata.
When a user upload a media with SnapCall, we will process the AI output and store them in the metadata of the conversation using the following format.
"conversation": {
"id": "66fd6f243c410d8c9e000d2a",
"type": "personal",
"brandId": "18130750166290",
"isDefault": true,
"businessLastRead": "2024-10-02T16:05:41.759Z",
"lastUpdatedAt": "2024-10-02T16:05:41.759Z",
"createdAt": "2024-10-02T16:04:52.492Z",
"metadata": {
"userId": "66fd6f243c410d8c9e000d21",
"origin_source_integration": "660ff11fe39567eab5704c85",
"snapcall_transcript": "Hello ?I've got an issue with my MacBook pro.The battery is not working anymore, and I can't use it, and i need to replace it.I want to know how I can perform that.Thanks for your",
"snapcall_summary": "Here's the English translation of your request:- **I have a problem** with my MacBook Pro.- **The battery no longer works**, and I can't use it.- **I need** to replace it.- I want to know how I can get it replaced.",
"snapcall_description": "The images show a desk setup with a closed laptop and a white keyboard in front. A red cable is placed on the laptop, and a screen displaying messaging applications is visible in the background." },
"activeSwitchboardIntegration": {
"id": "660ff7c37ab96e947259a045",
"name": "ultimate",
"integrationId": "660ff7a9e4a711b885b41692",
"integrationType": "ultimate"
}
}
}
You can see the summary and transcript as part of the SnapCall metadata, while the AI video output is included within the 'snapcall_description' variable.
To store any of these variable, then you will be asked to define a few information in a pop up window, you can set them all up as shown below:
Set 'Target' as 'Sunshine conversation'
'Action' should be set as 'Get Conversation Metadata'
Define the 'Field to retrieve' as '<Metadata>'
They 'Key' value depends on the variable you'd like to store. For example, if you would like to store the summary provided by SnapCall, define this as 'snapcall_summary'.
On the field just next to it, 'Save as parameter', define this as 'description'
Click on the 'Apply' button
You can repeat the same step for any other variable you'd like to store from SnapCall (such as 'snapcall_description' or 'snapcall_transcript')
You can now continue your configuration and use these variables like any other collected earlier or later within the flow.