Claims
- 1. A system to provide conversation states, comprising:
a first computing device capable of accepting a message for a conversation; a second computing device capable of maintaining the state for a conversation; and a conversation manager capable of identifying the computing device which maintains the state for a conversation.
- 2. The system according to claim 1, wherein:
the first and second computing device form a cluster.
- 3. The system according to claim 1, wherein:
the conversation manager is capable of maintaining the locations of all states in the system.
- 4. The system according to claim 1, wherein:
a computing device is capable of maintaining its state information, which may include, but is not limited to, a map of every state leased, owned, or stored on it.
- 5. The system according to claim 4, wherein:
a computing device is capable of maintaining its state information in-memory.
- 6. The system according to claim 4, wherein:
a computing device is capable of maintaining its state information both in-memory and on persistent storage.
- 7. The system according to claim 4, wherein:
the state information on at least one primary computing device can be replicated to one secondary computing device.
- 8. The system according to claim 7, wherein:
the conversation manager is capable of routing to the secondary computing device and setting it as the new primary when the primary computing device fails.
- 9. The system according to claim 1, wherein:
the conversation manager is capable of periodically determining the availability of computing devices.
- 10. A system to provide conversation for Web service, comprising:
a conversation partner capable of providing a message for a conversation; a first computing device capable of accepting a message for a conversation; a second computing device capable of maintaining the state for a conversation; and a conversation manager capable of identifying the computing device which maintains the state for a conversation.
- 11. The system according to claim 10, wherein:
The message includes a conversation ID.
- 12. The system according to claim 10, wherein:
the first and second computing device form a cluster.
- 13. The system according to claim 10, wherein:
the conversation manager is capable of maintaining the locations of all states in the system.
- 14. The system according to claim 10, wherein:
a computing device is capable of maintaining its state information, which may include, but is not limited to, a map of every state leased, owned, or stored on it.
- 15. The system according to claim 14, wherein:
a computing device is capable of maintaining its state information in-memory.
- 16. The system according to claim 14, wherein:
a computing device is capable of maintaining its state information both in-memory and on persistent storage.
- 17. The system according to claim 14, wherein:
the state information on at least one primary computing device can be replicated to one secondary computing device.
- 18. The system according to claim 17, wherein:
the conversation manager is capable of routing to the secondary computing device and set it as the new primary when the primary computing device fails.
- 19. The system according to claim 10, wherein:
the conversation manager is capable of periodically determining the availability of computing devices.
- 20. The system according to claim 11, wherein:
a computing device is capable of contacting the conversation manager to determine the location of a state using the conversation ID.
- 21. The system according to claim 10, wherein:
a computing device is capable of answering a request for a state directly without contacting the conversation manager if it owns such state.
- 22. The system according to claim 10, wherein:
the conversation manager is capable of accepting a request for the location of a state from a computing device.
- 23. The system according to claim 11, wherein:
the conversation manager is capable of providing the location of a state to a computing device requesting it based on the conversation ID.
- 24. The system according to claim 10, wherein:
a computing device is capable of accepting the location of a state from the conversation manager.
- 25. The system according to claim 10, wherein:
a computing device is capable of invoking a state on a computing device in order to respond to a. conversation message received.
- 26. The system according to claim 10, wherein:
the conversation manager is capable of sharing a state with at least two conversations.
- 27. The system according to claim 10, wherein:
the conversation manager is capable of tracking a participating Web service that initiates conversation.
- 28. The system according to claim 27, wherein:
the conversation manager is capable of sharing a state with at least two Web services and joining the sessions of these services.
- 29. A method to provide a conversation for a Web service, comprising:
accepting a conversation message from a conversation partner; contacting a conversation manager to determine the location of the state for a conversation; accepting the location of a state from the conversation manager; and invoking a state on a computing device in order to respond to the conversation message received.
- 30. A method to provide a conversation for a Web service, comprising:
accepting a conversation message from a conversation partner; and invoking a state on a computing device in order to respond to the conversation message received directly without contacting the conversation manager if the computing device owns such state.
- 31. The method according to claim 29, further comprising:
maintaining the locations of all states in the system on the conversation manager.
- 32. The method according to claim 29, further comprising:
maintaining on a computing device its state information, which may include, but is not limited to, a map of every state leased, owned, or stored on it.
- 33. The method according to claim 32, further comprising:
maintaining the state information on a computing device in-memory.
- 34. The method according to claim 32, further comprising:
maintaining the state information on a computing device both in-memory and on persistent storage.
- 35. The method according to claim 32, further comprising:
replicating the state information on at least one primary computing device to one secondary computing device.
- 36. The method according to claim 35, further comprising:
routing to the secondary computing device; and setting it as the new primary when the primary computing device fails.
- 37. The method according to claim 29, further comprising:
determining the availability of computing devices periodically.
- 38. The method according to claim 29, further comprising:
providing a conversation message to a computing device.
- 39. The method according to claim 29, further comprising:
accepting request for the location of a state from a computing device; and providing the location of the state to the computing device requesting it.
- 40. The method according to claim 29, further comprising:
sharing a state for at least two conversations.
- 41. The method according to claim 29, further comprising:
tracking a participating Web service that initiates a conversation.
- 42. The method according to claim 41, further comprising:
sharing a state with at least two Web services; and joining the sessions of these services.
- 43. A machine readable medium having instructions stored thereon that when executed by a processor cause a system to:
accept a conversation message from a conversation partner; contact a conversation manager to determine the location of the state for a conversation; accept the location of a state from the conversation manager; and invoke a state on a computing device in order to respond to the conversation message received.
- 44. A machine readable medium having instructions stored thereon that when executed by a processor cause a system to:
accept a conversation message from a conversation partner; and invoke a state on a computing device in order to respond to the conversation message received directly without contacting the conversation manager if the computing device owns such state.
- 45. The machine readable medium of claim 43, further comprising instructions that when executed cause the system to:
maintain the locations of all states in the system on the conversation manager.
- 46. The machine readable medium of claim 43, further comprising instructions that when executed cause the system to:
maintain on a computing device its state information, which may include, but is not limited to, a map of every state leased, owned, or stored on it.
- 47. The machine readable medium of claim 46, further comprising instructions that when executed cause the system to:
maintain the state information on a computing device in-memory.
- 48. The machine readable medium of claim 46, further comprising instructions that when executed cause the system to:
maintain the state information on a computing device both in-memory and on persistent storage.
- 49. The machine readable medium of claim 48, further comprising instructions that when executed cause the system to:
replicate the state information on at least one primary computing device to one secondary computing device.
- 50. The machine readable medium of claim 49, further comprising instructions that when executed cause the system to:
route to the secondary computing device; and set it as the new primary when the primary computing device fails.
- 51. The machine readable medium of claim 43, further comprising instructions that when executed cause the system to:
check for the availability of computing devices periodically.
- 52. The machine readable medium of claim 43, further comprising instructions that when executed cause the system to:
provide a conversation message to a computing device.
- 53. The machine readable medium of claim 43, further comprising instructions that when executed cause the system to:
accept request for the location of a state from a computing device; and provide the location of the state to the computing device requesting it.
- 54. The machine readable medium of claim 43, further comprising instructions that when executed cause the system to:
share a state with at least two conversations.
- 55. The machine readable medium of claim 43, further comprising instructions that when executed cause the system to:
track a participating Web service that initiates a conversation.
- 56. The machine readable medium of claim 55, further comprising instructions that when executed cause the system to:
share a state with at least two Web services; and join the sessions of these services.
- 57. A system for handling conversation, comprising:
means for accepting a conversation message from a conversation partner; means for contacting a conversation manager to determine the location of the state for a conversation; means for accepting the location of a state from the conversation manager; and means for invoking a state on a computing device in order to respond to the conversation message received.
- 58. A computer data signal embodied in a transmission medium, comprising:
a code segment including instructions to accept a conversation message from a conversation partner; a code segment including instructions to contact a conversation manager to determine the location of the state for a conversation; a code segment including instructions to accept the location of a state from the conversation manager; and a code segment including instructions to invoke a state on a computing device in order to respond to the conversation message received.
CLAIM OF PRIORITY
[0001] This application claims priority from the following application, which is hereby incorporated by reference in its entirety:
[0002] U.S. Provisional Application No. 60/450,139, entitled SYSTEMS AND METHODS FOR LIGHTWEIGHT CONVERSATIONS, by Chris Fry, filed on Feb. 25, 2003 (Attorney Docket No. BEAS-01333US0).
[0003] The following application is cross-referenced and incorporated herein by reference:
[0004] U.S. Patent Application No. 09/785,693, entitled CONVERSATION MANAGEMENT SYSTEM FOR ENTERPRISE WIDE ELECTRONIC COLLABORATION, by Rocky Stewart et al., filed Feb. 16, 2001 (Attorney Docket No. BEAS-01033US5).
Provisional Applications (1)
|
Number |
Date |
Country |
|
60450139 |
Feb 2003 |
US |