Claims
- 1. In a server federation that includes a plurality of servers that communicate with a plurality of client devices, a method for fulfilling a request comprising the following:
a first server of the plurality of servers receiving a request for a service; the first server determining that further information is needed from at least a second server in order to respond to the request for the service; the first server structuring a request for the further information utilizing a schema recognized by both the first server and the second server, wherein the meaning of the request for further information is implied by the schema; the first server dispatching the request for the further information to the second server using a transport-independent messaging infrastructure; the first server receiving a response from the second server, the response including the further information; and the first server using the further information to respond to the request for the service.
- 2. A method in accordance with claim 1, wherein the first server structuring a request for further information comprises the following: the first server structuring the request in accordance with an eXtensible Markup Language (XML).
- 3. A method in accordance with claim 1, wherein the first server receiving a response from the second server comprises the following:
the first server receiving the response from the second server in the form of a data structure structured in accordance with an extensible Markup Language (XML).
- 4. A method in accordance with claim 1, wherein the first server dispatching the request for the further information to the second server using a transport-independent messaging infrastructure comprises the following:
the first server dispatching the request for the further information using a Simple Object Access Protocol (SOAP).
- 5. A method in accordance with claim 4, wherein the first server structuring a request for the further information comprises the following:
the first server structuring the request in accordance with an extensible Markup Language (XML).
- 6. A method in accordance with claim 1, wherein the first server receiving a response from the second server comprises the following:
the first server receiving the response from the second server using a Simple Object Access Protocol (SOAP).
- 7. A method in accordance with claim 6, wherein the first server receiving a response from the second server further comprises the following:
the first server receiving the response from the second server in the form of a data structure structured in accordance with an extensible Markup Language (XML).
- 8. A method in accordance with claim 1, wherein the first server dispatching the request for the further information to the second server using a transport-independent messaging infrastructure comprises the following:
a messaging component communicating with a common Application Program Interface that supports a plurality of transports.
- 9. A method in accordance with claim 8, wherein the first server dispatching the request for the further information to the second server using a transport-independent messaging infrastructure comprises the following:
the common Application Program Interface communicating with an appropriate one of the plurality of transports in response to the messaging component communicating with the common Application Program Interface.
- 10. A method in accordance with claim 9, wherein the common Application Program Interface communicating with an appropriate one of the plurality of transports comprises the following:
the common Application Program Interface communicating with a HyperText Transport Protocol (HTTP) transport.
- 11. A method in accordance with claim 9, wherein the common Application Program Interface communicating with an appropriate one of the plurality of transports comprises the following:
the common Application Program Interface communicating with an MSMQ binary transport.
- 12. A method in accordance with claim 8, wherein the common Application Program Interface communicating with an appropriate one of the plurality of transports comprises the following:
the common Application Program Interface communicating with a multicast transport.
- 13. A method in accordance with claim 8, wherein the common Application Program Interface communicating with an appropriate one of the plurality of transports comprises the following:
the common Application Program Interface communicating with an SMTP transport.
- 14. A method in accordance with claim 1, wherein the first server of the plurality of servers receiving a request for service comprises the following:
the first server of the plurality of servers receiving the request for service from a third server.
- 15. A method in accordance with claim 1, wherein the first server of the plurality of servers receiving a request for service comprises the following:
the first server of the plurality of servers receiving the request for service from a client.
- 16. A computer program product for use in a first server of a server federation, the server federation including a plurality of servers that communicate with a plurality of client devices, the computer program product including a computer-readable medium having stored thereon the following:
computer-executable instructions for detecting the receipt of a request for a service; computer-executable instructions for determining that further information is needed from at least a second server in order to respond to the request for the service; computer-executable instructions for structuring a request for the further information utilizing a schema recognized by both the first server and the second server, wherein the meaning of the request for further information is implied by the schema; computer-executable instructions for causing the request for the further information to be dispatched to the second server using a transport-independent messaging infrastructure; computer-executable instructions for detecting the receipt of a response from the second server; and computer-executable instructions for using the further information to respond to the request for the service.
- 17. A computer program product in accordance with claim 16, wherein the computer-readable medium is a physical storage medium.
- 18. A computer program product in accordance with claim 16, wherein the computer-executable instructions for structuring a request for the further information utilizing a schema recognized by both the first server and the second server comprise the following:
computer-executable instructions for structuring the request in accordance with an extensible Markup Language (XML).
- 19. A computer program product in accordance with claim 16, wherein the computer-executable instructions for causing the request for the further information to be dispatched to the second server using a transport-independent messaging infrastructure comprise the following:
computer-executable instructions for communicating with a common Application Program Interface that supports a plurality of transports.
- 20. A computer program product in accordance with claim 19, wherein the computer-executable instructions for causing the request for the farther information to be dispatched to the second server using a transport-independent messaging infrastructure further comprise the following:
computer-executable instructions for implementing the common Application Program Interface such that the common Application Program Interface communicates with an appropriate one of the plurality of transports in response to the execution of the computer-executable instructions for communicating with the common Application Program Interface.
- 21. In a network that includes a plurality of servers that communicate with a plurality of client devices including a first client device and a second client device, a method for facilitating a mid-session transition between the first client device and the second client device, the method comprising the following:
retrieving state information stored on at least one server; interacting in a session with the first client device resulting in an update of the state information; storing the updated information on the at least one server; retrieving the updated state information when the session is continued on the second client device; and interacting in the continued session with the second client device based on the updated state information.
- 22. A method in accordance with claim 21, further comprising the following:
authenticating a user of the first client device before allowing the state information to be updated in response to interacting in the session with the first client device.
- 23. A method in accordance with claim 22, further comprising the following:
authenticating a user of the second client device as being the same user as the user of the first client device before interacting in the continued session with the second client device.
- 24. A method in accordance with claim 21, wherein the state information is stored on the at least one server utilizing a data structure that follows a schema recognized by the plurality of servers, wherein the meaning of the state information is implied by the schema.
- 25. A method in accordance with claim 24, wherein the data structure is structured in accordance with an extensible Markup Language (XML).
- 26. A method in accordance with claim 21, wherein the at least one server comprises a server federation.
- 27. A method in accordance with claim 21, wherein at least a portion of the state information includes user interface information, wherein interacting in a session with the first client device comprises the following:
determining first user interface characteristics of the first client device; and providing a first set of the user interface information to the first client device, the first set of the user interface information tailored towards the first user interface characteristics.
- 28. A method in accordance with claim 27, wherein interacting in the continued session with the second client device comprises the following:
determining second user interface characteristics of the second client device; and providing a second set of the user interface information to the second client device, the second set of user interface information tailored towards the second user interface characteristics.
- 29. A method in accordance with claim 28, wherein the first and second client devices have the same user interface capabilities, wherein the first and second sets of state information comprise substantially the same user interface information thereby allowing the first and second client devices to display the same information.
- 30. A method in accordance with claim 28, wherein the first and second client devices have different user interface capabilities, wherein the first and second sets of user interface information are different.
- 31. A method in accordance with claim 30, wherein interacting in a session with the first client device comprises the following:
interacting in the session with a personal computer.
- 32. A method in accordance with claim 31, wherein the personal computer comprises a first personal computer, wherein interacting in the continued session with the second client device comprises the following:
interacting in the continued session with a second personal computer.
- 33. A method in accordance with claim 31, wherein interacting in the continued session with the second client device comprises the following:
interacting in the continued session with a mobile telephone.
- 34. A method in accordance with claim 30, wherein interacting in a session with the first client device comprises the following: interacting in the session with a mobile telephone.
- 35. A method in accordance with claim 34, wherein the mobile telephone comprises a first mobile telephone, wherein interacting in the continued session with the second client device comprises the following:
interacting in the continued session with a second mobile telephone.
- 36. A method in accordance with claim 34, wherein interacting in the continued session with the second client device comprises the following:
interacting in the continued session with a personal computer.
- 37. A method in accordance with claim 21, further comprising the following:
at least temporarily ceasing interacting in the session with the first client device, wherein interacting in the continued session with the second client device occurs after at least temporarily ceasing interaction in the session with the first client device.
- 38. A method in accordance with claim 21, wherein retrieving state information stored on at least one server comprises the following:
retrieving preference information stored on the at least one server.
- 39. A method in accordance with claim 21, wherein storing the updated information on the at least one server comprises the following:
storing session status information for the session on the at least one server.
- 40. A method in accordance with claim 21, wherein the plurality of servers comprises a server federation, wherein the acts of retrieving state information, interacting in a session with the first client device, storing the updated information, retrieving the updated state information, and interacting in the continued session are cooperatively performed by two or more servers of the server federation.
- 41. A computer program product for use in a network that includes a plurality of servers that communicate with a plurality of client devices including a first client device and a second client device, the computer program product for implementing a method for facilitating a mid-session transition between the first client device and the second client device, the computer program product comprising a computer-readable medium having stored thereon the following:
computer-executable instructions for detecting the receipt of state information stored on at least one server; computer-executable instructions for causing interaction in a session with the first client device; computer-executable instructions for causing the state information to be updated in response to interaction in the session with the first client device; computer-executable instructions for causing the updated information to be stored on the at least one server; computer-executable instructions for detecting the receipt of the updated state information when the session is continued on the second client device; and computer-executable instructions for causing interaction in the continued session with the second client device based on the updated state information.
- 42. A computer program product in accordance with claim 41, wherein the computer-readable medium is a physical storage medium.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present invention claims priority from United States provisional application Ser. No. 60/213,562, filed on Jun. 22, 2000 and entitled “Distributed Computing Services Platform”, which provisional application is incorporated herein by reference in its entirety.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60213562 |
Jun 2000 |
US |