-
Notifications
You must be signed in to change notification settings - Fork 1
Documentation on handling escalation failure
Whenever Dialog flow Application in unable to handle a case it escalates the case and transfer's it to a Salesforce LiveAgent. This escalation process involves communication between multiple apps/modules and hence it is prone to failures. We have added some log point in our RocketChat application to catch and log those failures under a common log message Failed To Handover.
Since escalation involves a lot of steps and communication between multiple apps/modules, there can be number of failures that may happen, Some of them are being tracked under log points and are documented below.
When no live agents are available (Link to PR).
This log point will trigger when no Live Agents are currently online on Salesforce organization. it won't track any failure in Rocket.Chat application.
Steps to reproduce:
- Make sure LiveChat widget currently works without any issues and is able to escalate cases.
- Make all live agents offline in Salesforce Organization (Service Console).
- That's all, You're all set.
- Go to Rocket.Chat LiveChat widget and try to escalate a case.
- It will fail to escalate with a message Failed To Handover.
Screenshot of log point:
When app is not configured properly with Salesforce (Link to PR).
Salesforce configuration are the unique URLs/Tokens which is required to connect with Salesforce organization
This log point will trigger when Salesforce configuration are not entered correctly in:
Steps to reproduce:
- Make sure LiveChat widget currently works without any issues and is able to escalate cases.
- Misconfigure your Salesforce configuration in either DialogFlow console or Rocket.Chat admin settings or Both.
- Steps to misconfigure Salesforce configuration for Rocket.Chat admin settings.
- Go to Rocket.Chat app.
- Open ⚙️Administration Settings > Apps.
- Open Saleforce Live Agent Integration.
- Scroll down to Salesforce Chat Endpoint and following this will be 3 more Salesforce config fields as mentioned above.
- Misconfigure any of the 4 fields mentioned above.
- Steps to misconfigure Salesforce configuration for DialogFlow Console.
- Go to DialogFlow Console.
- Go to Intents and select the Intent that's responsible for escalation via Handover phrase.
- Scroll down to Responses, It will be having salesforceButtonId and salesforceId entries.
- Misconfigure either of these entries.
- Now since you have properly misconfigured the Salesforce config, you're all set.
- Go to Rocket.Chat LiveChat widget and try to escalate a case.
- It will fail to escalate with a message Failed To Handover.
Screenshot of log point:
When Salesforce bot user is offline/disabled (Link to PR).
Salesforce bot is a user with roles set as bot and livechat-agent, it is responsible to handling cases and transferring them to either different departments or Rocket.Chat Apps. This log point will trigger in any situation when salesforce-live-agent-integration.bot user is offline or deactivated, and DialogFlow tries to escalate the case.
Steps to reproduce:
- Make sure LiveChat widget currently works without any issues and is able to escalate cases.
- Logout from salesforce-live-agent-integration.bot user or deactivate it.
- To check if bot user is offline:
- go to ⚙️Administration Settings > Users.
- Identify your salesforce-live-agent-integration.bot user, it maybe of any name for you.
- Check the session status, it should be offline.
- To deactivate a user:
- go to ⚙️Administration Settings > Users.
- Identify your salesforce-live-agent-integration.bot user and click on it.
- Now click on 3 dot menu and click on Deactivate.
- Since your salesforce-live-agent-integration.bot user is out of service, you're all set.
- Go to Rocket.Chat LiveChat widget and try to escalate a case.
- It will fail to escalate with a message Failed To Handover.
Screenshot of log point: