A method includes registering with a proxy for an auxiliary event-package, wherein the auxiliary event-package is provided by a plurality of auxiliary event-package servers. The method may further include subscribing to the auxiliary event-package through the proxy. The proxy forwards the subscription to the plurality of auxiliary event-package servers. The method may include receiving an initial notify from one of the auxiliary event-package servers and identifying the one of the auxiliary event-package servers as a primary handle for the auxiliary event-package. In addition, the method may include identifying others of the plurality of auxiliary event-package servers as secondary handles for the auxiliary event-package.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer-implemented method comprising: registering, by a user device, with a proxy for an auxiliary event-package, wherein the auxiliary event-package is provided by a plurality of auxiliary event-package servers; subscribing to the auxiliary event-package through the proxy, wherein the proxy forwards the subscription to the plurality of auxiliary event-package servers; receiving, from each of the plurality of auxiliary event-package servers, an accept notification and an initial notify; selecting, by the user device, one of the plurality of auxiliary event-package servers as a primary handle for the auxiliary event-package, wherein selecting the one of the auxiliary event-package servers as the primary handle for the auxiliary event-package comprises receiving a first notify message from the one of the auxiliary event-package servers prior to a notify message from the others of the plurality of auxiliary event-package servers and wherein the user device is configured to publish to the primary handle; and identifying others of the plurality of auxiliary event-package servers as secondary handles for the auxiliary event-package, wherein the user device is operable to receive notifications from the primary handle and the secondary handles.
2. The computer-implemented method of claim 1 , wherein selecting, by the user device, the one of the auxiliary event-package servers as the primary handle for the auxiliary event-package further comprises indicating to the plurality of auxiliary event-package servers an identity of the primary handle from the plurality of auxiliary event-package servers and limiting notifications and publications to and from the auxiliary event-package to the primary handle.
3. The computer-implemented method of claim 1 , further comprising: executing the auxiliary event-package using the primary handle.
4. The computer-implemented method of claim 1 , further comprising: determining that the primary handle is unavailable to execute the auxiliary event-package; and identifying one of the secondary handles as a new primary handle.
5. The computer-implemented method of claim 1 , wherein the auxiliary event-package comprises at least one of a stateful event-package and a stateless event-package.
6. The computer-implemented method of claim 1 , further comprising: performing at least one of a refresh or a re-subscribe; and reestablishing server-affinity to the one of the auxiliary event-package servers.
7. The computer-implemented method of claim 1 , wherein subscribing to the auxiliary event-package through the proxy comprises subscribing to an auxiliary event-package server that accepts multiple subscriptions for each address of record.
8. The computer-implemented method of claim 1 , further comprising: subscribing to the auxiliary event-package at the one of the auxiliary event-package servers, wherein the auxiliary event-package servers has an existing session for the auxiliary event-package; and receiving a notification from the one of the auxiliary event-package servers indicating that the one of the auxiliary event-package servers has added the subscription to the existing session for the auxiliary event-package.
9. The computer-implemented method of claim 1 , wherein the auxiliary event-package comprises at least one of a location service and a presence service.
10. A device comprising: a memory to store a plurality of instructions; and a processor configured to execute instructions in the memory to: register with a proxy for an auxiliary event-package, wherein the auxiliary event-package is provided via a plurality of auxiliary event-package servers; subscribe to the auxiliary event-package through the proxy, wherein the proxy forwards the subscription to the plurality of auxiliary event-package servers; select one of the auxiliary event-package servers as a primary server for the auxiliary event-package, wherein selecting the one of the auxiliary event-package servers as the primary handle for the auxiliary event-package comprises receiving a first notify message from the one of the auxiliary event-package servers prior to a notify message from the others of the plurality of auxiliary event-package servers and wherein the device is configured to publish to the primary handle; and identify others of the plurality of auxiliary event-package servers as secondary servers for the auxiliary event-package.
11. The device of claim 10 , wherein when selecting the one of the auxiliary event-package servers as the primary server for the auxiliary event-package, the processor is configured to indicate to the plurality of auxiliary event-package servers an identity of the primary server from the plurality of auxiliary event-package servers and limit notifications and publications to and from the auxiliary event-package to the primary server.
12. The device of claim 10 , wherein the processor is further configured to execute the auxiliary event-package using the primary server.
13. The device of claim 10 , wherein the processor is further configured to: determine that the primary server is unavailable to execute the auxiliary event-package; and identify one of the secondary servers as a new primary server.
14. The device of claim 10 , wherein the processor is further configured to: perform at least one of a refresh or a re-subscribe; and reestablish server-affinity to the one of the auxiliary event-package servers.
15. The device of claim 10 , wherein the processor is further configured to subscribe to the auxiliary event-package at the one of the auxiliary event-package servers, wherein the auxiliary event-package servers has an existing session for the auxiliary event-package; and receive a notification from the one of the auxiliary event-package servers indicating that the one of the auxiliary event-package servers has added the subscription to the existing session for the auxiliary event-package.
16. A non-transitory computer-readable medium including instructions to be executed by a processor, the instructions including one or more instructions, which when executed by the processor, for causes the processor to: register, by a user device, with a proxy for an auxiliary event-package, wherein the auxiliary event-package is provided by a plurality of auxiliary event-package servers; subscribe to the auxiliary event-package through the proxy, wherein the proxy forwards the subscription to the plurality of auxiliary event-package servers; receive an initial notify message from one of the auxiliary event-package servers; select, by the user device, the one of the auxiliary event-package servers as a primary server for the auxiliary event-package, wherein selecting the one of the auxiliary event-package servers as the primary handle for the auxiliary event-package comprises receiving a first notify message from the one of the auxiliary event-package servers prior to a notify message from the others of the plurality of auxiliary event-package servers and wherein the user device is configured to publish to the primary handle; identify others of the plurality of auxiliary event-package servers as secondary servers for the auxiliary event-package; and execute the auxiliary event-package using the primary server.
17. The non-transitory computer-readable medium of claim 16 , where the one or more instructions further includes instructions for causing the processor to: determine that the primary server is unavailable to execute the auxiliary event-package; and identify one of the secondary servers as a new primary server.
18. A system comprising: a plurality of auxiliary event-package servers configured to provide an auxiliary event-package; a session initiation protocol (SIP) proxy; and a user device comprising: a memory to store a plurality of instructions; and a processor configured to execute instructions in the memory to: subscribe to the auxiliary event-package through the proxy, wherein the proxy forwards the subscription to the plurality of auxiliary event-package servers; receive a first initial notify message from one of the auxiliary event-package servers prior to a notify message from the others of the plurality of auxiliary event-package servers; select the one of the auxiliary event-package servers that sends the first initial notify message as a primary server for the auxiliary event-package, wherein the user device is configured to publish to the primary handle; and identify others of the plurality of auxiliary event-package servers as secondary servers for the auxiliary event-package; and a transceiver to transmit and receive SIP messages.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
August 2, 2011
August 27, 2013
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.