IP Library Granted Patent US 9,408,240
Granted Patent B2
US 9,408,240 · App. 12/065,287 · Granted Aug 2, 2016

Method and system for communicating message notifications to mobile devices

Inventors: Alain Caron (Montreal, CA); Sylvain Legault (Pierrefonds, CA); Haraldur Thorkelsson (Montréal, CA); Felix-Etienne Trepanier (Montreal, CA); Teresa Hunkeler (Montreal, CA); Jean Regnier (Laval, CA)
Assignee: Synchronica plc
H04W76/022H04L69/14H04L69/16H04W68/00H04W80/06
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,408,240
App. No.
12/065,287
Granted
Aug 2, 2016
Kind
B2
Abstract

There is disclosed a system and method for choosing between different Communication Initiation Request (CIR) channels in a mobile communications system when there are multiple CIR channels amongst which to choose. Additionally, there is disclosed a system and method for exploiting a Transmission Control Protocol (TCP) connection usage pattern that is characterized by periods of inactivity.

Claims (57)

1. A method for transmitting Communication Initiation Request (CIR) messages from a server to a mobile client during a session, the client supporting a plurality of CIR channel bindings, the method comprising:

selecting, by a server, a first one of a plurality of CIR channel bindings supported by a mobile client;

transmitting, by the server, at least one CIR message via said first CIR channel binding to the mobile client over a unidirectional channel from the server to the mobile client;

determining whether the server receives a polling request from the mobile client over a bi-directional data channel between the server and the mobile client, in response to the at least one CIR message; and

if the server does not receive the polling request from the mobile client, then:

selecting, by the server, a second one of the plurality of CIR channel bindings supported by the mobile client; and

subsequently transmitting, by the server, at least one subsequent CIR message via said second CIR channel binding to the mobile client over the unidirectional channel from the server to the mobile client,

wherein said at least one CIR message and said at least one subsequent CIR message are transmitted during the same session.

2. The method as claimed in claim 1 , further comprising a client-server negotiation during which notice is received from the client of the plurality of CIR channel bindings supported by the client.

3. The method as claimed in claim 2 , wherein said client-server negotiation during which notice is received from the client of the plurality of CIR channel bindings supported by the client further includes receiving notice from the client of an order in which said plurality of CIR channel bindings are to be selected.

4. The method as claimed in claim 1 , wherein the plurality of CIR channel bindings are selected from the group consisting of a TCP CIR channel binding, UDP CIR channel binding, HTTP CIR channel binding, SMS CIR channel binding, WAP push over SMS as bearer CIR channel binding, and WAP push over UDP/IP as CIR bearer channel binding.

5. The method as claimed in claim 1 , wherein the plurality of CIR channel bindings includes a TCP CIR channel binding and wherein the TCP CIR channel binding is a preferred selected CIR channel binding.

6. The method as claimed in claim 1 , wherein said first selected CIR channel binding is first in an order list, and said second selected CIR channel binding is second in said order list.

7. The method as claimed in claim 6 , wherein said order list specifies most preferred to least preferred CIR channel bindings vis-à-vis the client.

8. The method as claimed in claim 7 , wherein the client runs on a mobile end system having at least one computer readable medium, said order list stored on a computer readable medium of said mobile end system.

9. The method as claimed in claim 6 , wherein said order list specifies most preferred to least preferred CIR channel bindings vis-à-vis said server.

10. The method as claimed in claim 9 , wherein said order list is stored on a computer readable medium remote from a mobile end system upon which the client runs.

11. The method as claimed in claim 6 , wherein a weighting algorithm is applied to generate said order list, said weighting algorithm taking into account both a client order list that specifies most preferred to least preferred CIR channel bindings vis-à-vis the client, and a server order list that specifies most preferred to least preferred CIR channel bindings vis-à-vis said server.

12. The method as claimed in claim 1 , further comprising receiving notice from the client of the plurality of CIR channel bindings supported by the client, said receiving notice from the client of the plurality of CIR channel bindings supported by the client carried out during a login procedure between said server and the client.

13. The method as claimed in claim 1 , wherein said first selected CIR channel binding is a TCP CIR channel binding and said second selected CIR channel binding is an SMS CIR channel binding.

14. A non-transitory computer readable medium comprising memory configured to cause a computer, using computer code, to:

select a first one of a plurality of Communication Initiation Request (CIR) channel bindings supported by a mobile client;

transmit at least one CIR message via said first CIR channel binding to the mobile client over a unidirectional channel from the computer to the mobile client;

determine whether the computer receives a polling request from the mobile client over a bi-directional data channel between the computer and the mobile client, in response to the at least one CIR message; and

if the computer does not receive the polling request from the mobile client, then:

select a second one of the plurality of CIR channel bindings supported by the mobile client; and

subsequently transmit at least one subsequent CIR message via said second CIR channel binding to the mobile client over the unidirectional channel from the computer to the mobile client,

wherein said at least one CIR message and said at least one subsequent CIR message are transmitted during the same session.

15. In a mobile communications system, a server in a ground end system, the server in a communication session with at least one mobile client that supports a plurality of Communication Initiation Request (CIR) channel bindings, memory configured to cause the server, using computer code, to:

generate CIR messages;

select a first one of a plurality of CIR channel bindings supported by a mobile client;

transmit at least one CIR message via said first selected CIR channel binding to the mobile client over a unidirectional channel from the server to the mobile client;

determine whether the server receives a polling request from the mobile client over a bi-directional data channel between the server and the mobile client, in response to the at least one CIR message;

if the server does not receive the polling request from the mobile client, then:

select a second one of the plurality of CIR channel bindings supported by the mobile client; and

transmit at least one subsequent CIR message via said second selected CIR channel binding to the mobile client over the unidirectional channel from the server to the mobile client,

wherein said at least one CIR message and said at least one subsequent CIR message are transmitted during the same session.

16. The ground end system as claimed in claim 15 , said memory further configured to cause the server to carry out client-server negotiation during which notice is received from the client of the plurality of CIR channel bindings supported by the client.

17. The ground end system as claimed in claim 16 , wherein carrying out client-server negotiation includes memory configured to cause the server to provide the client with a CIR poll URL.

18. The ground end system as claimed in claim 15 , wherein said server is adapted to receive notice from the client of an order in which said plurality of CIR channel bindings are to be selected.

19. The ground end system as claimed in claim 15 , wherein the plurality of CIR channel bindings are selected from the group consisting of a TCP CIR channel binding, UDP CIR channel binding, HTTP CIR channel binding, SMS CIR channel binding, WAP push over SMS as bearer CIR channel binding, and WAP push over UDP/IP as CIR bearer channel binding.

20. The ground end system as claimed in claim 15 , wherein the plurality of CIR channel bindings includes a TCP CIR channel binding and wherein said server identifies the TCP CIR channel binding as a preferred CIR channel binding for selection.

21. The ground end system as claimed in claim 15 , wherein said first selected CIR channel binding is first in an order list stored on a computer readable medium of the ground end system, and said second selected CIR channel binding is second in said order list.

22. The ground end system as claimed in claim 21 , said memory further configured to cause the server to dynamically change said order list upon detection that a prerequisite for use of one of said plurality of CIR channel bindings is lacking.

23. The ground end system as claimed in claim 21 , wherein said order list specifies most preferred to least preferred CIR channel bindings vis-à-vis the server.

24. The ground end system as claimed in claim 21 , said memory further configured to cause the server to apply a weighting algorithm to generate another order list, said weighting algorithm taking into account a client order list, adapted to be received at said server, that specifies most preferred to least preferred CIR channel bindings vis-à-vis the client, and also taking into account said order list stored on said sever that specifies most preferred to least preferred CIR channel bindings vis-à-vis said server.

25. The ground end system as claimed in claim 15 , wherein said first selected CIR channel binding is a TCP CIR channel binding and said second selected CIR channel binding is an SMS CIR channel binding.

26. The ground end system as claimed in claim 15 , said memory further configured to cause the server to detect a condition to trigger generation of said CIR message.

27. The ground end system as claimed in claim 26 , said memory further configured to cause the server to establish a data channel for the exchange of Client-Server Protocol primitives between the client and the server, said condition comprising a selected one of the following: said data channel having not been established, halting of event communication in said data channel.

28. A non-transitory computer readable medium comprising memory configured to cause a computer, using computer code, to:

select a first one of a plurality of CIR channel bindings supported by a mobile client;

transmit at least one CIR message via said first CIR channel binding to the mobile client over a unidirectional channel from the computer to the mobile client;

determine whether the computer receives a polling request from the mobile client over a bi-directional data channel between the computer and the mobile client, in response to the at least one CIR message; and

if the computer does not receive the polling request from the mobile client, then:

select a second one of the plurality of CIR channel bindings supported by the mobile client; and

subsequently transmit at least one subsequent CIR message via said second CIR channel binding to the mobile client over the unidirectional channel from the computer to the mobile client;

wherein said at least one CIR message and said at least one subsequent CIR message are transmitted during the same session.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2011
From: NOKIA CORPORATION
To: SYNCHRONICA PLC
Reel/Frame 026818/0277 →
ASSET PURCHASE AGREEMENT Recorded Jul 29, 2010
From: OZ COMMUNICATIONS INC.
To: OZ TECHNICAL SERVICES INC.
Reel/Frame 024763/0655 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR SHOULD BE LISTED AS OZ TECHNICAL SERVICES INC. PREVIOUSLY RECORDED ON REEL 022215 FRAME 0686. ASSIGNOR(S) HEREBY CONFIRMS THE ASSET PURCHASE AGREEMENT. Recorded Jul 29, 2010
From: OZ TECHNICAL SERVICES INC.
To: NOKIA CORPORATION
Reel/Frame 024763/0678 →
ASSET PURCHASE AGREEMENT Recorded Feb 5, 2009
From: OZ COMMUNICATIONS INC.
To: NOKIA CORPORATION
Reel/Frame 022215/0686 →
RELEASE OF SECURITY INTEREST Recorded Feb 5, 2009
From: WF FUND III LIMITED PARTNERSHIP C/O/B AS WELLINGTON FINANCIAL LP AND WELLINGTON FINANCIAL FUND III
To: OZ COMMUNICATIONS INC.
Reel/Frame 022215/0712 →
SECURITY AGREEMENT Recorded May 6, 2008
From: OZ COMMUNICATIONS, INC.
To: WF FUND III LIMITED PARTNERSHIP C/O/B AS WELLINGTON FINANCIAL LP AND WELLINGTON FINANCIAL FUND III
Reel/Frame 020903/0975 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2008
From: LEGAULT, SYLVAIN; TREPANIER, FELIX-ETIENNE; THORKELSSON, HARALDUR; HUNKELER, TERESA; CARON, ALAIN; REGNIER, JEAN
To: OZ COMMUNICATIONS, INC.
Reel/Frame 020727/0482 →
Priority Claims (1)
CA 2517526 · Aug 30, 2005 · national
Continuity (2)
Provisional Application 60712090 · Aug 30, 2005
Related Publication 20080263170A1 · Oct 23, 2008