Smart Advice. Agile. Personalized. Transparent.

Deep and meaningful. How far do your chat(-bot)s go?

In Has AI made OPA obsolete? Nope! I explained how Artificial Intelligence (AI) and Oracle Policy Automation complement each other. In this post we explore this further with an overview of how integrating OPA with a chatbot that uses AI Natural Language Processing (NLP) techniques can provide intuitive and rich experiences to your customers.

First of all, if you haven’t already, check out Oracle Digital Assistant (formerly Oracle Intelligent Bots). Integrated with Oracle Autonomous Mobile Cloud (AMC), Oracle Digital Assistant makes it easy to set up a chat bot that can recognize customer intent - i.e. what they are trying to do – and provide a chat-based service that performs that action. For example, to automatically start a product return when a customer types in a chat phrase like “my toaster is broken”.

Oracle Digital Assistant’s AI engine leverages NLP to provide the chatbot’s intent recognition and dialog handling, and to improve both of them, over time. Oracle Digital Assistant also allows custom components to be integrated into the dialog flow – and this allows OPA and AI-driven chat interactions to work together.


Let’s take the example of a chat service that allows customers to start a new car insurance policy:

  1. A business expert uses OPA to write all the rules about car insurance eligibility and premium calculations. They also define the order in which questions (if they are relevant) should be asked. They deploy this policy model to OPA Cloud.
  2. The business analyst responsible for the chat channel creates an Oracle Digital Assistant intent for “New automobile policy”. This intent is associated with the OPA policy model, and configured to launch a custom component integration with OPA.
  3. Once this intent is live, when a customer types in a chat phrase like “I want to know how much your car insurance costs”, the Oracle Digital Assistant NLP engine matches to the “start new automobile policy” intent and launches an OPA session.
  4. Oracle Digital Assistant Dialog Flow brokers all interaction with OPA: it presents the text and questions that OPA decides are needed next onto the customer’s chat channel. As well as presenting questions like “What make is the car?”, it can also let them know how far there is to go, with text like “I just need to ask a few more questions”
  5. During this process, answers provided by the customer are submitted back to OPA, for it to decide what to say or ask next. The logic embedded within the OPA rules ensures only the necessary questions are asked, and any unnecessary questions are automatically skipped. For example, if the customer says they have not had an accident in the past 12 months, OPA would skip “I have a few extra questions about your last car insurance claim”, and the related questions.
  6. At the end of the OPA advice session, the customer is provided with a car insurance quote, and can even start the insurance policy – all without needing to engage with a live person. OPA has applied all the rules, saved all the collected data back to the customer database along with an audit trail of how the premium was calculated, and with generated documents to email to the customer as needed.

Diagram of chat interaction with Oracle Digital Assistant brokering OPA sessions

Diagram of chat interaction with Oracle Digital Assistant brokering OPA sessions


During this interaction, Oracle Digital Assistant can make use of NLP to

  • Convert terms and phrases such as “today” and “the day after tomorrow” into actual dates that are understood by OPA
  • Launch other intents when appropriate. For example, if the customer asks “what is my current home contents policy deductible”? it can temporarily branch out to a separate dialog that answers that question, before returning to the car insurance OPA session flow.
  • Hand off to another channel. For example, if the customer asks “can I talk to a real person”, the entire OPA session can be brought up in front of a live contact center agent, and they can help the customer finish the process that they have partially completed.

What is possible today?

To see an example of OPA and Oracle Digital Assistant in action together, check out the OPA Interview Bot on Facebook. Just click on Send Message, and type in “hi” to get started. There are different examples to play around with, from checking diabetes risk to exploring eligibility for government benefits, and many more.

OPA interview bot uses the OPA Determinations API Interview Service to manage the OPA session state behind the scenes, while Oracle Digital Assistant provides the intent matching and ability to convert certain natural language phrases into data that OPA can understand.

Note that this integration requires custom development work. It is not provided out of the box with either Oracle Policy Automation Cloud or Oracle Autonomous Mobile Cloud Enterprise. If you are interested in exploring the possibilities, contact your local Oracle sales office.


In combination with Oracle Digital Assistant’s NLP capabilities, an OPA-driven chat experience can deliver comprehensive and easily maintainable advice.

Because OPA rules are written in plain language (English, French, Chinese, Spanish etc.), they are easy to share and review with other legal and policy experts, and lend themselves to easily and automatically delivering a chat style interactive experience.

Oracle has plans to make it even easier to use Oracle Policy Automation to deliver comprehensive advice through chatbot experiences.


Credits: Thanks to Andrew Higginbottom for developing OPA Interview Bot. Title image: Rawpixel via Unsplash

Join the discussion

Comments ( 1 )
  • Babu Madhavan Thursday, June 13, 2019
    Hi Davin,
    Thanks for your post. It gives great insight for the integrated use of OPA, ChatBot, and AI. In fact this is what most of the enterprises looking for their intelligent Digital Transformation journey.
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.