Method and system for instant messaging Bots specification using state transition methodology and XML
First Claim
1. A method for defining an instant messaging Bot process, the method comprising:
- accepting at least one XML schema that defines elements of a Bot transition definition language to be used in specifying instant messaging Bots, the elements of the Bot transition definition language adapted for use in XML documents that define instant messaging Bots that accept at least one natural language text runtime input created by human users and provide at least one response in response to the at least one natural language text runtime input,wherein the Bot transition definition language comprises definitions for elements that correspond to;
at least one state definition,at least one state transition definition, andat least one condition definition for each of the at least one state transition, the at least one condition definition defining a condition based upon a respective received natural language text runtime input;
creating a state transition definition diagram for an instant messaging Bot, the state transition definition diagram comprising at least one state, at least one state transition, and at least one condition that is based upon a respective received natural language text runtime input received from a respective human user for each of the at least one state transition; and
generating an XML document that abides to the at least one XML schema and comprises elements of the Bot transition definition language, the XML document defining the state transition definition diagram.
1 Assignment
0 Petitions
Accused Products
Abstract
A framework for creating instant messaging Bots that autonomously operate within an instant messaging sessions to respond to requests from other user(s) or Bot(s). Bot operation is defined by a state machine with one or more states that are described in XML documents. These XML documents abide by the grammar of a Bot Transition Definition Language (BTDL) that is defined in an XML schema. A Bot developer creates a state transition diagram via a Graphical User Interface. The state transition diagram defines states, transitions between states, and conditions for each of those state transitions and methods to be performed upon each state transition. An XML document that conforms to BTDL format is created from the state transition definition diagram. Both stateful and stateless Bots are defined using XML documents abiding to a BTDL format. A runtime environment implements the Bots, accepts runtime inputs and generates responses.
-
Citations
26 Claims
-
1. A method for defining an instant messaging Bot process, the method comprising:
-
accepting at least one XML schema that defines elements of a Bot transition definition language to be used in specifying instant messaging Bots, the elements of the Bot transition definition language adapted for use in XML documents that define instant messaging Bots that accept at least one natural language text runtime input created by human users and provide at least one response in response to the at least one natural language text runtime input, wherein the Bot transition definition language comprises definitions for elements that correspond to; at least one state definition, at least one state transition definition, and at least one condition definition for each of the at least one state transition, the at least one condition definition defining a condition based upon a respective received natural language text runtime input; creating a state transition definition diagram for an instant messaging Bot, the state transition definition diagram comprising at least one state, at least one state transition, and at least one condition that is based upon a respective received natural language text runtime input received from a respective human user for each of the at least one state transition; and generating an XML document that abides to the at least one XML schema and comprises elements of the Bot transition definition language, the XML document defining the state transition definition diagram. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An instant messaging Bot development system, comprising:
-
an XML schema repository for storing at least one XML schema, each of the at least one XML schema defining elements of a Bot transition definition language to be used in specifying instant messaging Bots, the elements of the Bot transition definition language adapted for use in XML documents that define instant messaging Bots that accept at least one natural language text runtime input created by human users and provide at least one response in response to the at least one natural language text runtime input, wherein the Bot transition definition language comprises definitions for elements that correspond to; at least one state definition, at least one state transition definition, and at least one condition definition for each of the at least one state transition, the at least one condition definition defining a condition based upon a respective received natural language text runtime input; creating a state transition definition diagram for an instant messaging Bot, the state transition definition diagram comprising at least one state, at least one state transition, and at least one condition that is based upon a respective received natural language text runtime input received from a respective human user for each of the at least one state transition; a state transition definition diagram definition tool for creating a state transition definition diagram for an instant messaging Bot, the state transition definition diagram comprising at least one state, at least one state transition, and at least one condition that is based upon a respective received natural language text runtime input received from a respective human user for each of the at least one state transition; and an XML document generator for generating an XML document that abides to the at least one XML schema and comprises elements of the Bot transition definition language, the XML document defining the state transition definition diagram. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A processor configured to execute an instant messaging Bot runtime system, comprising:
-
a runtime environment for processing an XML document in order to implement an instant messaging Bot in conjunction with at least one object class, wherein the XML document conforms to an XML schema that defines a Bot Transition Definition Language for use in developing instant messaging Bots, the elements of the Bot transition definition language adapted for use in the XML document defining instant messaging Bots that accept at least one natural language text runtime input created by human users and provide at least one response in response to the at least one natural language text runtime input, wherein the Bot transition definition language comprises definitions for elements that correspond to; at least one state element; and at least one state transition element, wherein at least one of the at least one state transition element comprises at least one condition for the at least one of the at least one state transition, the at least one condition definition defining a condition based upon a respective received natural language text runtime input.
-
-
18. A computer program product for defining an instant messaging Bot process, the computer program product comprising:
-
a storage medium readable by a processing circuit and storing by being tangibly encoded with instructions for execution by the processing circuit for performing a method comprising; accepting at least one XML schema that defines elements of a Bot transition definition language to be used in specifying instant messaging Bots, the elements of the Bot transition definition language adapted for use in XML documents that define instant messaging Bots that accept at least one natural language text runtime input created by human users and provide at least one response in response to the at least one natural language text runtime input, wherein the Bot transition definition language comprises definitions for elements that correspond to; at least one state definition, at least one state transition definition, and at least one condition definition for each of the at least one state transition, the at least one condition definition defining a condition based upon a respective received natural language text runtime input; creating a state transition definition diagram for an instant messaging Bot, the state transition definition diagram comprising at least one state, at least one state transition, and at least one condition that is based upon a respective received natural language text runtime input received from a respective human user for each of the at least one state transition; and generating an XML document that abides to the at least one XML schema and comprises elements of the Bot transition definition language, the XML document defining the state transition definition diagram. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
-
26. A method for defining an instant messaging Bot process, the method comprising:
-
accepting at least one XML schema that defines elements of a Bot transition definition language to be used in specifying instant messaging Bots, the elements of the Bot transition definition language adapted for use in XML documents that define instant messaging Bots that accept at least one natural language text runtime input created by human users and provide at least one response in response to the at least one natural language text runtime input, wherein the Bot transition definition language comprises definitions for elements that correspond to; a state machine specification comprising; a specification that the state machine is one of stateful and stateless, a specification of a handler class able to indicate a software object class comprising software methods used by the instant messaging Bot, a specification of a Bot state class able to indicate an object class that identifies the states of the Bot, and at least one state definition, and at least one state transition definition, the at least one state transition definition comprising; at least one condition definition for each of the at least one state transition, the at least one condition definition defining a condition based upon a respective received natural language text runtime input that is to be satisfied prior to implementing the at least one state transition, a method attribute definition able to specify a software method to be executed upon satisfaction of the condition, an arguments attribute definition able to define arguments to be provided to the software method to be executed upon satisfaction of the condition, a timeout attribute definition able to specify a timeout period for the at least one state transition, an event attribute definition that is able to specify an event that will cause the at least one state transition to execute, and a state attribute definition that is able to specify a final state to which the at least one state transition definition will end upon execution; creating a state transition definition diagram for an instant messaging Bot, the state transition definition diagram comprising at least one state, at least one state transition, and at least one condition that is based upon a respective received natural language text runtime input received from a respective human user for each of the at least one state transition; and generating an XML document that abides to the at least one XML schema and comprises elements of the Bot transition definition language, the XML document defining the state transition definition diagram.
-
Specification