The WhatsApp integration implements a standardized feedback flow which allows you to ask for feedback at specific points in the conversation, while still providing a consistent conversational user experience.
Prerequisites
The feedback flow requires the following content to be present in the project's culture:
showFeedback addition, boolean value
feedbackScore addition, integer value
show_feedback event, should trigger a (feedback) dialog
Conversational Flow
The feedback flow will work as follows:
The feedback flow is triggered whenever an answer contains the output addition showFeedback with a value of true
The show_feedback event will be triggered by Conversational AI Cloud (this is expected to trigger a dialog)
The user steps through the dialog, where options can be presented to the end-user to determine their experience and feedback score
When a dialog end node is reached:
The feedback flow is considered finished
The last input from the end-user in the dialog will be sent as the feedback label
The final node should also contain the feedbackScore out addition
The value of the feedbackScore addition is sent in as the score of the feedback
If the feedback dialog flow is interrupted (because a different piece of content is triggered by the end-user):
If one of the nodes in the dialog contained the feedbackScore value; and, this node was selected by the end-user
The last feedbackScore received will be sent in as the score of the feedback
The last input from the end-user for the node that contained the feedbackScore will be sent in as the feedback label
A few things to keep in mind when working with WhatsApp's standardized feedback flow:
If the showFeedback addition is present in the middle of a dialog (i.e. not a dialog end node) or transactional dialog (i.e. not a transactional dialog end slot) then it will be ignored to maintain the conversational flow.
If a return event is set on a transactional dialog node, or if the output addition livechat with a value of true is set on an answer, then the showFeedback addition will be ignored, as both livechat escalation or return events take precedence.