Media server configuration
media_server.conf
This file controls settings for the LumenVox Media Server.
It is located by default in mrcp-api/docker/lumenvox/media_server.conf - see following steps to edit this file.
While the MRCP-API instance is running execute the following command:
docker cp docker-cloud-media-server-1:/etc/lumenvox ./lumenvox |
Then stop the MRCP-API instance by running this command:
docker compose down |
Then edit the following file "mrcp-api/docker/docker-compose.yml"
volumes: - ./certs:/certs - ./lumenvox:/etc/lumenvox - ./logs:/var/log/lumenvox/ |
Then edit the following file "mrcp-api/docker/lumenvox/media_server.conf"
* Description: Enables compatibility encoding of results. Contact LumenVox for * details. * Default Value: 0 |
compatibility_mode = 1
Then restart the MRCP-API instance by running this command:
docker compose up -d |
The following parameters can be set. The format to use within the configuration file is PROPERTY_NAME = VALUE
GLOBAL
This section contains global configuration settings for both SRE (Speech Engine) and TTS (text-to-speech server).
VERSION
Description: Contains information about the version of the software that created the configuration file. Do not modify this. Possible Values: This should not be modified by users. |
mrcp_server_ip
Description: This is the one parameter you must modify for the Media Server to function properly. This should be the IP address of the machine the Media Server is running on. This will be used to generate responses to RTSP and SIP traffic, and must be an IP address that is reachable by the machine that your MRCP client platform is running on. Possible Values: An IP address. Default Value: 127.0.0.1 |
mrcp_server_port_base
Description: The lowest-numbered port that will be used for MRCP. One port will be used per MRCP resource. Possible Values: A valid port number. Default Value: 20000 ( Note: prior to LumenVox legacy version 12.1, this value was 30000. See Network Ports and Ranges for details of why this was changed ) |
rtp_server_port_base
Description: The lowest-numbered port that will be used for RTP/RTCP. One pair of ports will be used per RTP resource, with RTP using the even port numbers. Possible Values: A valid port number. Default Value: 25000 ( Note: prior to LumenVox legacy version 12.1, this value was 35000. See Network Ports and Ranges for details of why this was changed ) |
num_channels
Description: The maximum number of channels to be used on the machine. Cannot exceed available licenses. Setting this close to the right value for the machine will automatically scale resource usage for the specified number of channels. Possible Values: 1-5000 ( channels / sessions ) Default Value: 200 |
mrcp_server_resmax
Description: The maximum number of concurrent resources. Practically speaking, this number can not be significantly greater than the number of port licenses you have for your ASR and TTS resources. There can be up to this number of RTP ports AND also sup to this number of MRCP ports, providing that licensing requirements are met. You should allow at least a small percentage of overhead above the maximum number of licenses you intend to use, since this will help the resource manager, and there is little cost for allocating more than you need. Possible Values: An integer. Default Value: auto ( Note: prior to LumenVox legacy version 12.1, this value was 200. Setting this to auto now allows the num_channels option to determine the optimal value for this ) |
messaging_port (deprecated)
Description: this parameter sets the port on which the server will listen for incoming LVManager messages . Possible Values: A valid port number. Default Value: 7590 This setting has been deprecated |
sre_ip (deprecated)
Description: If you are running the Media Server and SRE on different machines, set this value to the IP address of the machine(s) that is/are running the ASR. Possible Values: A list of IP addresses and optional ports separated by semicolons. For instance, 127.0.0.1;10.0.0.1:5721 specifies a server at 127.0.0.1 using the default port of 5730, and a server at 10.0.0.1 using the port 5721. Default Value: 127.0.0.1 This setting has been deprecated |
enable_sre_logging (deprecated - see new setting available)
This setting has been deprecated - to save audio & metadata this needs to be enabled in SessionSettings.archives_session see Protocol Documentation (lumenvox.com) |
enable_app_stat_logging
listening_socket_size
Description: Sets the number of sockets that are allowed to backlog on the listen function.Reduce this number if your OS cannot handle the default value. A higher number here allows better call surge performance. Possible Values: An integer in the range 5-1000. Default Value: 5 ( Note: prior to LumenVox legacy version 12.1, this value was 150 ) |
port_allocation_mode
Description: Sets the mode used for MRCP/RTP port allocation. Possible Values:
Default Value: 0 |
num_spawning_threads
Description: Number of threads dedicated to handling RTSP and SIP call creation. Note that if you are planning to operate a large number of calls through the Media Server, and would like to allow for handling large spikes of inbound traffic, increasing this value is recommended. Possible Values: 1-256 Default Value: auto ( Note: prior to LumenVox legacy version 12.1, this value was 10. Setting this to auto now allows the num_channels option to determine the optimal value for this ) |
num_graveyard_threads
Description: Number of threads dedicated to performing RTSP and SIP session cleanup. Possible Values: 1-256 Default Value: auto ( Note: prior to LumenVox version legacy 12.1, this value was 10. Setting this to auto now allows the num_channels option to determine the optimal value for this ) |
num_mrcp_event_threads
Description: Number of MRCP processing threads. Possible Values: 1-256 Default Value: auto ( Note: prior to LumenVox legacy version 12.1, this value was 24. Setting this to auto now allows the num_channels option to determine the optimal value for this ) |
num_rtp_event_threads
Description: Number of RTP processing threads. Possible Values: 1-256 Default Value: auto ( Note: prior to LumenVox legacy version 12.1, this value was 12. Setting this to auto now allows the num_channels option to determine the optimal value for this ) |
max_num_rtp_packets_buffered
Description: Number of unprocessed RTP packets held when not in recognition mode. Possible Values: 0-1000 Default Value: 0 |
max_rtp_packet_size
Description: Maximum size of received RTP packets. Setting this number higher will use more memory, but allows larger packets to be processed. Possible Values: 180-3000 (bytes) Default Value: 200 Added in 19.2.100 |
REUSE_SIP_TCP_SOCKET
Description: When set to true, and using MRCP v2 with TCP SIP sockets, the SIP socket will be kept open, even when all sessions are idle. This provides better operability with platforms that prefer to re-use a single SIP TCP socket. Possible Values: true or false Default Value: false |
sip_port
Description: Sets the mode used for MRCP/RTP port allocation. Possible Values: A valid port number, or 0 to disable SIP interface Default Value: 5060 |
sips_port
Description: The port the Media Server will listen for new MRCP v2 sessions (using the SIPS protocol). Possible Values: A valid port number, or 0 to disable SIP interface Default Value: 5061 |
sip_retransmission_interval
Description: SIP retransmission interval in milliseconds (SIP T1 timer). Media gateway will send the first retransmit message at SIP_RETRANSMISSION_INTERVAL milliseconds and keep doubling it until INVITE timeout. If it is set to 0, retransmission of SIP response messages is disabled. Possible Values: 0, 500 to 32000 (should be less than the INVITE timeout) Default Value: 0 |
sips_ssl_cert_file
Description: SSL certificate (*.pem) file to use with SIPS Possible Values: A full path and certificate file name for certificate to use Default Value: When no certificate is specified (default), a self signed certificate created during installation is used. |
sips_cipher_list
Description: List of allowed ciphers to use during SIPS SSL/TLS negotiation. Possible Values: Colon delimited list of one or more of the following: TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256, TLS_AES_128_GCM_SHA256, TLS_AES_128_CCM_8_SHA256, TLS_AES_128_CCM_SHA256 Default Value: All valid ciphers. |
rtsp_port
Description: The port the Media Server will listen on for new incoming RTSP (MRCPv1) requests. Possible Values: A valid port number, or 0 to disable RTSP interface Default Value: 554 |
out_of_service
Description: When enabled(1) this will force any new calls/sessions to be rejected by the Media Server, allowing administrators to take it out of service. Any ongoing calls will be unaffected until the session ends. Possible Values:
Default Value: 0 (service is enabled) |
rtsp_out_of_service_code
Description: When out_of_service is enabled(1) this response code will be returned to RTSP clients to indicate that the Media Server is out of service. Different response codes are available to accommodate different types of client. Possible Values:
Default Value: 404 (Not Found) |
sip_out_of_service_code
Description: When out_of_service is enabled(1) this response code will be returned to SIP clients to indicate that the Media Server is out of service. Different response codes are available to accommodate different types of client. Possible Values:
Default Value: 503 (Service Unavailable) |
VendorSpecific
This section controls LumenVox-specific parameters that affect the behavior of the Media Server for both MRCPv1 and v2 traffic.
wind_back_time
Description: Amount of audio, in milliseconds, before voice activity has been detected that is sent to the speech recognition engine for decoding. Increasing this value may help if call logs show clipping at the beginning of decoded audio. Possible Values: A time in ms (0-5000). Default Value: 480 |
barge_in_timeout
Description: The amount of time in milliseconds the ASR will wait for speech before it returns a no-input event. Possible Values: A time in ms (0-40000). Default Value: 15000 |
end_of_speech_timeout
Description: Default number of milliseconds between barge-in and end-of-speech before timing out. Possible Values: A time in ms (0-400000). Default Value: 20000 |
vad_stream_init_delay
Description: Milliseconds of silence/noise/non-speech-data that can be guaranteed before the user starts speaking. This time is used in initializing some parameters. The longer this value the better the estimate. It is recommended to be 1 sec if that amount of data can be guaranteed to be non speech in the particular application Possible Values: A time in ms. Default Value: 100 |
vad_bargein_threshold
Description: Adjusts the setting of how sure the VAD needs to be that audio is human speech (as opposed to non-speech) before triggering barge-in. The higher the value, the more sure the algorithm needs to be that the frame is speech before barge-in occurs. Possible Values: 0-100 Default Value: 50 |
compatibility_mode
Description: Enables compatibility encoding of results with other vendors. Possible Values:
Default Value: 0 |
secure_context
Description: When set to 1, sensitive recognizer data will be suppressed from logs. This provides additional security for sensitive data such as account numbers and passwords that may be used within applications. Anywhere that sensitive data would have been recorded will be replaced with _SUPPRESSED in the logs. Possible Values:
Default Value: 0 |
tts_secure_context
Description: When set to 1, sensitive synthesizer data will be suppressed from logs. This provides additional security for sensitive data such as account numbers and passwords that may be used within applications. Anywhere that sensitive data would have been recorded will be replaced with _SUPPRESSED in the logs. Possible Values:
Default Value: 1 |
MRCP
Parameters in this section define how the Media Server will work with both MRCPv1 and MRCPv2.
save_waveform
Description: Overrides the default behavior of the Save-Waveform header. Possible Values:
Default Value: false |
waveform_url_location
Description:Specifies the location to save waveforms to. If this is blank, it will be disabled. Possible Values: A path on disk. Please ensure that the Media Server process has write access to this location. Default Value: (blank) |
remove_waveform_files
Description: If enabled, any waveform files saved to disk will be erased at the end of a given MRCP session. Possible Values:
Default Value: (blank) |
waveform_url_prefix
Description: Specifies prefix of returned wavefile URLs. This prefix will be returned with the filename appended. The default waveform_url_location will be used if this value is not set. Using this option may be useful when exposing these files via some HTTP/HTTPS server, allowing you to specify a different returned URL in place of the actual location of the audio file(s) on the file system. Possible Values: A prefix of your choosing, or blank for no prefix Default Value: (blank) |
send_sip_trying
Description: Some clients may require the optional '100 TRYING' messages to be returned from INVITE requests prior to OK. Most clients do not require this response. Set this to 1 (enabled) if you explicitly need these responses when using SIP, otherwise leave as the default 0 (disabled). Possible Values:
Default Value: 0 |
use_speech_incomplete
Description: When enabled (1) the Media Server will use the greater of either speech-complete-timeout or speech-incomplete-timeout. When disabled, speech-incomplete-timeout will be ignored and timing will be based on speech-complete-timeout alone.. Possible Values:
Default Value: 0 |
MRCPv1
The parameters in this section only apply to MRCPv1 sessions.
recognizer_resource_url
Description: The URL that clients will include in MRCPv1 requests for speech recognition resources. This value should be the same on both client and server Possible Values: A URL. Default Value: /media/speechrecognizer |
synthesizer_resource_url
Description: The URL that clients will include in MRCPv1 requests for TTS resources. This value should be the same on both client and server Possible Values: A URL Default Value: /media/synthesizer |
force_increment_rtsp_cseq
Description: When enabled (1), RTSP CSeq numbers will be incremented for server-originated packets. If disabled (0) the CSeq will correspond to the original request Possible Values:
Default Value: 0 |
enable_rtsp_idle_timeout
Description: Detects RTSP connections that remain idle after 10 seconds if enabled (1) and will drop the connection in such cases. If disabled (0), no such check is performed, meaning the client application is responsible for cleaning such idle connections. Possible Values:
Default Value: 0 |
MRCPv2
The parameters in this section only apply to MRCPv2 sessions.
mrcp_tls_cert_file
Description: SSL certificate (*.pem) file to use with MRCPv2/TLS Possible Values: A full path and certificate file name for certificate to use Default Value: When no certificate is specified (default), a self signed certificate created during installation is used. |
mrcp_tls_cipher_list
Description: List of allowed ciphers to use during MRCPv2 TLS negotiation. Possible Values: Colon delimited list of one or more of the following TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256, TLS_AES_128_GCM_SHA256, TLS_AES_128_CCM_8_SHA256, TLS_AES_128_CCM_SHA256 Default Value: All valid ciphers. |
allow_unauthenticated_srtp
Description: When enabled (1), SIPS calls that specify UNAUTHENTICATED_SRTP in SDP crypto parameter will be allowed. If disabled (0) SIPS calls that specify UNENCRYPTED_SRTP in all SDP crypto parameter will not be allowed. Possible Values: 0 or 1 Default Value: 1 |
allow_unencypted_srtp
Description: When enabled (1), SIPS calls that specify UNENCRYPTED_SRTP in SDP crypto parameter will be allowed. If disabled (0) SIPS calls that specify UNENCRYPTED_SRTP in all SDP crypto parameter will not be allowed. Possible Values: 0 or 1 Default Value: 1 |