10.0: Capture customer feedback with worker interactions and custom records #7
jstanden
started this conversation in
Guides and Tutorials
Replies: 1 comment 2 replies
-
|
Cerberus extension system has come along way in the last few years. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Import the Capture Feedback package in Cerb
Navigate to Setup >> Packages >> Import.
Paste the following package:
{ "package": { "name": "Capture Feedback", "requires": { "cerb_version": "10.0.0" } }, "records": [ { "uid": "custom_record_feedback", "_context": "custom_record", "name": "Feedback", "name_plural": "Feedback", "uri": "feedback", "params": { "owners": { "contexts": [ "cerberusweb.contexts.app" ] }, "options": [ "comments" ] } }, { "uid": "cf_feedback_comment", "_context": "custom_field", "name": "Comment", "context": "feedback", "uri": "comment", "type": "T", "params": { } }, { "uid": "cf_feedback_sentiment", "_context": "custom_field", "name": "Sentiment", "context": "feedback", "uri": "sentiment", "type": "D", "params": { "options": ["Praise","Neutral","Criticism"] } }, { "uid": "cf_feedback_author", "_context": "custom_field", "name": "Author", "context": "feedback", "uri": "author", "type": "L", "params": { "context": "cerberusweb.contexts.address" } }, { "uid": "cf_feedback_source_url", "_context": "custom_field", "name": "Source URL", "context": "feedback", "uri": "source_url", "type": "U", "params": { } }, { "uid": "cf_feedback_is_closed", "_context": "custom_field", "name": "Is Closed", "context": "feedback", "uri": "is_closed", "type": "C", "params": { } }, { "uid": "automation_capture_feedback", "_context": "automation", "name": "wgm.interaction.message.captureFeedback", "description": "Capture user feedback while reading email messages", "extension_id": "cerb.trigger.interaction.worker", "script": "inputs:\n record/message:\n record_type: message\n required@bool: yes\n expand: sender__label\n\nstart:\n await:\n form:\n title: Capture Feedback\n elements:\n textarea/prompt_feedback:\n label: Feedback:\n required@bool: yes\n default@text,trim:\n {% if caller_params.selected_text is not empty %}\n {{caller_params.selected_text}}\n {% else %}\n {{inputs.message.content}}\n {% endif %}\n sheet/prompt_sentiment:\n label: Sentiment:\n required@bool: yes\n data:\n 0:\n name: Praise\n 1:\n name: Neutral\n 2:\n name: Criticism\n default: Neutral\n schema:\n layout:\n style: table\n headings@bool: no\n paging@bool: no\n columns:\n selection/key:\n params:\n mode: single\n value_key: name\n text/name:\n params:\n bold@bool: yes\n \n record.create/feedback:\n output: record_feedback\n inputs:\n # See: https://cerb.ai/docs/records/types/feedback/#records-api\n record_type: feedback\n fields:\n name: {{prompt_feedback|truncate(200)}}\n author: {{inputs.message.sender_id}}\n comment: {{prompt_feedback}}\n source_url: {{inputs.message.record_url}}\n sentiment: {{prompt_sentiment}}\n is_closed: 0\n on_error:\n await:\n form:\n title: Error\n elements:\n say/error:\n content@text:\n ## An unexpected error occurred.\n ~~~\n {{record_feedback.error}}\n ~~~\n error: {{record_feedback.error}}\n \n return:", "policy_kata": "commands:\n record.create:\n deny/type@bool: {{inputs.record_type is not record type ('feedback')}}\n allow: yes" } ], "toolbars": [ { "toolbar": "mail.read", "kata": "interaction/captureFeedback:\n label: Capture Feedback\n uri: cerb:automation:wgm.interaction.message.captureFeedback\n icon: conversation\n hidden@bool: {{message_is_outgoing}}\n inputs:\n message: {{message_id}}\n" } ] }Click the Import button.
You should see the following:
Capturing feedback
When you view a ticket profile, messages now have a new action:
You can highlight to extract a particular passage as feedback. Otherwise the entire message is copied by default.
Select a Sentiment: and click the blue continue arrow.
That's it!
How it works
Custom record
The package creates a new custom record type for Feedback. You'll find it in Search >> Custom Records.
The feedback record type includes several custom fields: comment, sentiment, author, source URL, and open/closed status.
Interaction automation
The package also creates a new automation named
wgm.interaction.message.captureFeedback. You'll find this in Search >> Automations.This is a worker interaction that receives information about an email message and prompts the worker for feedback and sentiment. It saves the responses to a new feedback record.
Toolbar
The package modifies the
mail.readtoolbar to add a Capture Feedback button that launches the new interaction. You'll find this in Search >> Toolbars.This button is configured to only appear on incoming messages from clients. It doesn't appear on outgoing messages from workers.
Beta Was this translation helpful? Give feedback.
All reactions