IP Library Granted Patent US 10,645,034
Granted Patent B2
US 10,645,034 · App. 15/494,385 · Granted May 5, 2020

System and method for facilitating computer generated conversations with the aid of a digital computer

Inventors: Alkarim “Al” Lalji (Bothell, WA); Andrew Alan Wells (Madeira Beach, FL)
Assignee: SMARTBOTHUB, INC.
H04L51/02G06F40/30G06N3/006G06N20/00H04L63/083H04L67/20
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 10,645,034
App. No.
15/494,385
Granted
May 5, 2020
Kind
B2
Abstract

The flexibility of a communication with a chatbot can be increased using a chatbot platform that can be integrated with a plurality of chat channels as well as facilitate communication between users of different chat channels. The platform can host chatbots that can leverage a plurality of resources, including internal and external natural language processors, machine learning, analytics services, and third party services to generate a response to user communications and take actions on behalf of the user. The use of the natural language processing and other additional information allows to generate an appropriate response to user queries, and to thus increase the speed with which user concerns are address. Further, the platform includes a chatbot creation program that allows a quick way to create a large number of customized chatbots without requiring advanced programming skills from the chatbot creator.

Claims (87)

1. A system for facilitating computer-generated conversations, comprising:

a platform comprising a plurality of servers, one or more of the servers configured to:

receive via one of a plurality of chat channels a communication from a computing device directed at a chatbot hosted by the platform, the chatbot registered with the plurality of the chat channels and associated with a workflow comprising a plurality of steps, each of the chat channels associated with a communication format different from the communication formats associated with the remaining chat channels;

perform an integrity check of the chat channel, the integrity check comprising verifying an identity of the chat channel via which the communication was received;

upon the chat channel passing the integrity check, determine using the communication format of the chat channel via which the communication was received one of the steps in the workflow to be taken in response to the received communication;

analyze the communication;

generate a response communication based on the analysis and the determined step;

format the response communication for transmission via the chat channel; and

send the response communication via the chat channel to the computing device.

2. A system according to claim 1 , one or more of the servers further configured to:

register the chatbot with at least one of the plurality of servers, comprising:

receive user input comprising one or more of name of the chatbot, an image of the chatbot, the workflow associated with the chatbot, components associated with the chatbot, and the plurality of the chat channels associated with the chatbot, and chat channel configuration preferences;

generate the chatbot based on the user input;

assign one of the servers comprised in the platform as an endpoint associated with the chatbot at which the communication is received and from which the response communication is sent, wherein the chatbot is one of a plurality of chatbots hosted by the platform and wherein all of the plurality of chatbots are associated with different ones of the servers comprised in the platform as their endpoints;

generate credentials for the chatbot, the credentials comprising one or more of an identifier of the chatbot and a password associated with the chatbot;

configure the chatbot for the associated chat channels; and

store the configured chatbot and the credentials in a storage interfaced to the one or more servers.

3. A system according to claim 1 , one or more of the servers further configured to:

identify an intent of a user associated with the communication,

wherein the response communication is generated based on the intent.

4. A system according to claim 3 , one or more of the servers further configured to:

obtain a natural language processing of the received communication, wherein the intent is determined based on the natural language processing.

5. A system according to claim 4 , one or more of the servers further configured to:

retrieve from an analytics service data associated with a user associated with the computing device;

interact with a third party service based on the natural language processing; and

execute the workflow by the chatbot based on the retrieved data and the interaction,

wherein the response communication is generated based on the execution.

6. A system according to claim 5 , wherein the natural language processor is performed by one of at least one of the one or more servers and at least one third party server.

7. A system according to claim 1 , one or more of the servers further configured to:

establish an interaction between the computing device and an additional computing device using different ones of the chat channels, comprising:

receive a request from the computing device for the interaction involving at least two different ones of the chat channels, the at least two different channels comprising the chat channel via which the communication was received and another one of the chat channels different from the chat channel via which the communication was received;

receive an identification of a chatroom created on the chat channel via which the communication was received, wherein the communication was received via the chatroom;

receive a request to join the chatroom from an additional computing device via the different chat channel;

send the communication received from the computing device to the additional computing device via the different chat channel;

receive an additional communication from the additional computing device via the different chat channel; and

send the additional communication to the chatroom.

8. A system according to claim 1 , wherein the one or more servers are in a cloud-computing environment and the chat channels are interfaced to the cloud-computing environment.

9. A system according to claim 1 , one or more of the servers further configured to:

assign a classification to a user associated with the computing device based on the analysis of the parsed message;

execute the workflow based on the classification,

wherein the response communication is generated based on the execution.

10. A system according to claim 9 , one or more of the servers further configured to:

train the chatbot on a plurality of sample messages,

wherein the classification is performed based on the training.

11. A method for facilitating computer-generated conversations, comprising:

receiving by a platform comprising a plurality of servers via one of a plurality of chat channels a communication from a computing device directed at a chatbot hosted by the platform, the chatbot registered with the plurality of the chat channels and associated with a workflow comprising a plurality of steps, each of the chat channels associated with a communication format different from the communication formats associated with the remaining chat channels;

performing by platform an integrity check of the chat channel, the integrity check comprising verifying an identity of the chat channel via which the communication was received;

upon the chat channel passing the integrity check, determining by the platform using the communication format of the chat channel via which the communication was received one of the steps in the workflow to be taken in response to the received communication;

analyzing by the platform the communication;

generating by the chatbot a response communication based on the analysis and the determined step;

formatting by the platform the response communication for transmission via the chat channel; and

sending by the platform the response communication via the chat channel to the computing device.

12. A method according to claim 11 , further comprising:

registering the chatbot with at least one of the plurality of servers, comprising:

receving user input comprising one or more of name of the chatbot, an image of the chatbot, the workflow associated with the chatbot, components associated with the chatbot, and the plurality of the chat channels associated with the chatbot, and chat channel configuration preferences;

generating the chatbot based on the user input;

assigning one of the servers comprised in the platform as an endpoint associated with the chatbot at which the communication is received and from which the response communication is sent, wherein the chatbot is one of a plurality of chatbots hosted by the platform and wherein all of the plurality of chatbots are associated with different ones of the servers comprised in the platform as their endpoints;

generating credentials for the chatbot, the credentials comprising one or more of an identifier of the chatbot and a password associated with the chatbot;

configuring the chatbot for the associated chat channels; and

storing the configured chatbot and the credentials in a storage interfaced to the one or more servers.

13. A method according to claim 11 , further comprising:

identify an intent of a user associated with the communication,

wherein the response communication is generated based on the -intent.

14. A method according to claim 13 , further comprising:

obtaining a natural language processing of the parsed message, wherein the intent is determined based on the natural language processing.

15. A method according to claim 14 , further comprising:

retrieving by at least one of the one or more servers from an analytics service data associated with a user associated with the computing device;

interacting with a third party service based on the natural language processing; and

executing the workflow by the chatbot based on the retrieved data and the interaction,

wherein the response communication is generated based on the execution.

16. A method according to claim 15 , wherein the natural language processor is performed by one of at least one of the one or more servers and at least one third party server.

17. A method according to claim 11 , further comprising:

establishing an interaction between the computing device and an additional computing device using different ones of the chat channels, comprising:

receiving a request from the computing device for the interaction involving at least two different ones of the chat channels, the at least two different channels comprising the chat channel via which the communication was received and another one of the chat channels different from the chat channel via which the communication was received;

receiving an identification of a chatroom created on the chat channel via which the communication was received, wherein the communication was received via the chatroom;

receiving a request to join the chatroom from an additional computing device via the different chat channel;

sending by the chatbot the communication received from the computing device to the additional computing device via the different chat channel;

receiving an additional communication from the additional computing device via the different chat channel; and

sending the additional communication to the chatroom.

18. A method according to claim 11 , wherein the one or more servers are in a cloud-computing environment and the chat channels are interfaced to the cloud-computing environment.

19. A method according to claim 11 , further comprising:

assigning a classification to a user associated with the computing device based on the analysis of the parsed message;

executing the workflow based on the classification,

wherein the response communication is generated based on the execution.

20. A method according to claim 19 , further comprising:

training the chatbot on a plurality of sample messages,

wherein the classification is performed based on the training.

Assignments (5)
CHANGE OF NAME Recorded Apr 21, 2025
From: SMARTEK21 PRODUCT HOLDINGS CO.
To: INTELLITEK HOLDINGS CO.
Reel/Frame 070903/0818 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2024
From: SMARTEK21 SERVICES CORPORATION
To: SMARTEK21 PRODUCT HOLDINGS CO.
Reel/Frame 068869/0345 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2024
From: SMARTBOTHUB, INC.
To: SMARTEK21 SERVICES CORPORATION; SMARTEK21 PRODUCT HOLDINGS CO.
Reel/Frame 066085/0660 →
ENTITY CONVERSION Recorded Mar 25, 2020
From: SMARTBOTHUB LLC
To: SMARTBOTHUB, INC.
Reel/Frame 052222/0046 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2017
From: LALJI, ALKARIM "AL"; WELLS, ANDREW ALAN
To: SMARTBOTHUB LLC
Reel/Frame 042119/0402 →
Continuity (2)
Provisional Application 62326274 · Apr 22, 2016
Related Publication 20170310613A1 · Oct 26, 2017
Cited By (1)
US 12,356,042