Lightweight dynamic service conversation controller
First Claim
1. A method for implementing a conversation between a client and a service, comprising:
- receiving a message on behalf of the service;
determining a current state of the conversation;
determining valid input document types for the current state;
verifying whether the message is of one of the valid input document types for the current state; and
dispatching the message to appropriate service entry points provided by the service, until the service produces an output document of a valid output document type.
2 Assignments
0 Petitions
Accused Products
Abstract
A mechanism provides for a conversation controller that enables services to carry out an entire conversation without the service developers having to implement code to manage conversation logic. The mechanism focuses on conversation functionality as opposed to business functionality of the service and enables service developers to delegate conversational responsibilities to the conversation controllers thus freeing the developers from having to implement explicit conversation control mechanisms and allowing the services to interact without having to explicitly support conversations. These distinctions help to provide an extremely lightweight conversation controller capable of directing a service'"'"'s conversations with other services or clients.
48 Citations
20 Claims
-
1. A method for implementing a conversation between a client and a service, comprising:
-
receiving a message on behalf of the service;
determining a current state of the conversation;
determining valid input document types for the current state;
verifying whether the message is of one of the valid input document types for the current state; and
dispatching the message to appropriate service entry points provided by the service, until the service produces an output document of a valid output document type. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A conversation controller that implements a conversation between a client and a service, comprising:
-
an incoming context handler that receives a message on behalf of the service, wherein the incoming context handler is capable of parsing the message and extracting a document type of the message;
an interaction handler coupled to the incoming context handler and capable of identifying a current state, conversation specifications and the document type of the message from the message; and
a dispatch handler coupled to the interaction handler, wherein the dispatch handler parses the conversation specification and forwards the message to service entry points of the service. - View Dependent Claims (12, 13, 14, 15, 17, 18, 19, 20)
-
-
16. A computer readable medium comprising instructions for implementing a conversation between a client and a service, the instructions comprising:
-
receiving a message on behalf of the service;
determining a current state of the conversation;
determining valid input document types for the current state;
verifying whether the message is of one of the valid input document types for the current state; and
dispatching the message to appropriate service entry points of the service, until the service produces an output document of a valid output document type.
-
Specification