IP Library Granted Patent US 9,198,193
Granted Patent B1
US 9,198,193 · App. 14/289,857 · Granted Nov 24, 2015

Systems and methods for controlling network connection overhead associated with mobile device communications

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,198,193
App. No.
14/289,857
Granted
Nov 24, 2015
Kind
B1
Abstract

Systems and methods include storing execution parameters for handling application messages for two or more client applications and storing callback paths for notifying the two or more client applications of transmission of the application messages. The method includes receiving an indication of a client application message available for transmission, receiving one or more network control messages that include an indication of an activity state of a network. The method includes determining whether to delay the client application message. Responsive to the determining, based at least in part on the indication from the one or more network control messages that a network connection is active, the method includes allowing transmission of the client application message, and sending an indication of acknowledgement by one or more of the callback paths.

Claims (43)

1. A computer-implemented method comprising:

storing execution parameters for handling application messages for two or more client applications;

storing callback paths for notifying the two or more client applications of transmission of the application messages;

receiving, by a processor of a computing device, and from at least one of the two or more client applications, an indication of a client application message available for transmission, wherein the indication includes a priority designation associated with the client application message;

receiving one or more network control messages associated with a persistent connection, wherein the one or more network control messages include an indication of an activity state of a network;

determining, based on the priority designation, the stored execution parameters and the one or more network control messages, whether to delay the client application message;

responsive to the determining, based at least in part on the indication of the activity state of the received one or more network control messages that a network connection is active, allowing transmission of the client application message; and

responsive to a transmission of the client application message, sending an indication of acknowledgement by one or more of the callback paths.

2. The computer-implemented method of claim 1 , wherein receiving the one or more network control messages includes receiving a radio status indicator associated with the computing device.

3. The computer-implemented method of claim 1 , wherein the persistent connection includes a communication channel between the computing device and a cell tower.

4. The computer-implemented method of claim 1 , wherein receiving the one or more network control messages by the persistent connection comprises receiving the messages by a cloud messaging connection.

5. The computer-implemented method of claim 1 , wherein receiving the indication of the client application message available for transmission further comprises receiving an indication of message priority, wherein a radio wake message is transmitted to activate the mobile device radio when a high priority message is received by the processor.

6. The computer-implemented method of claim 1 , further comprising allowing transmission of all delayed and pending client application messages when allowing transmitting the client application message.

7. The computer-implemented method of claim 1 , wherein allowing the transmission of the client application message causes at least one of the two or more client applications to initiate transmission of the client application message via the computing device.

8. A system comprising:

at least one memory for storing data and computer-executable instructions; and

at least one processor configured to access the at least one memory and further configured to execute the computer-executable instructions to cause the system to:

store execution parameters for handling application messages for two or more client applications;

store callback paths for notifying the two or more client applications of transmission of the application messages;

receive, by the at least one processor and from at least one of the two or more client applications, an indication of a client application message available for transmission, wherein the indication includes a priority designation associated with the client application message;

receive one or more network control messages associated with a persistent connection, wherein the one or more network control messages include an indication of an activity state of a network;

determine, based on the priority designation, the stored execution parameters and the one or more network control messages, whether to delay the client application message;

responsive to the determining, based at least in part on the indication of the activity state of the received one or more network control messages that a network connection is active, allow transmission of the client application message; and

responsive to a transmission of the client application message, send an indication of acknowledgement by one or more of the callback paths.

9. The system of claim 8 , wherein the one or more network control messages includes receiving a radio status indicator associated with a computing device.

10. The system of claim 8 , wherein the persistent connection includes a communication channel between a mobile computing device and a cell tower.

11. The system of claim 8 , wherein the persistent connection comprises a cloud messaging connection.

12. The system of claim 8 , wherein the client application message further comprises an indication of message priority, wherein a radio wake message is transmitted to activate a radio when a high priority message is received at the processor.

13. The system of claim 8 , wherein the at least one processor is further configured to allow transmission of all delayed and pending client application messages when allowing transmitting the client application message.

14. The system of claim 8 , wherein the at least one processor is further configured to communicate to at least one of the two or more client applications to initiate transmission of the client application message via the computing device when transmission is allowed.

15. A non-transitory computer-readable medium storing software comprising instructions executable by one or more processors which, upon such execution, cause the one or more processors to perform operations comprising:

storing execution parameters for handling application messages for two or more client applications;

storing callback paths for notifying the two or more client applications of transmission of the application messages;

receiving, by a processor of a computing device, and from at least one of the two or more client applications, an indication of a client application message available for transmission, wherein the indication includes a priority designation associated with the client application message;

receiving one or more network control messages associated with a persistent connection, wherein the one or more network control messages include an indication of an activity state of a network;

determining, based on the priority designation, the stored execution parameters and the one or more network control messages, whether to delay the client application message;

responsive to the determining, based at least in part on the indication of the activity state of the received one or more network control messages that a network connection is active, allowing transmission of the client application message; and

responsive to a transmission of the client application message, sending an indication of acknowledgement by one or more of the callback paths.

16. The non-transitory computer-readable medium of claim 15 , wherein receiving the one or more network control messages includes receiving a radio status indicator associated with the computing device.

17. The non-transitory computer-readable medium of claim 15 , wherein the persistent connection includes a communication channel between the computing device and a cell tower.

18. The non-transitory computer-readable medium of claim 15 , wherein receiving the one or more network control messages by the persistent connection comprises receiving the messages by a cloud messaging connection.

19. The non-transitory computer-readable medium of claim 15 , wherein receiving the client application message further comprises receiving an indication of message priority, wherein a radio wake message is transmitted to activate the mobile device radio when a high priority message is received at the processor.

20. The non-transitory computer-readable medium of claim 15 , wherein allowing the transmission of the client application message causes at least one of the two or more client applications to initiate transmission of the client application message via the computing device.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044334/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2014
From: WILLIAMS, MATTHEW JAY; JHANB, SUBIR
To: GOOGLE INC.
Reel/Frame 032985/0858 →