IP Library Granted Patent US 8,577,008
Granted Patent B2
US 8,577,008 · App. 13/772,740 · Granted Nov 5, 2013

Asynchronous calls using intermittent callback for delay sensitive applications

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 8,577,008
App. No.
13/772,740
Granted
Nov 5, 2013
Kind
B2
Abstract

A call handling system receives an asynchronous call request, from a call requester, requesting performance of an operation, where the call request includes a delay parameter specified by the call requester. The call handling system performs the requested operation, and sends a callback to the call requester, which includes partial results from performance of the requested operation, at selected intervals determined by the delay parameter.

Claims (75)

1. A method comprising:

performing, by a first device, a requested operation for a period of time associated with a first value of a delay parameter,

the delay parameter being specified by a second device;

determining, by the first device, whether the first value has expired;

sending, by the first device and to the second device when the first value has expired, a response that includes partial results from performance of the requested operation;

updating, by the first device, a second value based on the partial results;

determining, by the first device and using the updated second value, whether the partial results complete the requested operation; and

determining, by the first device and based on determining that the partial results complete the requested operation, that the requested operation is complete.

2. The method of claim 1 , further comprising:

determining, by the first device and based on determining that the partial results do not complete the requested operation, if a second delay parameter is received.

3. The method of claim 2 , further comprising:

storing, based on determining that the second delay parameter is received, information regarding the second delay parameter; and

performing the requested operation for a period of time associated with a value of the second delay parameter.

4. The method of claim 2 , further comprising:

terminating, based on determining that the second delay parameter is not received, the requested operation.

5. The method of claim 1 , further comprising:

receiving a request to perform the requested operation; and

storing, based on receiving the request, context information associated with the request,

the context information including at least one of:

the first value of the delay parameter,

a session identifier associated with the request,

a counter value indicating a number of units associated with the request, or

a call back routine identifier.

6. The method of claim 5 , where the second value is the counter value.

7. The method of claim 5 , where the requested operation is complete when a number of units associated with a result of the requested operation is equal to the counter value.

8. A device comprising:

a processor to:

perform a requested operation for a period of time associated with a first value of a delay parameter,

the delay parameter being specified by a second device;

determine whether the first value has expired;

send, to another second device when the first value has expired, a response that includes partial results from performance of the requested operation;

update a second value based on the partial results;

determine, using the updated second value, whether the partial results complete the requested operation; and

determine, based on determining that the partial results complete the requested operation, that the requested operation is complete.

9. The device of claim 8 , where the processor is further to:

determine, based on determining that the partial results do not complete the requested operation, if a second delay parameter is received.

10. The device of claim 9 , where the processor is further to:

store, based on determining that the second delay parameter is received, information regarding the second delay parameter; and

perform the requested operation for a period of time associated with a value of the second delay parameter.

11. The device of claim 9 , where the processor is further to:

terminate, based on determining that the second delay parameter is not received, the requested operation.

12. The device of claim 8 , where the processor is further to:

receive a request to perform the requested operation; and

store, based on receiving the request, context information associated with the request, the context information including at least one of:

the first value of the delay parameter,

a session identifier associated with the request,

a counter value indicating a number of units associated with the request, or

a call back routine identifier.

13. The device of claim 12 , where the second value is the counter value.

14. The device of claim 12 , where the requested operation is complete when a number of units associated with a result of the requested operation is equal to the counter value.

15. A non-transitory computer-readable medium storing instructions, the instructions comprising:

one or more instructions which, when executed by at least one processor, cause the at least one processor to:

perform a requested operation for a period of time associated with a first value of a delay parameter,

the delay parameter being specified by a second device;

determine whether the first value has expired;

send, to another second device when the first value has expired, a response that includes partial results from performance of the requested operation;

update a second value based on the partial results;

determine, using the updated second value, whether the partial results complete the requested operation; and

determine, based on determining that the partial results complete the requested operation, that the requested operation is complete.

16. The non-transitory computer-readable medium of claim 15 , further comprising:

one or more instructions to determine, based on determining that the partial results do not complete the requested operation, if a second delay parameter is received.

17. The non-transitory computer-readable medium of claim 16 , further comprising:

one or more instructions to store, based on determining that the second delay parameter is received, information regarding the second delay parameter; and

one or more instructions to perform the requested operation for a period of time associated with a value of the second delay parameter.

18. The non-transitory computer-readable medium of claim 16 , further comprising:

one or more instructions to terminate, based on determining that the second delay parameter is not received, the requested operation.

19. The non-transitory computer-readable medium of claim 15 , further comprising:

one or more instructions to receive a request to perform the requested operation; and

one or more instructions to store, based on receiving the request, context information associated with the request,

the context information including at least one of:

the first value of the delay parameter,

a session identifier associated with the request,

a counter value indicating a number of units associated with the request, or

a call back routine identifier.

20. The non-transitory computer-readable medium of claim 19 , where the requested operation is complete when a number of units associated with a result of the requested operation is equal to the counter value.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →