# US 11,451,498 B2 · Omnichannel communication widget

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,451,498 B2
- Document ID: US11451498B2
- Status: Granted
- Kind: B2
- Application number: 16/886,188
- Filed: 2020-05-28
- Published: 2021-12-02
- Granted: 2022-09-20
- Earliest claimed: 2020-05-28
- Assignees: MessageBird BidCo B.V.
- Applicants: MessageBird BidCo B.V.
- Inventors: Bob Carly Violier; Joey Charles Van Ommen; Richard David Cochrane Dodds; Robert Daniel Vis
- Web page: https://patentgrep.com/patent/US11451498B2

## CPC

- H04L 51/046: Interoperability with other network applications or services
- H04L 51/52: for supporting social networking services
- H04L 51/56: Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system is configured to receive a request from a client device to provide web content for a frame in a web document provided by a web server and transmit the requested web content to the client device. The requested web content comprises an application for providing a live chat function. The system is further configured to exchange a first plurality of messages between the client device and another system via the application, exchange a second plurality of messages between a further client device and the other system via a further communication channel, and display a uniform view of the messages on the client device via the application upon determining that the identifiers associated with the messages correspond to a single user. The messages in the uniform view are ordered in chronological order based on the dates and times of receipt or transmission of the messages.

## Claims

### Claim 1

A system for providing a live chat function, said system comprising:
at least one input interface;
at least one output interface; and
at least one processor configured to:
receive, via said at least one input interface, a request from a client device to provide web content for a frame in a web document, said web document being provided to said client device by a web server,
transmit, via said at least one output interface, said requested web content to said client device, said requested web content comprising an application for providing said live chat function, said application communicating with said system when said application is executed by said client device,
exchange a first plurality of messages between said client device and said web server via said application, said first plurality of messages being associated with a first user identifier, said first plurality of messages including at least one agent message received at said system and forwarded from said system to said client device,
determine a first plurality of dates and times of receipt or transmission of said first plurality of messages,
said system presenting, in the frame, a plurality of options to select a plurality of different communication channels and receive, via the application, a selection of a particular option among the plurality of options corresponding to a further communication channel among the plurality of different communication channels, the further communication channel being different than the live chat function, the plurality of different communication channels comprising two or more of e-mail, FACEBOOK MESSENGER, WHATSAPP server, SIGNAL, WECHAT server, LINE, TELEGRAM, short message service (SMS),
said system determining that said system has previously received a second user identifier that is associated with the further communication channel and has authenticated the validity of the second user identifier, and in response, said system transmitting a confirming message to a further client device via the further communication channel,
exchange a second plurality of messages between said further client device and said web server via the further communication channel, said second plurality of messages being associated with a second user identifier, including receiving at least a second agent message from said web server and forwarding said second agent message to said further client device via the further communication channel,
determine a second plurality of dates and times of receipt or transmission of said second plurality of messages,
determine whether said first user identifier and said second user identifier correspond to a single user, and
display a uniform view of messages exchanged using the plurality of different communication channels via the live chat function, the uniform view comprising said first plurality of messages and said second plurality of messages on said client device via said application upon determining that said first user identifier and said second user identifier correspond to a single user, said messages in said uniform view being ordered in chronological order based on said first and second pluralities of dates and times of receipt or transmission,
wherein said at least one processor is configured to receive said second user identifier from said client device via said application or obtain said second user identifier from a storage device and determine whether said second user identifier has been authenticated for any company or organization.

### Claim 2 (depends on 1)

The system as claimed in claim 1, wherein said at least one processor is configured to display, in said uniform view, at least one of said dates and times of receipt or transmission for at least one of said messages in said uniform view.

### Claim 3 (depends on 1)

The system as claimed in claim 1, wherein said at least one processor is configured to display, in said uniform view, an indication of a communication channel over which said messages in said uniform view were received for each of said messages.

### Claim 4 (depends on 2)

The system as claimed in claim 2, wherein said at least one processor is configured to receive, via said application, from said client device, a request to switch to said further communication channel.

### Claim 5 (depends on 1)

The system as claimed in claim 1, wherein said at least one processor is configured to, upon determining that said second user identifier has not been authenticated for any company or organization:
attempt to authenticate said second user identifier over said further communication channel or with a communication platform server corresponding to said further communication channel, and
store said second user identifier as an authenticated user identifier associated with said first user identifier upon performing said authentication successfully.

### Claim 6

A method of providing a live chat function by a communication integrator system, said method comprising:
receiving a request from a client device to provide web content for a frame in a web document, said web document being provided to said client device by a web server;
transmitting said requested web content to said client device, said requested web content comprising an application for providing said live chat function, said application communicating with said communication integrator system when said application is executed by said client device;
exchanging a first plurality of messages between said client device and said web server via said application, said first plurality of messages being associated with a first user identifier, said first plurality of messages including at least one agent message received at said system and forwarded from said system to said client device;
determining a first plurality of dates and times of receipt or transmission of said first plurality of messages;
system presenting, in the frame, a plurality of options to select a plurality of different communication channels and receive, via the application, a selection of a particular option among the plurality of options corresponding to a further communication channel among the plurality of different communication channels, the further communication channel being different than the live chat function, the plurality of different communication channels comprising two or more of e-mail, FACEBOOK MESSENGER, WHATSAPP server, SIGNAL, WECHAT server, LINE, TELEGRAM, short message service (SMS);
system determining that said system has previously received a second user identifier that is associated with the further communication channel and has authenticated the validity of the second user identifier, and in response, said system transmitting a confirming message to a further client device via the further communication channel;
exchanging a second plurality of messages between said further client device and said web server via the further communication channel, said second plurality of messages being associated with a second user identifier, including receiving at least a second agent message from said web server and forwarding said second agent message to said further client device via the further communication channel;
determining a second plurality of dates and times of receipt or transmission of said second plurality of messages;
determining whether said first user identifier and said second user identifier correspond to a single user; and
displaying a uniform view of messages exchanged using the plurality of different communication channels via the live chat function, the uniform view comprising said first plurality of messages and said second plurality of messages on said client device via said application upon determining that said first user identifier and said second user identifier correspond to a single user, said messages in said uniform view being ordered in chronological order based on said first and second pluralities of dates and times of receipt or transmission,
wherein said method further comprises receiving said second user identifier from said client device via said application or obtaining said second user identifier from a storage device and further comprises determining whether said second user identifier has been authenticated for any company or organization.

### Claim 7 (depends on 6)

The method as claimed in claim 6, and further comprising receiving, via said application, from said client device, a request to switch to said further communication channel.

### Claim 8 (depends on 7)

The method as claimed in claim 7, and further comprising, upon determining that said second user identifier has not been authenticated for any company or organization:
attempting to authenticate said second user identifier over said further communication channel or with a communication platform server corresponding to said further communication channel, and
storing said second user identifier as an authenticated user identifier associated with said first user identifier upon performing said authentication successfully.

### Claim 9

A non-transitory computer readable medium for storing instructions when executed on a computer system perform a method of providing a live chat function by a communication integrator system, said method comprising:
receiving a request from a client device to provide web content for a frame in a web document, said web document being provided to said client device by a web server;
transmitting said requested web content to said client device, said requested web content comprising an application for providing said live chat function, said application communicating with said communication integrator system when said application is executed by said client device;
exchanging a first plurality of messages between said client device and said web server via said application, said first plurality of messages being associated with a first user identifier, said first plurality of messages including at least one agent message received at said system and forwarded from said system to said client device;
determining a first plurality of dates and times of receipt or transmission of said first plurality of messages;
system presenting, in the frame, a plurality of options to select a plurality of different communication channels and receive, via the application, a selection of a particular option among the plurality of options corresponding to a further communication channel among the plurality of different communication channels, the further communication channel being different than the live chat function, the plurality of different communication channels comprising two or more of e-mail, FACEBOOK MESSENGER, WHATSAPP server, SIGNAL, WECHAT server, LINE, TELEGRAM, short message service (SMS);
system determining that said system has previously received a second user identifier that is associated with the further communication channel and has authenticated the validity of the second user identifier, and in response, said system transmitting a confirming message to a further client device via the further communication channel;
exchanging a second plurality of messages between said further client device and said web server via the further communication channel, said second plurality of messages being associated with a second user identifier, including receiving at least a second agent message from said web server and forwarding said second agent message to said further client device via the further communication channel;
determining a second plurality of dates and times of receipt or transmission of said second plurality of messages;
determining whether said first user identifier and said second user identifier corresponds to a single user; and
displaying a uniform view of messages exchanged using the plurality of different communication channels via the live chat function, the uniform view comprising said first plurality of messages and said second plurality of messages on said client device via said application upon determining that said first user identifier and said second user identifier correspond to a single user, said messages in said uniform view being ordered in chronological order based on said first and second pluralities of dates and times of receipt or transmission,
wherein said method further comprises receiving said second user identifier from said client device via said application or obtaining said second user identifier from a storage device and further comprises determining whether said second user identifier has been authenticated for any company or organization.

### Claim 10 (depends on 9)

The non-transitory computer readable medium as claimed in claim 9, wherein said method further comprises receiving, via said application, from said client device, a request to switch to said further communication channel.

### Claim 11 (depends on 9)

The non-transitory computer readable medium as claimed in claim 9, wherein said method further comprises, upon determining that said second user identifier has not been authenticated for any company or organization:
attempting to authenticate said second user identifier over said further communication channel or with a communication platform server corresponding to said further communication channel, and
storing said second user identifier as an authenticated user identifier associated with said first user identifier upon performing said authentication successfully.

### Claim 12

A system for providing a live chat function, said system comprising:
at least one input interface;
at least one output interface; and
at least one processor configured to:
receive, via said at least one input interface, a request from a client device to provide web content for a frame in a web document, said web document being provided to said client device by a web server,
transmit, via said at least one output interface, said requested web content to said client device, said requested web content comprising an application for providing said live chat function, said application communicating with said system when said application is executed by said client device,
exchange a first plurality of messages between said client device and said web server via said application, said first plurality of messages being associated with a first user identifier, said first plurality of messages including at least one agent message received at said system and forwarded from said system to said client device,
said system presenting, in the frame, a plurality of options to select a plurality of different communication channels and receive, via the application, a selection of a particular option among the plurality of options corresponding to a further communication channel among the plurality of different communication channels, the further communication channel being different than the live chat function, the plurality of different communication channels comprising two or more of e-mail, FACEBOOK MESSENGER, WHATSAPP server, SIGNAL, WECHAT server, LINE, TELEGRAM, short message service (SMS),
said system determining that said system has previously received a second user identifier that is associated with the further communication channel and has authenticated the validity of the second user identifier, and in response, said system transmitting a confirming message to a further client device via the further communication channel,
exchange a second plurality of messages between said further client device and said web server via the further communication channel, said second plurality of messages being associated with a second user identifier, including receiving at least a second agent message from said web server and forwarding said second agent message to said further client device via the further communication channel,
determine whether said first user identifier and said second user identifier correspond to a single user,
display a uniform view of messages exchanged using the plurality of different communication channels via the live chat function,
wherein said at least one processor is configured to receive said second user identifier from said client device via said application or obtain said second user identifier from a storage device and determine whether said second user identifier has been authenticated for any company or organization.

### Claim 13 (depends on 12)

The system as claimed in claim 12, wherein said at least one processor is configured to receive, via said application, from said client device, a request to switch to said further communication channel.

### Claim 14 (depends on 12)

The system as claimed in claim 12, wherein said at least one processor is configured to, upon determining that said second user identifier has not been authenticated for any company or organization:
attempt to authenticate said second user identifier over said further communication channel or with a communication platform server corresponding to said further communication channel, and
store said second user identifier as an authenticated user identifier associated with said first user identifier upon performing said authentication successfully.

### Claim 15

A method of providing a live chat function by a communication integrator system, said method comprising:
receiving a request from a client device to provide web content for a frame in a web document, said web document being provided to said client device by a web server;
transmitting said requested web content to said client device, said requested web content comprising an application for providing said live chat function, said application communicating with said communication integrator system when said application is executed by said client device;
exchanging a first plurality of messages between said client device and said web server via said application, said first plurality of messages being associated with a first user identifier, said first plurality of messages including at least one agent message received at said system and forwarded from said system to said client device;
presenting, in the frame, a plurality of options to select a plurality of different communication channels and receive, via the application, a selection of a particular option among the plurality of options corresponding to a further communication channel among the plurality of different communication channels, the further communication channel being different than the live chat function, the plurality of different communication channels comprising two or more of e-mail, FACEBOOK MESSENGER, WHATSAPP server, SIGNAL, WECHAT server, LINE, TELEGRAM, short message service (SMS);
determining that said system has previously received a second user identifier that is associated with the further communication channel and has authenticated the validity of the second user identifier, and in response, said system transmitting a confirming message to a further client device via the further communication channel;
exchanging a second plurality of messages between said further client device and said web server via the further communication channel, said second plurality of messages being associated with a second user identifier, including receiving at least a second agent message from said web server and forwarding said second agent message to said further client device via the further communication channel; and
determining whether said first user identifier and said second user identifier correspond to a single user,
displaying a uniform view of messages exchanged using the plurality of different communication channels via the live chat function,
wherein said method further comprises receiving said second user identifier from said client device via said application or obtaining said second user identifier from a storage device and further comprises determining whether said second user identifier has been authenticated for any company or organization.

### Claim 16 (depends on 15)

The method as claimed in claim 15, and further comprising receiving, via said application, from said client device, a request to switch to said further communication channel.

### Claim 17 (depends on 15)

The method as claimed in claim 15, and further comprising, upon determining that said second user identifier has not been authenticated for any company or organization:
attempting to authenticate said second user identifier over said further communication channel or with a communication platform server corresponding to said further communication channel, and
storing said second user identifier as an authenticated user identifier associated with said first user identifier upon performing said authentication successfully.

### Claim 18

A non-transitory computer readable medium for storing instructions when executed on a computer system perform a method of providing a live chat function by a communication integrator system, said method comprising:
receiving a request from a client device to provide web content for a frame in a web document, said web document being provided to said client device by a web server;
transmitting said requested web content to said client device, said requested web content comprising an application for providing said live chat function, said application communicating with said communication integrator system when said application is executed by said client device; —exchanging a first plurality of messages between said client device and said web server via said application, said first plurality of messages being associated with a first user identifier, said first plurality of messages including at least one agent message received at said system and forwarded from said system to said client device;
presenting, in the frame, a plurality of options to select a plurality of different communication channels and receive, via the application, a selection of a particular option among the plurality of options corresponding to a further communication channel among the plurality of different communication channels, the further communication channel being different than the live chat function, the plurality of different communication channels comprising two or more of e-mail, FACEBOOK MESSENGER, WHATSAPP server, SIGNAL, WECHAT server, LINE, TELEGRAM, short message service (SMS);
determining that said system has previously received a second user identifier that is associated with the further communication channel and has authenticated the validity of the second user identifier, and in response, said system transmitting a confirming message to a further client device via the further communication channel;
exchanging a second plurality of messages between said further client device and said web server via the further communication channel, said second plurality of messages being associated with a second user identifier, including receiving at least a second agent message from said web server and forwarding said second agent message to said further client device via the further communication channel;
displaying a uniform view of messages exchanged using the plurality of different communication channels via the live chat function;
wherein said method further comprises receiving said second user identifier from said client device via said application or obtaining said second user identifier from a storage device and further comprises determining whether said second user identifier has been authenticated for any company or organization.

### Claim 19 (depends on 18)

The non-transitory computer readable medium as claimed in claim 18, wherein said method further comprises receiving, via said application, from said client device, a request to switch to said further communication channel.

### Claim 20 (depends on 18)

The non-transitory computer readable medium as claimed in claim 18, wherein said method further comprises, upon determining that said second user identifier has not been authenticated for any company or organization:
attempting to authenticate said second user identifier over said further communication channel or with a communication platform server corresponding to said further communication channel, and
storing said second user identifier as an authenticated user identifier associated with said first user identifier upon performing said authentication successfully.
