Integrate A Voicebot In Your Contact Flow

Enhance customer experience via an intelligent voicebot

Service Cloud Voice brings Interactive Voice Recognition (IVR) functionalities to your Salesforce implementation. Integrating simple voicebot functionalities in your contact flow may automate standard repetitive tasks.  Normally, these tasks take unnecessary time away of your support team.  By automating these tasks, Query Salesforce for real-time datayour support agents may focus on more complex, and more attractive tasks.

Likewise, providing easy access to certain standard requests, your customers get a better experience. With better experience, your customers will also get a higher appreciation of your support team, and your company in more general.

Voicebot enabled IVR

Compared with traditional IVR applications, integrating a voicebot into your contact flow allows for a much better customer experience.  Certainly when real-time CRM data gets used to provide up-to-date feedback to your customers.

Let’s take the following example:

    1. Your customer calls to your contact center.  Instead of announcing “Press 1 for x, press 2 for y”…
    2. Now, Botty, your virtual assistant welcomes your customer, like:“Welcome! I’m Botty, your virtual assistant.  Do you call regarding the status of your order, the delivery date of your order, or do you have another question?”Your customer answers with “I want to know the status of my order 123”Botty answers with “OK!  We will immediately check the status of your order 123. Hang on”
    3. A query is done to your Salesforce application, retrieving the status of order 123
    4. Upon receiving the feedback from Salesforce, Botty says “Thank you for your patience.  We found the status of your order 123. The status is shipped.  The expected delivery date is tomorrow.  Does this answer your question?“Your customer answers with “Ok, thank you!”Botty asks confirmation, like: “Does this answer your question?  Or would you like to get transferred to a support member?”Your customer answers with “Please transfer me to an agent”

      Botty replies: “Ok. Please hang on, while we transfer you to a free agent”

    5. To ensure that all information is correctly provided to the support agent, a new Case (or Task or another record in Salesforce) gets created from within the Contact Flow.
    6. The call gets transferred to the correct agent, and automatically the newly created Case is displayed in Salesforce.  The Case includes the history of actions that were taken in the IVR flow, and is linked with Order 123.With all information readily available on the screen, your support employees may continue the conversation with your customer

Enhanced experience with voice enabled IVR applications

Obviously, the customer experience is much better compared with classic IVR applications.  In case your customer would not have requested to talk with an agent, a Case (or other record) would have been created in Salesforce. This would ensure that all interactions, also those where no employee was involved, get correctly logged against your customer’s record in Salesforce.

Next to that, your customer would have received his feedback much faster. As the voice application immediately suggested some standard options, he did not have to wait for an agent to become available.

How do you include a voicebot in to your contact flow?

Extend Salesforce Service Cloud Voice with voice components via Amazon Lex.

Here is a short overview of the steps to follow:

  1. Select Lex in your AWS Management Console. Create a new Bot and define the required Intents for your Voice BotOur simple bot application will request one specific parameter, which is the OrderNumber.  When the customer doesn’t immediately mention the OrderNumber, then the bot will automatically ask for it.Build and Publish your bot.Create Intent for Voice Bot
  2. Update your Contact Flow with a ‘Get Customer Input’ block. Select ‘Amazon Lex’ and provide the Intents that you want to use.Create Customer Input and link with Voice BotAdd a ‘Set contact attribute’ block in your Contact Flow to store the feedback from your customer
  3. Add a ‘Invoke AWS Lambda function’ in your Contact Flow to query Salesforce. With the implementation of Service Cloud Voice, a number of standard AWS Lambda functions get installed.  From these standard functions, use the ‘InvokeSalesforceRestApiFunction’ function to run a SOQL query against your Salesforce org.  Use ‘$.Attributes.MyOrderNumber’ in where clause of your query, this parameter contains the value that your customer provided in the Contact FlowAWS Lambda ensures integration with Salesforce
    Add a ‘Play prompt’ block to play the announcement back to your customer – including to feedback from the Salesforce query.
  4. The creation of the Case (or any record in Salesforce) is done similarly as to the above step. But, for the creation of a record in Salesforce, the ‘InvokeSalesforceRestApiFunction’ Lambda function is used.  This function has different methods, on of them being ‘CreateRecord’.  Add the required parameters – Salesforce fields – as parameters in this block.
  5. To pass the Salesforce RecordId of the newly created Case to Salesforce, prefix the Salesforce field with ‘sfdc-‘ in a ‘Set contact attributes’ block.  For instance, if you created a custom ‘Case_Id’ field in the Voice Call object, the set a User Defined field as ‘sfdc-Case__c’ and assign the recordId value to it

Conclusion

Adding a voicebot in your Contact Flows is not complex.  Use AWS Lex to create a Voice Bot. Define your Voice Bot in the standard Contact Flow blocks, and use the standard AWS Lambda functions to interact with Salesforce.

Want to know more?

Are you planning or evaluating an implementation of Salesforce Service Cloud Voice? But you don’t exactly know how to start? Get in touch with us for more information.