Abstract:
Various embodiments provide real-time translation of a voicemail into a readable format as the voicemail is being recorded. In some cases, a system server records the voicemail by first answering a call from an originating device that goes unanswered by a destination device. Upon answering the call, the system server translates the recording, while it is being recorded, into a readable format. Alternately or additionally, the system server forwards portions of the readable format to the destination device. In turn, as the destination device receives portion(s) of the real-time translation, it can display the associated content, and/or update what is displayed as new portions are received. At times, the destination device provides additional call control that interrupts the voicemail while it is being recorded at the system server, and redirects the call to the destination device if the originating device is still connected.
Abstract:
The customization of a communication pipelines having multiple stages. For each stage, a set of agent(s) is/are identified as available for adding to that stage. Furthermore, any stages that already have an agent assigned are identified. In response to receiving a user selection of an agent to be assigned to a particular stage, that does not already have an agent assigned, the selected agent is assigned to the stage. An enforcement agent enforces that there be only one agent assigned at most to each stage. Assignments of agents are made per stage. This allows the functionality of the agent to be simplified more towards augmenting the functionality of the stage. Accordingly, the logic of the agent is simplified, thereby making it more likely that there will be a healthy quality of agents available to select from for each stage.
Abstract:
An online conferencing system that provides fine-grained control over recording of the online conference. A participant manager component detects current participants in an online conference. A video gathering component gathers video streams for each of at least some of the current participants in the online conference. A triggering component allows one or more of the participants to trigger operation of a recording component. The recording component identifies one or more of the gather video streams to record, and records the identified one or more video streams. The recording component may have fine-grained control over the recording process. If a participant joins the conference, that video from the new participant may be automatically recorded also. If a participant leaves a conference, the recording of that video may be stopped.
Abstract:
A computer system comprises computer storage holding a plurality of code modules, one or more processors and a communication system. The one or more processors are configured to execute the code modules and thereby implement the bots. The communication system comprises a message relay and an anonymized identifier generator. The message relay is configured to receive a message comprising an identifier of a user and an identifier of a target one of the bots. The anonymized identifier generator is configured to generate an anonymized identifier of the user unique to the target bot, by applying an anonymization function to the user identifier and the bot identifier in the message. The message relay is configured to transmit to the target bot a version of the message, which comprises the anonymized user identifier and does not include the user identifier, wherein the user identifier is not rendered accessible to the target bot.
Abstract:
Various embodiments provide real-time translation of a voicemail into a readable format as the voicemail is being recorded. In some cases, a system server records the voicemail by first answering a call from an originating device that goes unanswered by a destination device. Upon answering the call, the system server translates the recording, while it is being recorded, into a readable format. Alternately or additionally, the system server forwards portions of the readable format to the destination device. In turn, as the destination device receives portion(s) of the real-time translation, it can display the associated content, and/or update what is displayed as new portions are received. At times, the destination device provides additional call control that interrupts the voicemail while it is being recorded at the system server, and redirects the call to the destination device if the originating device is still connected.
Abstract:
A computer system comprises computer storage holding a plurality of code modules, one or more processors and a communication system. The one or more processors are configured to execute the code modules and thereby implement the bots. The communication system comprises a message relay and an anonymized identifier generator. The message relay is configured to receive a message comprising an identifier of a user and an identifier of a target one of the bots. The anonymized identifier generator is configured to generate an anonymized identifier of the user unique to the target bot, by applying an anonymization function to the user identifier and the bot identifier in the message. The message relay is configured to transmit to the target bot a version of the message, which comprises the anonymized user identifier and does not include the user identifier, wherein the user identifier is not rendered accessible to the target bot.
Abstract:
Online conferencing involving video and audio in which automatic actions such as recording and broadcasting is performed by adding a visualized representation of the action into the online conference area of a user interface. The action appears as a visualization in the contacts portion of the user interface, some of which contacts may represent individuals that may be joined into a conference. Recording or broadcasting the action may thus be efficiently performed in a consistent manner as how individuals are added into an online conference, thereby taking advantage of muscle memory of the participant.
Abstract:
Signaling from a mobile device is transparently tunneled through a cellular voice network to a Voice over Internet Protocol (“VoIP”) core network so that multi-party calls, including conference calls and call waiting, can be managed entirely within the VoIP core network. The tunneled signals enable call control to be implemented in the VoIP core network and also establish a way to communicate requests, instructions, and call state. The signaling is transparent to the cellular network because that network does not receive and interpret the signaling. Instead, the cellular network's existing and unmodified control plane is repurposed by the mobile device by placing new, brief outgoing calls through the cellular network to the VoIP core network where the called party number (i.e., the caller-ID) encodes specific information. The VoIP core network immediately releases the new cellular call once the caller-ID is received and the encoded information is interpreted.
Abstract:
Scaling up and scaling out of a server architecture for large scale real-time applications is provided. A group of users may be provisioned by assigning them to a server pool and allotting them to a group. Grouped users help to reduce inter-server communication when they are serviced by the same server in the pool. High availability may be provided by choosing a primary server and one or more secondary servers from the pool to ensure that grouped users are serviced by the same server. Operations taken on the primary server are synchronously replicated to secondary servers so that when a primary server fails, a secondary server may be chosen as the primary for the group. Servers for multiple user groups may be load balanced to account for changes in either the number of users or the number of servers in a pool. Multiple pools may be paired for disaster recovery.
Abstract:
A network-connected service coupled to a network-connected device such as an IoT device implements a communication agent for a communication service that is separate from the network-connected service and that is implemented on the network-connected service to allow the network-connected device to establish communication sessions with other devices, not connected to the network-connected service. The communication agent may a component of a software development kit (SDK). The network-connected service receives an offer from the network-connected device and uses the communication agent to translate the offer into an compatible with the communication service. The communication agent sends the translated offer to the communication service with connection information sufficient to set up the session. The communication agent receives an offer answer from the second device and sends the offer answer to the network-connected device by posting the offer answer to a web address assigned to the network-connected device.