IP Library Granted Patent US 10,659,604
Granted Patent B2
US 10,659,604 · App. 16/394,686 · Granted May 19, 2020

Systems and methods for providing a multi-channel communication service

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,659,604
App. No.
16/394,686
Granted
May 19, 2020
Kind
B2
Abstract

A multi-channel communication service uses an object-oriented approach to processing communications. The multi-channel communication service is capable of receiving, at a conversation object generator, inbound communications sent from a communication service and subsequently managing the status of participants engaged in a conversation via the various inbound communications. The management process is achieved by associating the inbound communications to corresponding client applications and executing an invitation process from the client applications to a conversation created by the conversation object generator.

Claims (29)

1. A method performed by a client application for handling an inbound communication, comprising:

receiving a notification that there is an inbound communication directed to the client application, where the notification is received from a conversation service;

generating a call control object for the inbound communication, where the call control object specifies how the inbound communication is to be handled;

sending to the conversation service the call control object and a request to invite the user associated with the inbound communication to join a conversation created by the conversation service; and

receiving information about the conversation state of the user associated with the inbound communication from the conversation service.

2. The method of claim 1 , wherein the request to invite the user associated with the inbound communication to join the conversation causes the conversation service to send the call control object to a voice application programming interface that uses the call control object to join the user to the conversation created by the conversation service.

3. The method of claim 1 , wherein the inbound communication is on a channel selected from the group consisting of SMS, POTS based telephony, VoIP based telephony, WebRTC, SIP and an over-the-top service.

4. The method of claim 3 , wherein the conversation created by the conversation service is represented by a conversation object that comprises at least two members communicating via one or more of the channels.

5. The method of claim 4 , wherein the at least two members correspond to at least two users of the client application that sent the request to invite.

6. The method of claim 4 , wherein the status of a member of a conversation object is selected from the group consisting of invited, joined and left.

7. The method of claim 6 , wherein an “invited” member has been invited to join a conversation but has not yet joined, a “joined” member is currently joined to a conversation and a “left” member is a member that has left a conversation.

8. The method of claim 1 , wherein sending the request to invite the user associated with the inbound communication to join the conversation comprises sending a request to invite multiple users to join the conversation over multiple communication protocols.

9. A system for handling an inbound communication directed to a client application comprising one or more processors that are configured to:

receive a notification that there is an inbound communication directed to the client application, where the notification is received from a conversation service;

generate a call control object for the inbound communication, where the call control object specifies how the inbound communication is to be handled;

send to the conversation service the call control object and a request to invite the user associated with the inbound communication to join a conversation created by the conversation service; and

receive information about the conversation state of the user associated with the inbound communication from the conversation service.

10. The system of claim 9 , wherein the request to invite the user associated with the inbound communication to join the conversation causes the conversation service to send the call control object to a voice application programming interface that uses the call control object to join the user to the conversation created by the conversation service.

11. The system of claim 9 , wherein the inbound communication is on a channel selected from the group consisting of SMS, POTS based telephony, VoIP based telephony, WebRTC, SIP and an over-the-top service.

12. The system of claim 11 , wherein the conversation created by the conversation service is represented by a conversation object that comprises at least two members communicating via one or more of the channels.

13. The system of claim 12 , wherein the at least two members correspond to at least two users of the client application that sent the request to invite.

14. The system of claim 12 , wherein the status of a member of a conversation object is selected from the group consisting of invited, joined and left.

15. The system of claim 14 , wherein an “invited” member has been invited to join a conversation but has not yet joined, a “joined” member is currently joined to a conversation and a “left” member is a member that has left a conversation.

16. The system of claim 9 , wherein sending the request to invite the user associated with the inbound communication to join the conversation comprises sending a request to invite multiple users to join the conversation over multiple communication protocols.

17. A system for handling an inbound communication directed to a client application, comprising:

means for receiving a notification that there is an inbound communication directed to the client application, where the notification is received from a conversation service;

means for generating a call control object for the inbound communication, where the call control object specifies how the inbound communication is to be handled;

means for sending to the conversation service the call control object and a request to invite the user associated with the inbound communication to join a conversation created by the conversation service; and

means for receiving information about the conversation state of the user associated with the inbound communication from the conversation service.

Assignments (2)
MERGER Recorded Feb 7, 2022
From: NEXMO INC.
To: VONAGE BUSINESS INC.
Reel/Frame 058911/0325 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2019
From: NADALIN, ERIC; STRATFORD, NEIL; SELMER, ROLAND
To: NEXMO, INC.
Reel/Frame 048998/0574 →