IP Library Granted Patent US 10,356,567
Granted Patent B2
US 10,356,567 · App. 15/006,429 · Granted Jul 16, 2019

Multi-channel communication system

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,356,567
App. No.
15/006,429
Granted
Jul 16, 2019
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving from a first system information comprising a message and an identifier of a user, selecting a channel from a plurality of different third party communication channels for sending the message based on one or more properties of communications on the channel, determining a channel-specific user identifier for the selected channel based on the identifier of the user, creating a channel-specific message formatted for the selected channel based on the message, and sending the message to the user on the selected channel using the channel-specific user identifier.

Claims (71)

1. A method comprising:

receiving from a first system information comprising a message and an identifier of a user;

selecting a channel from a plurality of different third party communication channels for sending the message to the user based on one or more properties of communications on the channel;

determining a channel-specific user identifier for the selected channel based on the identifier of the user;

creating a channel-specific message formatted for the selected channel based on the message;

sending the channel-specific message to the user on the selected channel using the channel-specific user identifier;

receiving a second message from the user on the selected channel in response to the channel-specific message; and

forwarding the second message to the first system,

wherein the receiving, selecting, determining, creating, sending, and forwarding steps are performed by one or more computers.

2. The method of claim 1 wherein sending the message further comprises:

verifying that credentials received from the first system during the receiving step are valid for the first system; and

after verifying that the credentials for the first system are valid, sending the channel-specific message.

3. The method of claim 1 wherein the selected channel is a social network and wherein the channel-specific user identifier is a user account name on the social network.

4. A storage device having instructions stored thereon that when executed by one or more computers perform operations comprising:

receiving from a first system information comprising a message and an identifier of a user;

selecting a channel from a plurality of different third party communication channels for sending the message to the user based on one or more properties of communications on the channel;

determining a channel-specific user identifier for the selected channel based on the identifier of the user;

creating a channel-specific message formatted for the selected channel based on the message;

sending the channel-specific message to the user on the selected channel using the channel-specific user identifier;

receiving a second message from the user on the selected channel in response to the channel-specific message; and

forwarding the second message to the first system.

5. The method of claim 1 wherein the identifier of the user comprises a telephone number.

6. The method of claim 1 wherein a particular third party communication channel is an over-the-top provider, GSM, or a public switched telephone network.

7. The method of claim 1 , further comprising:

receiving from a second system information comprising a second message, an identifier of a second user, and an identifier of a particular channel; and

sending the second message to the second user on the particular channel.

8. The method of claim 1 wherein a particular property of communications on the channel comprises a cost to send a message on the channel, a payment made to a sender of a message through the channel, a quality of service of the channel, the availability of delivery receipts via the channel, or reachability of the user through the channel.

9. The method of claim 1 wherein selecting a channel from a plurality of different channels for sending the message based on one or more properties of communications on the channel comprises:

selecting a particular channel using a rule-based system wherein a particular rule of the rule-based system corresponds to a set of one or more required properties for the message.

10. The method of claim 9 , wherein the required properties are determined by metadata associated with at least the message.

11. The method of claim 10 , wherein one or more rules of the rule-based system are periodically updated by a machine learning system with input comprising respective past performance data for at least one property on each of the plurality of third party communication channels.

12. The method of claim 1 , further comprising:

determining that the sending failed and based thereon:

selecting a second channel from the plurality of channels;

determining a second channel-specific user identifier for the user;

creating a second channel-specific message formatted for the second channel based on the message; and

sending the second channel-specific message to the user on the second channel using the second channel-specific user identifier.

13. The method of claim 1 wherein the message comprises one or more of text, an image, video, audio, executable code, and programming language statements.

14. The method of claim 1 , wherein the determined channel-specific user identifier is not a telephone number or a device identification number assigned to a telephony device or a computing device associated with the user.

15. A system comprising:

one or more computers programmed to perform operations comprising:

receiving from a first system information comprising a message and an identifier of a user;

selecting a channel from a plurality of different third party communication channels for sending the message to the user based on one or more properties of communications on the channel;

determining a channel-specific user identifier for the selected channel based on the identifier of the user;

creating a channel-specific message formatted for the selected channel based on the message;

sending the channel-specific message to the user on the selected channel using the channel-specific user identifier;

receiving a second message from the user on the selected channel in response to the channel-specific message; and

forwarding the second message to the first system.

16. The system of claim 15 wherein sending the channel-specific message further comprises:

verifying that credentials received from the first system during the receiving step are valid for the first system; and

after verifying that the credentials for the first system are valid, sending the channel-specific message.

17. The system of claim 15 wherein the selected channel is a social network and wherein the channel-specific user identifier is a user account name on the social network.

18. The system of claim 15 wherein the identifier of the user comprises a telephone number.

19. The system of claim 15 wherein a particular third party communication channel is an over-the-top provider, GSM, or a public switched telephone network.

20. The system of claim 15 , wherein the operations further comprise:

receiving from a second system information comprising a second message, an identifier of a second user, and an identifier of a particular channel; and

sending the second message to the second user on the particular channel.

21. The system of claim 15 wherein a particular property of communications on the channel comprises a cost to send a message on the channel, a payment made to a sender of a message through the channel, a quality of service of the channel, delivery receipts, or reachability of the user through the channel.

22. The system of claim 15 wherein selecting a channel from a plurality of different channels for sending the message based on one or more properties of communications on the channel comprises:

selecting a particular channel using a rule-based system wherein a particular rule of the rule-based system corresponds to a set of one or more required properties for the message.

23. The system of claim 22 , wherein the required properties are determined by metadata associated with at least the message.

24. The system of claim 23 , wherein one or more rules of the rule-based system are periodically updated by a machine learning system with input comprising respective past performance data for at least one property on each of the plurality of third party communication channels.

25. The system of claim 15 , wherein the operations further comprise:

determining that the sending failed and based thereon:

selecting a second channel from the plurality of channels;

determining a second channel-specific user identifier for the user;

creating a second channel-specific message formatted for the second channel based on the message; and

sending the second channel-specific message to the user on the second channel using the second channel-specific user identifier.

26. The system of claim 15 wherein the message comprises one or more of text, an image, video, audio, executable code, and programming language statements.

27. The system of claim 15 , wherein the determined channel-specific user identifier is not a telephone number or a device identification number assigned to a telephony device or a computing device associated with the user.

28. The storage device of claim 4 , wherein the determined channel-specific user identifier is not a telephone number or a device identification number assigned to a telephony device or a computing device associated with the user.

Assignments (5)
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 →
MERGER Recorded Feb 7, 2022
From: NEXMO INC.
To: VONAGE BUSINESS INC.
Reel/Frame 058911/0325 →
SECURITY INTEREST Recorded Nov 12, 2018
From: NEXMO INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 047475/0480 →
SECURITY INTEREST Recorded Jul 13, 2016
From: NEXMO INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 039145/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2016
From: SHIRAZI, JACK; LAM, TIAGO; NADALIN, ERIC; MOORE, CHRIS; SUMAN, SUMIT
To: NEXMO, INC.
Reel/Frame 037687/0179 →