SIP Mediaserver Service - Service Specifications

Download OpenAPI specification:Download

Service Specifications

iotcomms.io's SIP Mediaserver Service enables real-time call handling, IVR, recording, and media processing across a wide range of applications. This service is designed to support SIP-based communication and enhance telephony systems with robust, standards-based features for enterprise, cloud, and other VoIP environments.

Interactive Voice Session Features

  1. Media Playback and Generation

    • Play Media from Uploaded Files

      Supports playback of pre-recorded audio files, enabling quick and consistent message delivery within IVR flows.

    • Play Media from URLs

      Streams media directly from URLs, allowing real-time access to dynamic audio content hosted online.

    • Text-to-Speech Generation via AWS Polly

      Converts text to speech using Amazon Polly, offering a variety of voices and languages to suit diverse audience needs.

    • Text-to-Speech Generation via Google TTS

      Leverages Google TTS for voice generation, expanding options for natural-sounding speech in multiple languages.

  2. Recording and DTMF Handling

    • Record Media in IVR Flows

      Records segments of calls within IVR flows, to support development of voice-mail or other messaging applications.

    • DTMF Tone Detection

      Detects and responds to DTMF input, enabling users to navigate menus and trigger application-specific actions via touch-tone keys.

  3. Other functions

    • Echo Media Command

      Provides an "Echo" function for test application development, allowing applications to replay received media, facilitating easy troubleshooting and service verification.

Call Control Functionality

  1. Event-Driven Call Management

    • Receive Call State Change Events

      Triggers real-time events for call state changes, such as incoming, connected, on-hold, and terminated states, allowing applications to manage call flow dynamically.

  2. Advanced Call-Leg Handling

    • Session Participant Management

      Enables precise control over call legs, facilitating custom configurations for connecting, holding, or transferring participants in active sessions. Below is a list of complex call scenarios supported by the SIP Mediaserver service.

    • Complex Call Scenarios

      • Call Hold

        Temporarily suspends a participant's audio while maintaining the call, ideal for scenarios where agents or users need a pause during a call.

      • Attended Call Transfer

        Enables a supervised transfer where the initiator can confirm the transfer with the new participant before releasing the call.

      • Blind Call Transfer

        Facilitates an immediate transfer of the call to another participant without prior consultation, suitable for queue-based environments.

      • Consultation Call

        Allows a third party to join a call temporarily, often used in support or consultation settings before returning to the primary participant.

  3. Recording of Connected Calls

    • Call Recording Between Participants

      Records entire conversations between connected parties, essential for compliance, training, or service quality monitoring in customer-facing scenarios.

  4. Call Monitoring

    • Listen in to calls

      Easy-to-use functionality enabling supervisors to listen in on live conversations between participants without interrupting the call. Particularly valuable for call centers aiming to improve training quality or perform real-time oversight for customer interactions.

    • Easy Integration

      Supports specifying a SIP address or phone number to be called once the original call to be monitored is connected. When the monitoring call is answered, the supervisor can seamlessly listen to the ongoing conversation.

  5. Place outbound calls

    • Set up calls with API calls

      Triggers outbound calls via API to develop outbound dialler applications or to add participants to a session.

The SIP Mediaserver Service complies with key industry RFCs to ensure compatibility, security, and feature-rich capabilities for SIP and WebRTC communications.

Supported SIP RFCs

  1. Core SIP and Session Control

    • RFC 3261 - SIP: Session Initiation Protocol

      Defines the fundamental protocol for initiating, maintaining, and terminating SIP sessions.

    • RFC 3263 - SIP: Locating SIP Servers

      Details how SIP clients locate servers using DNS.

    • RFC 3264 - An Offer/Answer Model with SDP

      Provides guidelines for media negotiation using Session Description Protocol (SDP).

    • RFC 3311 - SIP UPDATE Method

      Allows modification of session parameters during an active call.

  2. SIP Call and Event Handling

    • RFC 3323 - SIP Extensions for Privacy

      Outlines mechanisms for ensuring privacy in SIP communications.

    • RFC 3325 - SIP Asserted Identity

      Enables identity assertion within SIP signaling for trusted networks.

    • RFC 3326 - SIP Reason Header Field

      Adds a header field to communicate reasons for request or termination actions.

    • RFC 4028 - SIP Session Timer

      Defines session timers to manage SIP session duration and connectivity.

  3. NAT Traversal and Signaling Enhancements

    • RFC 3581 - Symmetric Response Routing (rport)

      Provides NAT traversal for SIP responses.

    • RFC 5626 - Managing Client-Initiated Connections in SIP

      Manages long-lived client connections, particularly for devices behind NAT.

  4. Media Security and Encryption

    • RFC 3711 - Secure Real-time Transport Protocol (SRTP)

      Encrypts RTP media streams for secure voice and video.

    • RFC 5764 - DTLS-SRTP

      Supports secure key negotiation for media streams, commonly used in WebRTC.

    • RFC 5630 - SIP over TLS

      Provides encryption of SIP signaling for secure transport.

  5. WebRTC and Web-Based SIP

    • RFC 7118 - SIP over WebSocket

      Enables SIP signaling over WebSocket, supporting browser-based SIP communication for WebRTC.

    • RFC 5245 - Interactive Connectivity Establishment (ICE)

      Aids in NAT traversal and connectivity between WebRTC clients and SIP devices.

  6. DTMF and Media Control

    • RFC 2833 - RTP Payload for DTMF Digits, Telephony Tones, and Signals

      Facilitates the transport of DTMF tones via RTP.

    • RFC 2976 - The SIP INFO Method

      Specifies the use of SIP INFO requests, including DTMF tones transmission within an established session.

    • RFC 4733 - RTP Payload for DTMF, Telephony Tones, and Signals

      Expands on RFC 2833 to include more telephony tones and signal events.

  7. Codec and Media Negotiation

    • RFC 4566 - SDP: Session Description Protocol

      Manages codec and media type negotiation during SIP call setup.

    • RFC 4961 - Symmetric RTP / RTCP

      Ensures compatibility in NAT environments by supporting symmetric RTP.

Supported Audio Codecs

The SIP Mediaserver Service supports a wide range of audio codecs to ensure compatibility and high-quality audio across SIP and WebRTC endpoints. Here are the codecs currently supported:

  • PCMA (G.711 A-law)

    Widely used in telephony systems, providing standard narrowband audio quality.

  • PCMU (G.711 µ-law)

    Another commonly used narrowband codec in VoIP communications, particularly in North America.

  • G.722

    A wideband codec offering higher audio quality than standard G.711, suitable for HD voice applications.

  • OPUS

    A versatile codec with wide dynamic range, supporting both narrowband and fullband audio, commonly used in WebRTC for high-quality audio.

  • GSM

    A codec designed for mobile networks, offering efficient compression and used in various telecom applications.

  • G.729

    A low-bitrate codec that provides reasonable audio quality while conserving bandwidth, ideal for environments with limited network capacity.

These codecs enable flexible integration with diverse SIP and WebRTC devices, ensuring optimized audio quality across different applications and network conditions.