IP Library Granted Patent US 9,203,906
Granted Patent B2
US 9,203,906 · App. 13/931,941 · Granted Dec 1, 2015

Systems and methods for enabling data communications to a telephony device

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,203,906
App. No.
13/931,941
Granted
Dec 1, 2015
Kind
B2
Abstract

Systems and methods for determining an interval for the transmission of keep alive messages that will prevent a pinhole of a data network interface device from closing are driven by a software client on a computing device. The software client informs a network server of a first time interval, and the server uses the first time interval to send communications to the computing device that trigger the computing device to send keep alive messages to the server. If the first time interval does not result in the pinhole closing, the software client instructs the network server to send messages to the computing device that trigger the computing device to send keep alive messages to the server according to a second, longer time interval. This process repeats until the pinhole ultimately closes, and then the last interval that did not cause the pinhole to close is selected for use.

Claims (32)

1. A method of sending wake up messages to a software application of a computing device that is communicating with a data network via a network interface device that maintains a pinhole timer for incoming communications directed to the computing device, comprising the sequential steps of:

receiving a communication from the software application that indicates a time interval at which wake up messages are to be sent to the software application while the software application is in the background of an operating system of the computing device for a background period;

sending a wake up message to the software application each time that the time interval expires until the remaining time in the background period is equal to twice the time interval or less; and

sending a wake up message to the software application when the remaining time in the background period is approximately equal to the sum of the time interval and a time increment.

2. The method of claim 1 , further comprising sending a last wake up message to the software application just before the background period ends.

3. The method of claim 1 , wherein the step of receiving a communication comprises receiving a Session Initiation Protocol (SIP) REGISTER message from the software application.

4. The method of claim 3 , wherein the SIP REGISTER message includes the time interval in a header field of the SIP REGISTER message.

5. The method of claim 1 , wherein the step of receiving a communication comprises receiving a communication that also includes the time increment.

6. The method of claim 5 , wherein the step of receiving a communication comprises receiving a Session Initiation Protocol (SIP) REGISTER message that includes the time increment in a first header field of the SIP REGISTER message.

7. The method of claim 1 , wherein the step of receiving a communication comprises receiving a communication sent from the software application just before the software application is moved to the background in an operating system of the computing device.

8. A system for sending wake up messages to a software application of a computing device that is communicating with a data network via a network interface device that maintains a pinhole timer for incoming communications directed to the computing device, comprising:

means for receiving a communication from the software application that indicates a time interval at which wake up messages are to be sent to the software application while the software application is in the background of an operating system of the computing device for a background period;

means for sending a wake up message to the software application each time that the time interval expires until the remaining time in the background period is equal to twice the time interval or less; and

means for sending a wake up message to the software application when the remaining time in the background period is approximately equal to the sum of the time interval and a time increment.

9. A non-transitory computer readable medium storing a set of instructions which, when performed by one or more processors of a server, cause the server to perform a method of sending wake up messages to a software application of a computing device that is communicating with a data network via a network interface device that maintains a pinhole timer for incoming communications directed to the computing device, the method comprising the sequential steps of:

receiving a communication from the software application that indicates a time interval at which wake up messages are to be sent to the software application while the software application is in the background of an operating system of the computing device for a background period;

sending a wake up message to the software application each time that the time interval expires until the remaining time in the background period is equal to twice the time interval or less; and

sending a wake up message to the software application when the remaining time in the background period is approximately equal to the sum of the time interval and a time increment.

10. The non-transitory computer readable medium of claim 9 , wherein the instructions cause the server to perform a method that further comprises sending a last wake up message to the software application just before the background period ends.

11. The non-transitory computer readable medium method of claim 9 , wherein the step of receiving a communication comprises receiving a Session Initiation Protocol (SIP) REGISTER message from the software application.

12. The non-transitory computer readable medium of claim 11 , wherein the SIP REGISTER message includes the time interval in a header field of the SIP REGISTER message.

13. The non-transitory computer readable medium of claim 9 , wherein the step of receiving a communication comprises receiving a communication that also includes the time increment.

14. The non-transitory computer readable medium of claim 13 , wherein the step of receiving a communication comprises receiving a Session Initiation Protocol (SIP) REGISTER message that includes the time increment in a first header field of the SIP REGISTER message.

15. The non-transitory computer readable medium of claim 9 , wherein the step of receiving a communication comprises receiving a communication sent from the software application just before the software application is moved to the background in an operating system of the computing device.

16. A system for sending wake up messages to a software application of a computing device that is communicating with a data network via a network interface device that maintains a pinhole timer for incoming communications directed to the computing device, comprising the sequential steps of:

a receiving unit that receives a communication from the software application that indicates a time interval at which wake up messages are to be sent to the software application while the software application is in the background of an operating system of the computing device for a background period; and

a keep alive messaging unit that sends a wake up message to the software application each time that the time interval expires until the remaining time in the background period is equal to twice the time interval or less, and that sends a wake up message to the software application when the remaining time in the background period is approximately equal to the sum of the time interval and a time increment.

17. The system of claim 16 , wherein the keep alive messaging unit also sends a last wake up message to the software application just before the background period ends.

18. The system of claim 16 , wherein the receiving unit receives a Session Initiation Protocol (SIP) REGISTER message from the software application.

19. The system of claim 18 , wherein the SIP REGISTER message includes the time interval in a header field of the SIP REGISTER message.

20. The system of claim 16 , wherein the receiving unit receives a communication that also includes the time increment.

21. The system of claim 20 , wherein the receiving unit receives a Session Initiation Protocol (SIP) REGISTER message that includes the time increment in a first header field of the SIP REGISTER message.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Jul 28, 2022
From: JPMORGAN CHASE BANK, N.A.
To: VONAGE AMERICA INC.; VONAGE HOLDINGS CORP.; VONAGE BUSINESS INC.; NEXMO INC.; TOKBOX, INC.
Reel/Frame 061002/0340 →
CHANGE OF NAME Recorded Jun 8, 2022
From: VONAGE AMERICA INC.
To: VONAGE AMERICA LLC
Reel/Frame 060313/0447 →
SECURITY INTEREST Recorded Nov 12, 2018
From: VONAGE AMERICA INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 047502/0628 →
MERGER Recorded Mar 31, 2016
From: VONAGE NETWORK LLC
To: VONAGE AMERICA INC.
Reel/Frame 038320/0327 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT APPLICATION NUMBER 13966486 PREVIOUSLY RECORDED ON REEL 033545 FRAME 0424. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jan 21, 2016
From: VONAGE HOLDINGS CORP.; VONAGE NETWORK LLC; VONAGE BUSINESS SOLUTIONS INC.; VONAGE AMERICA INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 037570/0203 →
SECURITY INTEREST Recorded Jul 29, 2015
From: VONAGE HOLDINGS CORP.; VONAGE AMERICA INC.; VONAGE BUSINESS SOLUTIONS, INC.; VONAGE NETWORK LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 036205/0485 →
SECURITY INTEREST Recorded Aug 14, 2014
From: VONAGE HOLDINGS CORP.; VONAGE NETWORK LLC; VONAGE BUSINESS SOLUTIONS INC.; VONAGE AMERICA INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033545/0424 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2013
From: WOOTTON, MARK; ILTUS, SAGI
To: VONAGE NETWORK, LLC
Reel/Frame 030744/0204 →