park-interaction
Feature summary​
This feature adds a pause/park button to messaging conversations so that while waiting for a response, an agent can be freed up for new work, while also maintaining conversation history. Next time the customer writes a message, if the conversation was parked, it will route through the workflow again for worker assignment, and the history of the conversation will be present when a worker accepts the task.
Furthermore, you have the option to enable the 'Parked Interactions' list, which empowers agents to access and manage parked conversations, with a specific focus on Web Chat and WhatsApp. This list allows agents to efficiently unpark conversations directly from their interface. Details here.
ConnieRTC User Experience​
Additional Parked Interactions list
Setup and dependencies​
To enable the parking feature, under your flex-config
attributes set the park_interaction
enabled
flag to true
. To enable the recent interaction view, set the show_list
to true
.
"park_interaction": {
"enabled": true,
"show_list": true
}
You may need a different use case then what this plugin does today. For example, currently when the customer writes a message, the task is routed to same workflow as the originally parked task. If you instead need to route back to a specific agent or queue, you can adjust your TaskRouter workflow to use the included originalRouting.queueName
,originalRouting.queueSid
, and/or originalRouting.workerSid
task attributes, or you could modify the unpark-interaction
serverless function to route directly using the queue and worker SIDs (details for this example here). Alternatively, if you wish to route the interaction through a Studio flow when the customer replies, you could change the webhook URL in the park-interaction
serverless function to a Studio flow webhook URL.
How does it work?​
This feature is based in the instructions given on our doc on how to Park an Interaction. In the legacy ConnieRTC this functionality was known as "long-lived channels".
Parked Interactions List details​
- This feature leverages Sync MapItems to store the state of recently parked interactions
- Non-SMS interactions are stored with a time-to-live (TTL) of 24 hours due to restrictions imposed by third-party platforms
- Attempting to unpark a closed or failed conversation will result in an error
- While unparking an interaction, the associated Sync MapItem is deleted, for both scenarios (customer or worker-initiated). The
unpark-interaction
serverless function checks if the conversation hasmapSid
andmapItemKey
attributes, which are only added when it's being parked and theshow_list
option is enabled - If the unparking is worker-initiated from the list,
queue_id
andworder_sid
attributes are added to the request, so the interaction is routed directly to the worker. Otherwise, if customer-initiated, these are not added