IP Library › Granted Patent US 11,019,004
Granted Patent B1
US 11,019,004 · App. 15/862,534 · Granted May 25, 2021

System, method, and computer program for performing bot engine abstraction

Inventors: Deborah A. Sohrweide (San Jose, CA); Sanjay Gupta (Pune, IN); Andrew Harper (Roswell, GA); Alma D. Lopez (San Jose, CA); Ksheerasagar Akella (Sunnyvale, CA); Roi Dayan (Sunnyvale, CA); Toshish Arun Jawale (San Jose, CA); Pawan Liladhar Bhole (Pune, IN)
Assignee: AMDOCS DEVELOPMENT LIMITED
H04L51/046G06N3/004G06N20/00H04L51/02G06F16/337
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,019,004
App. No.
15/862,534
Granted
May 25, 2021
Kind
B1
Abstract

A system, method, and computer program product are provided for performing bot engine abstraction. In use, a message is received at a bot engine from a messaging channel, utilizing a first abstraction layer. Additionally, one or more external components are accessed by the bot engine, utilizing a second abstraction layer, to create a response to the message. Further, the response is sent from the bot engine to the messaging channel, utilizing the first abstraction layer.

Claims (56)

1. A computer implemented method, comprising:

receiving a message at a bot engine from a messaging channel, utilizing a first abstraction layer, wherein the first abstraction layer:

intercepts the message before it is received at the bot engine,

identifies the messaging channel from which the message is received,

converts the message from a platform-specific message to a generic message, and sends a converted message to the bot engine,

wherein the interception and conversion are transparent to the bot engine;

accessing one or more external components by the bot engine, utilizing a second abstraction layer, to create a response to the message; and

sending the response from the bot engine to the messaging channel, utilizing the first abstraction layer.

2. The computer implemented method of claim 1 , wherein the message has one or more associated characteristics, including one or more of a user ID of a customer sending the message, an ID of the messaging channel that sent the message, a location of a user, and a time and date that the message was sent.

3. The computer implemented method of claim 1 , wherein the messaging channel includes one or more of a social media website, a social media application, a communications website, and a communications application.

4. The computer implemented method of claim 1 , wherein the message is sent to the bot engine in response to an insertion of text or other media into a provided chat window by a customer, and a selection by a customer of a send option.

5. The computer implemented method of claim 1 , wherein the external components include one or more language understanding services, including an artificial intelligence (AI) engine that analyzes the message to determine and return one or more of a sentiment, a personality, a language, and an intent of a customer sending the message.

6. The computer implemented method of claim 1 , wherein the external components include one or more translation services, including an engine that translates text or audio of the message to a different language that is then returned to the bot engine.

7. The computer implemented method of claim 1 , wherein the external components include one or more analytics services, including an analytics engine that compares one or more portions of the message to historical data in order to determine how to create the response to the message to create optimal results, where the determination is then returned to the bot engine.

8. The computer implemented method of claim 1 , wherein the external components include one or more business services components, including a business services engine that accesses one or more business microservices in order to determine how to create the response to the message according to one or more predetermined business plans, where the determination is then returned to the bot engine.

9. The computer implemented method of claim 8 , wherein the one or more business services components may also include business process automation that performs one or more actions automatically in response to being triggered by receiving predetermined message data.

10. The computer implemented method of claim 1 , wherein the external components include one or more chat storage components, including a data storage service that stores and aggregates historical messages for analysis.

11. The computer implemented method of claim 1 , wherein the external components include one or more conversation flow control services, which modify a flow of conversation of the bot engine.

12. The computer implemented method of claim 1 , wherein creating the response to the message includes analyzing, by the bot engine, the message as well as information received from the one or more external components.

13. The computer implemented method of claim 1 , wherein the second abstraction layer utilizes bootstrapping to access the one or more external components.

14. A computer implemented method, comprising:

receiving a message at a bot engine from a messaging channel, utilizing a first abstraction layer, wherein the first abstraction layer:

intercepts a generic message before it is sent to the messaging channel,

identifies the messaging channel for which the message is intended,

converts the message from a generic message to a platform-specific message, based on the messaging channel for which the message is intended; and

sends a converted message to the intended messaging channel;

accessing one or more external components by the bot engine, utilizing a second abstraction layer, to create a response to the message; and

sending the response from the bot engine to the messaging channel, utilizing the first abstraction layer.

15. The computer implemented method of claim 1 , further comprising receiving a second message at the bot engine from a second messaging channel that is different from the messaging channel, utilizing the first abstraction layer, where the first abstraction layer:

intercepts the second message before it is received at the bot engine;

identifies the second messaging channel from which the second message is received;

converts the second message from a second platform-specific message to a second generic message; and

sends a second converted message to the bot engine;

wherein the interception and conversion are transparent to the bot engine.

16. The computer implemented method of claim 1 , wherein the first abstraction layer identifies one or more characteristics of the messaging channel, and passes those characteristics to the bot engine.

17. The computer implemented method of claim 16 , wherein the bot engine analyzes a conversation in association with the one or more characteristics of the messaging channel, and determines whether the messaging channel is appropriate for the conversation.

18. A computer program product comprising computer executable instructions stored on a non-transitory computer readable medium that when executed by a processor instruct the processor to:

receive a message at a bot engine from a messaging channel, utilizing a first abstraction layer, wherein the first abstraction layer:

intercepts the message before it is received at the bot engine,

identifies the messaging channel from which the message is received,

converts the message from a platform-specific message to a generic message, and

sends a converted message to the bot engine,

wherein the interception and conversion are transparent to the bot engine;

access one or more external components by the bot engine, utilizing a second abstraction layer, to create a response to the message; and

send the response from the bot engine to the messaging channel, utilizing the first abstraction layer.

19. A device, comprising:

a non-transitory memory storing instructions; and

one or more processors in communication with the non-transitory memory, wherein the one or more processors execute the instructions to:

receive a message at a bot engine from a messaging channel, utilizing a first abstraction layer, wherein the first abstraction layer:

intercepts the message before it is received at the bot engine,

identifies the messaging channel from which the message is received,

converts the message from a platform-specific message to a generic message, and

sends a converted message to the bot engine,

wherein the interception and conversion are transparent to the bot engine;

access one or more external components by the bot engine, utilizing a second abstraction layer, to create a response to the message; and

send the response from the bot engine to the messaging channel, utilizing the first abstraction layer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2018
From: SOHRWEIDE, DEBORAH A.; GUPTA, SANJAY; HARPER, ANDREW; LOPEZ, ALMA D.; AKELLA, KSHEERASAGAR; DAYAN, ROI; JAWALE, TOSHISH ARUN; BHOLE, PAWAN LILADHAR
To: AMDOCS DEVELOPMENT LIMITED
Reel/Frame 046488/0137 →
Cited By (2)
US 12,541,579 US 12,664,973