Abstract:
A request to establish a communication session between the first communication endpoint and a second communication endpoint is received. For example, the request may be a Session Initiation Protocol (SIP) INVITE message to establish a voice communication session. A security classification for the communication session is determined. For example, the determined security classification may be that the call is top secret or unclassified. The security classification is not based on whether the communication session is solely encrypted. The security classification is inserted into the request to establish the communication session. The request to establish the communication session with the security classification is sent to the second communication endpoint. This allows the second endpoint to display the security classification. A similar process is used in a response to the request to establish the communication session to convey the security classification to the first communication endpoint.
Abstract:
To handle a failover condition, a media server receives a request, from a first application server, to stream a first media message in a media channel of a communication session. The first media message is streamed in the media channel of the communication session by the media server. Once the first media message has ended, a status message can be sent to the first application server to determine if the first application server has failed. If a response to the status message is not received (i.e., because the first application server has failed), the media server can stream a second media message during a period where a second application server is failing over for the first application server. If a response to the status message is received, the second media message is not streamed.
Abstract:
Application of enterprise policies to Web Real-Time Communications (WebRTC) interactive sessions using an enterprise Session Initiation Protocol (SIP) engine, and related methods, systems, and computer-readable media are disclosed. In one embodiment, a method comprises receiving, by session token converter of enterprise device, an incoming WebRTC session description token. The method comprises generating, by session token converter, outgoing SIP request message. The method comprises sending, by session token converter, outgoing SIP request message to enterprise SIP engine and applying, by enterprise SIP engine, enterprise policies based on outgoing SIP request message. The method comprises, responsive to applying enterprise policies, sending incoming SIP request message to enterprise device. The method comprises converting, by session token converter, incoming SIP request message into outgoing WebRTC session description token, and sending outgoing WebRTC session description token to a target device.
Abstract:
Embodiments disclosed provide access to Traversal Using Relays around Network Address Translation (TURN) servers using trusted single-use credentials, and related methods, systems, and computer-readable media. In one embodiment, a method comprises receiving, by a TURN authentication agent, a request for a TURN server credential. Responsive to determining that the request is authorized, the agent generates a trusted single-use credential and transmits it to the requestor. Using this trusted single-use credential allows untrusted clients to access a TURN server without exposing a userid/password combination. In another embodiment, a method comprises receiving, by the TURN server, a request for a TURN service. The server challenges the request, and receives a userid and a password. Responsive to determining that the userid and the password constitute a trusted single-use credential and responsive to determining that the request is authorized, the server provides the TURN service for the requestor.
Abstract:
A call request is received, from a mobile device, to establish a communication with a contact center. For example, the call request may be to establish a voice call with the contact center. In response to the call request, the mobile device sends authentication factors to a cloud authentication service that the user/mobile device has previously registered with. For example, the authentication factors may include usage factors of the mobile device, such as a call history of the user on the mobile device. If the authentication factors are validated, a token is generated. The token is sent to the contact center along with the call request. The token is validated at the contact center. At this point, the contact center knows that the user/mobile device are authentic. A call is then established between the user and the contact center.
Abstract:
In one embodiment, a system for providing WebRTC media services comprises a WebRTC-enabled media server including a scripting engine, a WebRTC functionality provider, and a control application programming interface (API). The WebRTC-enabled media server is configured to receive, from a WebRTC application server, a stream establishment application, and to establish, via the stream establishment application, a plurality of WebRTC interactive flows associated with a corresponding plurality of WebRTC clients. The WebRTC-enabled media server is also configured to apply a media service to one or more of the plurality of WebRTC interactive flows to generate one or more media server flows, and provide the media server flows to one or more of the plurality of WebRTC clients. The WebRTC-enabled media server may thus provide functionality via familiar WebRTC control interfaces.
Abstract:
A plurality of long poll HTTP GET requests are received from a plurality of clustered applications. The plurality of long poll HTTP GET requests comprises a plurality of identifiers for the plurality of clustered applications. A plurality of event queues are created for the plurality of clustered applications based on the plurality of identifiers. A plurality of events are added to the plurality of event queues based on a plurality of communication sessions. For example, multiple events can be added to the plurality of event queues based on a plurality of incoming calls. A plurality of responses are sent based to the plurality of long poll HTTP GET requests. The plurality of responses includes the plurality of events. This process allows for identification of a corresponding clustered application that is managing a communication session.
Abstract:
A call request is received, from a mobile device, to establish a communication with a contact center. For example, the call request may be to establish a voice call with the contact center. In response to the call request, the mobile device sends authentication factors to a cloud authentication service that the user/mobile device has previously registered with. For example, the authentication factors may include usage factors of the mobile device, such as a call history of the user on the mobile device. If the authentication factors are validated, a token is generated. The token is sent to the contact center along with the call request. The token is validated at the contact center. At this point, the contact center knows that the user/mobile device are authentic. A call is then established between the user and the contact center.
Abstract:
A solution is provided that integrates external services with existing PBX services to provide new features to the PBX without having to update the PBX. To provide the external services, an external application server establishes a Computer Telephone Integration (CTI) channel with the PBX in order to register for one or more events that occur for a communication session controlled by the PBX. When one of the events occurs, the PBX sends a token containing information regarding the communication session and a media server associated with the communication session. The external application server uses the information in the token to provide an external service, via an external application, to a media stream of the communication session. In one embodiment, the media stream may be sent to that external application that provides the service to the communication session.
Abstract:
A communication session is established between a first communication device and a second communication device. The communication session comprises a first dialog between an application server and the first communication device. The first communication device uses a first network address in the first dialog. In response to an event, such as a first network interface failing, a SIP INVITE with replaces header message is received by the application server with a second address of the first communication device. In response to receiving the SIP INVITE with replaces header message from the first communication device with a second address of the first communication device, the first dialog between the application server and the first device is reestablished using the second network address.