SrpSipApp
SRP SIP Application Configuration
This is configuration for the deprecated, legacy deployment of the the N2IVR product.
This application implements a non-customizable INAP-controlled IVR platform, that is:
- SIP/RTP is used for audio stream control.
- INAP is used to allow to receive interaction instructions.
Note that the SRP SIP App is only an end-point for RTP streams. It does not proxy/transcode RTP packets.
The SrpSipApp
relies on two other applications:
- The
SigtranApp
for INAP communication over SIGTRAN. - The
RtpApp
for RTP streaming, typically usingrepeat
for scalability.
Here is a SRP SIP Application config example.
<?xml version="1.0" encoding="utf-8"?>
<n2svcd>
...
<applications>
...
<application name="SRP" module="SrpSipApp">
<include>
<lib>../../n2sip/apps/srp_sip/lib</lib>
<lib>../../n2sip/lib</lib>
</include>
<parameters>
<parameter name="trace_level" value="1"/>
<parameter name="edr_enabled" value="1"/>
<parameter name="sip_bind_host" value="0.0.0.0"/>
<parameter name="sip_bind_port" value="5060"/>
<parameter name="sip_edr_merge" value="1"/>
<parameter name="sip_max_forwards" value="70"/>
<parameter name="rtp_app_name" value="RTP"/>
<parameter name="default_sigtran_app_name" value="SIGTRAN"/>
<parameter name="scp_id_len" value="1"/>
<parameter name="correlation_id_len" value="3"/>
<parameter name="language_default" value="English"/>
<parameter name="language_1" value="English"/>
<parameter name="language_2" value="German"/>
</parameters>
<config>
<scps>
<scp id="1" dri="1" dpc="4114" dssn="106"/>
</scps>
<sip_peers>
<sip_peer id="TEST" sip_host="192.168.1.5" sip_port="5061"/>
</sip_peers>
<endpoints>
<endpoint sip_peer_id="TEST" digits="902666444"/>
</endpoints>
</config>
</application>
...
</application>
...
</n2svcd>
Configuration Details
The application
element attributes for an SRP SIP Application instance may include the below. For details of the
various parameter types used, refer to Common Configuration.
Parameter Name | Type | XML Type | Description |
---|---|---|---|
See: Common Application configuration | |||
See: SIP Application configuration | |||
module
|
String | Attribute |
[Required] SrpSipApp
|
include.lib
|
String | Attribute |
[Required] ../../n2sip/apps/srp_sip/lib [Required] ../../n2sip/lib
|
parameters
|
Array | Element |
Array of name = value Parameters for this Application instance.
|
"early_media_policy"
|
never
|
Attribute |
This parameter should not be configured for this application. It will be forced to never .(Default = never ).
|
"default_sigtran_app_name"
|
String | Attribute |
The name of the destination SIGTRAN Application used for communicating with the SCP nodes. (Default = "SIGTRAN"). |
"scp_id_location"
|
before / after / Integer
|
Attribute |
Where the SCP ID is located in the incoming Called Party Address. [N > 0] = As a prefix starting N characters from the start of the string.before = As a suffix near the end of the string, before the Correlation ID.after = As a suffix at the end of the string, after the Correlation ID.(Default = after ).
|
"scp_id_len"
|
Integer | Attribute |
The number of digits for the SCP ID parsed from inbound Called Party. (Default = 1). |
"correlation_id_len"
|
Integer | Attribute |
The number of digits for the CorrelationID parsed from inbound Called Party. (Default = 4). |
"inap_variant"
|
cs1 / camel2 / camel3 / camel4
|
Attribute |
Which INAP protocol variant to use when encoding and decoding INAP messages exchanged with the SCP. (Default = cs1 ).
|
"tcap_ari_ac"
|
cs1_ip / camel2_srf / camel3_srf / camel4_srf
|
Attribute |
The TCAP Application Context to use when sending AssistRequestOperation to the SCP.(Default = cs1_ip ).
|
"instruction_timer_ms"
|
Integer | Attribute |
How long an SRP will wait to receive PlayAnnouncement or PromptAndCollectUserInformation
instructions from the controlling application before we consider that control is lost. This applies both to the first
play instruction after the AssistRequestInstructions is sent and for subsequent play instructions.If no instruction is received within the indicated period, the SrpSipApp will
tear down the SIP call and RTP stream and send a TCAP_ABORT message.(Default = 2500 ).
|
"language_extension_id"
|
Integer | Attribute |
For all received INAP/CAP PlayAnnouncement and PromptAndCollectUserInformation operations,
the SRP will look for an INAP extension with this numeric Type ID. The extension payload contains an integer language ID value
which is mapped to determine the preferred language name for announcement message ID mapping and for variable parts.The binary encoding of this extension is defined in the "N2IVR INAP Conformance" document. (Default = 400). |
"language_default"
|
String | Attribute |
The Default Language Name to use. This must be a known language name for which a Variable Parts Codec is installed. (Default = "English"). |
"language_ <index>"
|
String | Attribute |
The Language Name applicable to this integer language identifier (see language_extension_id ).This must be a known language name for which a Variable Parts Codec is installed. (Default = None). |
"scp_star_digit"
|
[A-F]
|
Attribute |
The hex digit used to represent "Star" when communicating with the SCP, specifically:
B ).
|
"scp_hash_digit"
|
[A-F]
|
Attribute |
The hex digit used to represent "Hash" when communicating with the SCP, specifically:
C ).
|
config
|
Object | Element | Container for extended configuration for this Application instance. |
.scps
|
Array | Element |
Array of scp elements defining known SCP nodes to receive AssistRequestInstructions .
|
.scp
|
Object | Element |
Provisions an SCP node to which we may send AssistRequestInstructions .
|
SCP Addresses
Each SCP definition defines the address for a known SCP which is ready to accept an INAP
AssistRequestInstructions
operation.
Each scp
Object in the config
.scps
Array is configured as follows.
Parameter Name | Type | XML Type | Description |
---|---|---|---|
id
|
Hex Digits | Attribute | [Required] SCP Identifier, as will be given to us in the SIP INVITE. |
dri
|
Integer | Attribute |
Destination SCCP Routing Indicator for this SCP with this <id>.0 = Global Title, 1 = PC+SSN(Default = 0 ).
|
dssn
|
Integer | Attribute |
Destination SCCP SSN for the SCP with this <id>. [Required when dri = 1 ]
|
dpc
|
Integer | Attribute |
Destination SCCP Point Code for the SCP with this <id>. [Required when dri = 1 ]
|
dgt_digits
|
Hex Digits | Attribute |
Destination SCCP Global Title Digits for the SCP with this <id>. [Required when dri = 0 ]
|
dgt_tt
|
Integer | Attribute | Destination SCCP Global Title Translation Type for the SCP with this <id>. |
dgt_np
|
Integer | Attribute | Destination SCCP Global Title Numbering Plan for the SCP with this <id>. |
dgt_noa
|
Integer | Attribute | Destination SCCP Global Title Nature of Address for the SCP with this <id>. |
Message Handling
The SrpSipApp
uses the following messages:
- HEARTBEAT Messages.
- MANAGEMENT Messages (!MANAGEMENT-*-REQUEST inbound).
- TCAP Messages (TCAP-BEGIN outbound).
- RTP Messages (RTP-ESTABLISH outbound).