IP Library Granted Patent US 11,838,321
Granted Patent B2
US 11,838,321 · App. 17/661,880 · Granted Dec 5, 2023

Verifying incoming communications

Inventors: Santiago Kantorowicz (Bogota, CO); Lucas Martin Vidal (Bogota, CO); Serge Kruppa (Envigado, CO)
Assignee: Twilio Inc.
H04L63/1466H04M3/42042H04W12/121H04W12/48H04L67/10H04L67/141H04L67/306
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 11,838,321
App. No.
17/661,880
Granted
Dec 5, 2023
Kind
B2
Abstract

Disclosed are systems, methods, and non-transitory computer-readable media for verifying an incoming communication. A recipient client device receives an incoming communication including an identifier identifying a second client device as having initiated the incoming communication. A verification service installed on the recipient client device queries a call placement service directory based on the first identifier. The call placement service directory maintains a listing of identifiers for client devices and corresponding communication providers that manage the identifiers. The call placement service directory returns information identifying the communication provider that manages the identifier. In turn, the verification service transmitting a request to the communication provider to confirm whether the second client device initiated the incoming communication. The verification service processes the incoming communication based on the response from the communication provider indicating whether the second client device initiated the incoming communication.

Claims (34)

1. A method comprising:

based on a detecting of an incoming communication, verifying that the incoming communication originated from a first client device, the verifying comprising:

transmitting a query to a call placement service directory, the query including a device identifier received in the incoming communication, the call placement service directory storing a list of device identifiers and associated communication information, the communication information including data identifying a communication provider that manages the device identifier;

receiving the communication information from the call placement service;

transmitting a request to the communication provider to perform the verifying, the request including at least some of the communication information; and

based on a response from the communication provider indicating the verifying, causing the incoming communication to be presented on a display of a second client device or based on the response not indicating the verifying, blocking the incoming communication, wherein the communication provider performs the verifying based on whether the first client device transmitted a message at a time corresponding to a timestamp of the incoming communication.

2. The method of claim 1 , wherein the communication provider performs the verifying based on a determination of whether the first client device is engaged in an active communication session.

3. The method of claim 1 , wherein the request includes a hash generated based on one or more of the device identifier received in the incoming communication, a device identifier for the second device, a timestamp associated with the incoming communication, or at least some of a payload of the incoming communication.

4. The method of claim 3 , wherein the communication provider performs the verifying based on matching of the hash to an additional hash, the additional has generated based on one or more of a device identifier of the first client device, a device identifier for the second device, a timestamp associated a message sent by the first client device or at least some of a payload of the message sent by the first client device.

5. The method of claim 1 , further comprising, based on the response from the communication provider indicating the verifying, further causing presentation of a visual indicator of the verifying on the second client device.

6. The method of claim 5 , wherein the response includes data identifying an image, the method further comprising:

presenting the image on the display of the first client device.

7. A device comprising:

one or more computer processors; and

one or more computer-readable mediums storing instructions that, when executed by the one or more computer processors, cause the device to perform operations comprising:

based on a detecting of an incoming communication, verifying that the incoming communication originated from a first client device, the verifying comprising:

transmitting a query to a call placement service directory, the query including a device identifier received in the incoming communication, the call placement service directory storing a list of device identifiers and associated communication information, the communication information including data identifying a communication provider that manages the device identifier;

receiving the communication information from the call placement service; transmitting a request to the communication provider to perform the verifying, the request including at least some of the communication information; and

based on a response from the communication provider indicating the verifying, causing the incoming communication to be presented on a display of a second client device or based on the response not indicating the verifying, blocking the incoming communication, wherein the communication provider performs the verifying based on whether the first client device transmitted a message at a time corresponding to a timestamp of the incoming communication.

8. The device of claim 7 , wherein the communication provider performs the verifying based on a determination of whether the first client device is engaged in an active communication session.

9. The device of claim 7 , wherein the request includes a hash generated based on one or more of the device identifier received in the incoming communication, a device identifier for the second device, a timestamp associated with the incoming communication, or at least some of a payload of the incoming communication.

10. The device of claim 9 , wherein the communication provider performs the verifying based on matching of the hash to an additional hash, the additional has generated based on one or more of a device identifier of the first client device, a device identifier for the second device, a timestamp associated a message sent by the first client device or at least some of a payload of the message sent by the first client device.

11. The device of claim 7 , further comprising, based on the response from the communication provider indicating the verifying, further causing presentation of a visual indicator of the verifying on the second client device.

12. The device of claim 11 , wherein the response includes data identifying an image, the operations further comprising:

presenting the image on the display of the first client device.

13. A non-transitory computer-readable medium storing instructions that, when executed by one or more computer processors of a recipient client device, cause the recipient client device to perform operations comprising:

based on a detecting of an incoming communication, verifying that the incoming communication originated from a first client device, the verifying comprising:

transmitting a query to a call placement service directory, the query including a device identifier received in the incoming communication, the call placement service directory storing a list of device identifiers and associated communication information, the communication information including data identifying a communication provider that manages the device identifier;

receiving the communication information from the call placement service;

transmitting a request to the communication provider to perform the verifying, the request including at least some of the communication information; and based on a response from the communication provider indicating the verifying, causing the incoming communication to be presented on a display of a second client device or based on the response not indicating the verifying, blocking the incoming communication wherein the communication provider performs the verifying based on whether the first client device transmitted a message at a time corresponding to a timestamp of the incoming communication.

14. A non-transitory computer-readable medium of claim 13 , wherein the communication provider performs the verifying based on a determination of whether the first client device is engaged in an active communication session.

15. A non-transitory computer-readable medium of claim 13 , wherein the request includes a hash generated based on one or more of the device identifier received in the incoming communication, a device identifier for the second device, a timestamp associated with the incoming communication, or at least some of a payload of the incoming communication.

16. A non-transitory computer-readable medium of claim 15 , wherein the communication provider performs the verifying based on matching of the hash to an additional hash, the additional has generated based on one or more of a device identifier of the first client device, a device identifier for the second device, a timestamp associated a message sent by the first client device or at least some of a payload of the message sent by the first client device.

17. A non-transitory computer-readable medium of claim 13 , further comprising, based on the response from the communication provider indicating the verifying, further causing presentation of a visual indicator of the verifying on the second client device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2022
From: KANTOROWICZ, SANTIAGO; VIDAL, LUCAS MARTÍN; KRUPPA, SERGE
To: TWILIO INC.
Reel/Frame 059801/0445 →
Continuity (3)
Continuation 16790175 · Feb 13, 2020
Provisional Application 62882799 · Aug 5, 2019
Related Publication 20220263863A1 · Aug 18, 2022
Cited By (1)
US 12,267,358