System and Method for Efficient Port and Bandwidth Utilization in Setting up Communication Sessions
Abstract
Techniques for efficiently allocating ports and bandwidth in a communication system configured to establish interactive, real time communication sessions between endpoints are described. Requests are received at a server, from a requester endpoint device, to initiate an interactive, real time communication voice and/or video session requiring access to an interactive session resource. In an embodiment, the communication system is a contact center and the interactive session resource is an available contact center agent. Pending availability of the interactive session resource, a requester is assigned a place in a queue or otherwise scheduled to receive access to the interactive session resource. In the meantime, a data channel is established between the server and the requester's endpoint device. Resources, which can include an executable program and/or information operative to enable the endpoint device to emulate an active on-hold voice connection period, are downloaded to the endpoint device.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
receiving a request at a server, from a requester endpoint device, to initiate an interactive real-time communication session, wherein the request was transferred in response to user input into a browser executing on the requester endpoint device; after receiving the request, transmitting an emulator application to the requester endpoint device, wherein the requester endpoint device executes the emulator application; receiving a report of an event detected by the emulator application on the requester endpoint device; and in response to the event indicating new instructions should be sent, updating the emulator application with the new instructions, wherein the emulator application is updated to carry out the new instructions.
2 . The method of claim 1 , further comprising:
in response to receiving the request, determining that an interactive session resource is not currently available for the interactive real-time communication session; and wherein transmitting the emulator application occurs in response to determining that the interactive session resource is not currently available.
3 . The method of claim 1 , further comprising:
before transmitting the emulator application, determining that the emulator application is not installed on the requester endpoint device.
4 . The method of claim 3 , further comprising:
before transmitting the emulator application, receiving consent for the emulator application from a user of the requester endpoint device.
5 . The method of claim 1 , wherein the new instructions direct the emulator application to present a plurality of locally stored media segments pending availability of an interactive session resource for the interactive real-time communication session.
6 . The method of claim 5 , wherein the plurality of media segments includes at least one of a group comprising music-on-hold, an estimate of wait time, marketing messages, and product information messages.
7 . The method of claim 1 , wherein the event comprises the requester endpoint device establishing another communication session and wherein the new instructions direct the emulator application to display a message to a user of the requester endpoint device.
8 . The method of claim 7 , wherein the message indicates that a position of the user in a queue for an interactive session resource for the interactive real-time communication session will not be affected by the event.
9 . The method of claim 7 , wherein, during the other communication session, the new instructions direct the emulator application to present the user with an option to participate in the interactive real-time communication session when an interactive session resource for the interactive real-time communication session becomes available.
10 . A system comprising:
one or more processors, and one or more memory devices operatively coupled to the one or more processors and storing program instructions therein, the one or more processors being configured to execute the program instructions that direct the one or more processors to:
receive a request at a server, from a requester endpoint device, to initiate an interactive real-time communication session, wherein the request was transferred in response to user input into a browser executing on the requester endpoint device;
after receiving the request, transmit an emulator application to the requester endpoint device, wherein the requester endpoint device executes the emulator application;
receive a report of an event detected by the emulator application on the requester endpoint device; and
in response to the event indicating new instructions should be sent, update the emulator application with the new instructions, wherein the emulator application is updated to carry out the new instructions.
11 . The system of claim 10 , wherein the program instructions further direct the one or more processors to:
in response to receiving the request, determine that an interactive session resource is not currently available for the interactive real-time communication session; and wherein transmitting the emulator application occurs in response to determining that the interactive session resource is not currently available.
12 . The system of claim 10 , wherein the program instructions further direct the one or more processors to:
before transmitting the emulator application, determine that the emulator application is not installed on the requester endpoint device.
13 . The system of claim 12 , wherein the program instructions further direct the one or more processors to:
before transmitting the emulator application, receive consent for the emulator application from a user of the requester endpoint device.
14 . The system of claim 10 , wherein the new instructions direct the emulator application to present a plurality of locally stored media segments pending availability of an interactive session resource for the interactive real-time communication session.
15 . The system of claim 14 , wherein the plurality of media segments includes at least one of a group comprising music-on-hold, an estimate of wait time, marketing messages, and product information messages.
16 . The system of claim 10 , wherein the event comprises the requester endpoint device establishing another communication session and wherein the new instructions direct the emulator application to display a message to a user of the requester endpoint device.
17 . The system of claim 16 , wherein the message indicates that a position of the user in a queue for an interactive session resource for the interactive real-time communication session will not be affected by the event.
18 . The system of claim 16 , wherein, during the other communication session, the new instructions direct the emulator application to present the user with an option to participate in the interactive real-time communication session when an interactive session resource for the interactive real-time communication session becomes available.
19 . A computer-readable storage medium having program instructions stored thereon, the program instructions, when executed by one or more processors, direct the one or more processors to:
receive a request at a server, from a requester endpoint device, to initiate an interactive real-time communication session, wherein the request was transferred in response to user input into a browser executing on the requester endpoint device; after receiving the request, transmit an emulator application to the requester endpoint device, wherein the requester endpoint device executes the emulator application; receive a report of an event detected by the emulator application on the requester endpoint device; and in response to the event indicating new instructions should be sent, update the emulator application with the new instructions, wherein the emulator application is updated to carry out the new instructions.
20 . The computer-readable storage medium of claim 19 , wherein the program instructions further direct the one or more processors to:
in response to receiving the request, determine that an interactive session resource is not currently available for the interactive real-time communication session; and wherein transmitting the emulator application occurs in response to determining that the interactive session resource is not currently available.Join the waitlist — get patent alerts
Track US2020280591A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.