IP Library Granted Patent US 10,924,926
Granted Patent B1
US 10,924,926 · App. 16/289,205 · Granted Feb 16, 2021

Communications token pre-fetch

Inventors: Vinaya Nadig (Redmond, WA); Tu Dien Do (Ontario, CA)
Assignee: Amazon Technologies, Inc.
H04W12/06G10L15/16G10L15/1822G10L15/22H04L63/0807H04L63/102H04L65/1006H04L65/608G10L2015/223
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 10,924,926
App. No.
16/289,205
Granted
Feb 16, 2021
Kind
B1
Abstract

Techniques for using sending communication data using a first communication system and a second communication system are described. When a request is received to send communication data, it is determined that sending the communication data includes the second communication system. A request for updated identification information, such as a security token, is therefore sent to the second communication system prior to, for example, determining further account information related to the initiator of the communication and/or an identity of a recipient of the communication. While the request is pending, additional requests for the identification information are delayed. When the new identification information is received, the communication data is sent.

Claims (83)

1. A computer-implemented method comprising:

receiving, at a first communication system and from a second communication system, a first token associated with a first user profile associated with the second communication system and a second device, the first token being valid for a first period of time during which a plurality of two-way voice communications can be performed using the first communication system and the second communication system;

receiving, at the first communication system and from a first device, a first request to establish a first two-way voice communication with the second device;

determining that the second device is associated with the second communication system;

determining that the first token has expired;

sending, to the second communication system, a second request for an updated token;

after sending the second request, receiving a second token from the second communication system;

sending, to the second communication system, the first request and the second token;

establishing the first two-way voice communication between the first device and the second device;

receiving, at the first communication system from the first device, a third request to establish a second two-way voice communication with the second device;

determining the second token is unexpired; and

sending, to the second communication system, the third request and the second token.

2. The computer-implemented method of claim 1 , further comprising:

determining that a response to the second request has not been received by the first communication system; and

based at least in part on determining that the response has not been received, delaying sending, to the second communication system, a fourth request for the updated token.

3. The computer-implemented method of claim 2 , further comprising:

prior to receiving the second token, storing an indication of a time of sending the second request;

based at least in part on the time of sending and a present time, sending the fourth request; and

receiving, from the second communication system, a third token.

4. A computer-implemented method comprising:

receiving, at a first communication system and from a second communication system, a first token associated with a first user profile associated with the second communication system and a second device, the first token being valid for a period of time during which a plurality of communication data can be sent from the first communication system to the second communication system;

receiving, at the first communication system from a first device, a first request to send first communication data to the second device;

determining that the first request corresponds to the second communication system;

based at least in part on determining that the first request corresponds to the second communication system, sending, to the second communication system, a second request for an updated token associated with the first user profile;

after sending the second request, receiving a second token from the second communication system;

sending, to the second communication system and using the second token, a third request for the first communication data to be sent to the second device;

receiving, at the first communication system from the first device, a fourth request to send second communication data to the second device;

determining the second token is unexpired; and

sending, to the second communication system, the second communication data and the second token.

5. The computer-implemented method of claim 4 , further comprising, prior to receiving the second token:

receiving a fifth request for the first token;

determining that a response to the second request has not been received by the first communication system; and

based at least in part on determining that the response has not been received, delaying sending, to the second communication system, a sixth request for the updated token.

6. The computer-implemented method of claim 5 , further comprising:

determining that the second request has expired; and

based at least in part on determining that the second request has expired, sending the sixth request to the second communication system.

7. The computer-implemented method of claim 6 , further comprising:

storing an indication of a time of sending the second request,

wherein determining that the second request has expired is based at least in part on the time of sending and a current time.

8. The computer-implemented method of claim 4 , further comprising:

determining a time of receipt of the first token,

wherein sending the second request is based at least in part on the time of receipt and a current time.

9. The computer-implemented method of claim 4 , further comprising:

determining that the first request includes of a name of the second communication system.

10. The computer-implemented method of claim 4 , further comprising:

determining a second user profile associated with the first device;

determining contact data associated with the second user profile; and

determining that an intended recipient of the first communication data is absent from the contact data.

11. The computer-implemented method of claim 4 , further comprising:

determining a second user profile associated with the first device;

determining, in the second user profile, first data associated with an intended recipient of the first communication data; and

determining that the first data indicates that the intended recipient prefers the second communication system.

12. A first system comprising:

at least one processor; and

at least one memory comprising instructions that, when executed by the at least one processor, cause the first system to:

receive, at a first communication system and from a second communication system, a first token associated with a first user profile associated with the second communication system and a second device, the first token being valid for a period of time during which a plurality of communication data can be sent from the first communication system to the second communication system;

receive, at the first communication system from a first device, a first request to send first communication data to the second device;

determine that the first request corresponds to the second communication system;

based at least in part on determining that the first request corresponds to the second communication system, send, to the second communication system, a second request for an updated token associated with the first user profile;

after sending the second request, receive a second token from the second communication system;

send, to the second communication system and using the second token, a third request for the first communication data to be sent to the second device;

receive, at the first communication system from the first device, a fourth request to send second communication data to the second device;

determine the second token is unexpired; and

send, to the second communication system, the second communication data and the second token.

13. The first system of claim 12 , wherein the at least one memory further comprises instructions that, when executed by the at least one processor, further cause the first system to:

receive a fifth request for the first token;

determine that a response to the second request has not been received by the first communication system; and

based at least in part on determining the response has not been received, delay sending, to the second communication system, a sixth request for the updated token.

14. The first system of claim 13 , wherein the at least one memory further comprises instructions that, when executed by the at least one processor, further cause the first system to:

determine that the second request has expired; and

based at least in part on determining that the second request has expired, send the sixth request to the second communication system.

15. The first system of claim 14 , wherein the at least one memory further comprises instructions that, when executed by the at least one processor, further cause the first system to:

store an indication of a time of sending the second request; and

determine the second request has expired based at least in part on the time of sending and a current time.

16. The first system of claim 12 , wherein the at least one memory further comprises instructions that, when executed by the at least one processor, further cause the first system to:

determine a time of receipt of the first token; and

send the second request based at least in part on the time of receipt and a current time.

17. The first system of claim 12 , wherein the at least one memory further comprises instructions that, when executed by the at least one processor, further cause the first system to:

determine that the first request includes a name of the second communication system.

18. The first system of claim 12 , wherein the at least one memory further comprises instructions that, when executed by the at least one processor, further cause the first system to:

determine a second user profile associated with the first device;

determine contact data associated with the second user profile; and

determine that an intended recipient of the first communication data is absent from the contact data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 27, 2019
From: NADIG, VINAYA; DO, TU DIEN
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 051377/0180 →
Cited By (1)
US 12,470,562