Application Parameters
DSG-SCP Application Configuration
Top-level per-instance application parameters are defined in the parameters section of the DSG-SCP configuration.
Each parameter must have a name and a value.
A sample application parameters configuration might be:
<application name="<application instance name>" module="DsgScpApp">
...
<parameters>
<parameter name="trace_level" value="1" />
<parameter name="trace_level_max" value="1" />
<parameter name="trace_per_second" value="1" />
<parameter name="retention_count" value="20" />
<parameter name="edr_enabled" value="1" />
<parameter name="edr_directory" value="/var/tmp/edr" />
<parameter name="edr_prefix" value="n2dsg" />
<parameter name="edr_hostname" value="hostname" />
<parameter name="edr_retry_interval" value="60" />
<parameter name="edr_report_interval" value="10" />
<parameter name="edr_num_files_shown" value="10" />
<parameter name="edr_max_file_edrs" value="10000" />
<parameter name="edr_max_file_secs" value="600" />
<parameter name="edr_max_flush_edrs" value="10" />
<parameter name="edr_max_flush_secs" value="10" />
<parameter name="diameter_app_name" value="diameter" />
<parameter name="diameter_sid_prefix" value="N2DSG" />
<parameter name="diameter_timeout_tx" value="2.0" />
<parameter name="diameter_use_mscc" value="1" />
<parameter name="diameter_send_msisdn" value="1" />
<parameter name="diameter_send_imsi" value="0" />
<parameter name="diameter_send_subscription_id" value="1" />
<parameter name="diameter_send_subscription_id_extension" value="1" />
<parameter name="diameter_default_rsu_seconds" value="120" />
<parameter name="diameter_default_service_context_id" value="n2dsg@nsquared.nz" />
<parameter name="diameter_rounding_type" value="round" />
<parameter name="diameter_split_edrs" value="1" />
<parameter name="cfnr_handling" value="continue" />
<parameter name="cfu_handling" value="continue" />
<parameter name="time_mismatch_mode" value="suppress" />
<parameter name="time_mismatch_grace_ds" value="10" />
</parameters>
...Configuration Details
The available parameter types for a DSG-SCP Application instance are:
| Attribute | Type | Description |
|---|---|---|
parameters
|
Array |
Array of name = value Parameters for this Application instance.
|
.trace_level
|
Integer |
Set to 1 to enable DEBUG tracing associated with call processing.Set to 2 to enable DUMP tracing associated with call processing.Set to 3 to enable SPAM tracing associated with call processing.The DEBUG setting should be used with caution in a high-traffic environment, as it
will cause additional system loading and reduce overall processing capability.The DUMP and SPAM settings should not be used in a high-traffic environment.(Default = 0, do not activate tracing).
|
.trace_level_max
|
Integer |
This is a hard cap for trace level enabled dynamically during operation, e.g. via
tracing traps or via dynamic change to trace_level using the administration GUI.This is intended to protect production systems from excessive tracing overheads. It is determined at startup time and cannot be modified. Set 0 = none, 1 = debug, 2 = dump, 3 = spam.(Default = one level higher than the initial value of trace_level)
|
.trace_per_second
|
Integer |
The maximum number of instances for this application which may have their instance trace
log enabled in any given second. If this value is reached, then subsequent requests
to activate tracing will be ignored until the start of a new clock second. Values above 1 should be used with care in production systems.(Default = 1)
|
.retention_count
|
Integer |
The number of most-recent traced dialogs to retain in-memory for monitoring. (Default = 50).
|
.edr_enabled
|
YES / NO / 1 / 0
|
Should EDR file-writing be enabled? (Default = NO, do not write EDR files).
|
.edr_directory
|
String |
Directory where EDR files will be written. (Default = /var/lib/n2svcd/edrs).
|
.edr_prefix
|
String |
Prefix for EDR filenames. (Default = n2dsg).
|
.edr_hostname
|
String |
Hostname for EDR filenames. (Default = Determined from System Configuration). |
.edr_retry_interval
|
Integer |
How often do we attempt to retry and create a new EDR output file
after an attempt to create/write a new file has failed. (Default = 30 seconds).
|
.edr_report_interval
|
Integer |
How often does the EDR Writer child process report the current file
size and EDR count back to the parent process for Management purposes. (Default = 5 seconds).
|
.edr_num_files_shown
|
Integer |
How many recent EDR files does the Toll-Free application display in the
Management Interface. (Default = 20 files).
|
.edr_max_file_edrs
|
Integer |
How many EDRs can be written to an EDR file before we close the file and start
a new file. (Default = 2000 EDRs).
|
.edr_max_file_secs
|
Integer |
For how long can an EDR file be open before we close the file and start
a new file. (Default = 300 seconds).
|
.edr_max_flush_edrs
|
Integer |
How many EDRs can be written to an EDR file before we perform a disk I/O
flush on the file. (Default = 20 EDRs).
|
.edr_max_flush_secs
|
Integer |
How long an EDR file can be open before a disk I/O flush is performed on the file. (Default = 5 seconds).
|
.min_grant_secs
|
2 - 120
|
The shortest grant (in seconds) which the service logic (typically instructed by the external
OCS) will be permitted to apply in real-time. Any attempt by the service logic (or OCS) to
use a lower value thyan this will cause the charged call processing to be aborted. Very short grant periods will cause significantly increased call processing overheads. The shortest allowable grant period must be at least one second higher than the configured `service_logic_ms` processing window. (Default = 5 seconds).
|
.service_logic_ms
|
10 - 5000
|
The limit (in milliseconds) in which service logic must perform its processing and control
decisions for real-time SCP call control. This must be sufficiently large to allow for access to
external entities, e.g. Database Lookup, Diameter Requests, etc. This value must be at least 1000 milliseconds lower than the configured `min_grant_secs`
to avoid the possibility of service logic taking longer to process than the grant duration.(Default = 3500 milliseconds).
|
.correlation_id_ms
|
10 - 5000
|
The limit (in milliseconds) in which the SigtranApp must return our correlation ID
when we request one for including in the EstablishTemporaryConnection for an off-switch
SRP interaction.(Default = 1500 milliseconds).
|
.default_tcap_immediate_ms
|
10 - 5000
|
The limit (in milliseconds) within which an "immediate" TCAP component must arrive
after another message. For example, at the end of a call we expect any of the following
applicable components (CallInformation, EventReportBCSM,
ApplyChargingReport) to arrive "immediately" one after the other.Individual SSP models may override this value. (Default = 500 milliseconds).
|
.default_tcap_margin_ms
|
10 - 5000
|
The grace period (in milliseconds) within which a medium/long-term expected TCAP component may
arrive late because of allowance for processing and network time. Specifically for SSP it allows an ( Answer/NoAnswer)
EventReportBCSM to arrive slightly after the applicationTimer timeout.For SSP it also allows the first message at the end of the call (e.g. ApplyChargingReport,
EventReportBCSM, or CallInformationReport) to be slightly
later than the aChBillingChargingCharacteristics contents strictly specify.For an SRP definition, this parameter adds a margin on top of max_pa_secs or
max_pacui_secs to allow for network/processing delay.Individual SSP models may override this value. Individual SRP definitions may override this value. (Default = 500 milliseconds).
|
.default_max_monitored_call_secs
|
300 - 7200
|
The is the permitted maximum duration of a "Monitored", which is a call which uses Disconnect ERBCSM
to monitor the duration of the call but which does not use the "Charged" call mechanism to perform
initial/extension grants. A Monitored call may use CallInformationReport and or ActivityTest,
but in any case this maximum duration still applies.Individual SSP models may override this value. (Default = 7200 seconds). |
.default_max_charged_call_secs
|
300 - 86400
|
This is the maximum total granted talk time that the SCP layer will ever permit for a "Charged" call
either using ApplyCharging or the CAMEL1 alternative using only ActivityTest.
If the service logic (typically instructed by the OCS) attempts to grant a call longer than this
duration, the SCP layer will truncate the grant to the configured duration and forcibly terminate the call
when that time expires.Individual SSP models may override this value. (Default = 86400 seconds). |
.default_ac_crossover_ms
|
10 - 5000
|
The limit (in milliseconds) within which an "immediate" TCAP component must arrive
after another message. For example, at the end of a call we expect any of the following
applicable components (CallInformation, EventReportBCSM,
ApplyChargingReport) to arrive "immediately" one after the other.Individual SSP models may override this value. (Default = 500 milliseconds).
|
.default_activity_test_result_ms
|
10 - 5000
|
The limit (in milliseconds) within which an "immediate" TCAP component must arrive
after another message. For example, at the end of a call we expect any of the following
applicable components (CallInformation, EventReportBCSM,
ApplyChargingReport) to arrive "immediately" one after the other.Individual SSP models may override this value. (Default = 1000 milliseconds).
|
.default_max_pa_secs
|
5 - 3600
|
This is the maximum time allowed duration of interaction resulting from sending PlayAnnouncement
to this (on-switch or external) SRP. The SRP connection will be aborted if SpecializedResourceReport
is not received within this time.The additional global TCAP round-trip allowance tcap_margin_ms will be added to this value.Individual SRP definitions may override this value. (Default = 300 seconds). |
.default_max_pacui_secs
|
5 - 3600
|
This is the maximum time allowed duration of interaction resulting from sending PromptAndCollectUserInformation
to this (on-switch or external) SRP. The SRP connection will be aborted if PromptAndCollectUserInformationResult
is not received within this time.The additional global TCAP round-trip allowance tcap_margin_ms will be added to this value.Individual SRP definitions may override this value. (Default = 300 seconds). |
.default_max_etc_ms
|
10 - 5000
|
This is the maximum time that the SCP layer will allow between sending EstablishTemporaryConnection
to the SSP and receiving AssistRequestInstructions from the SRP. The SRP connection process will
be aborted if the ARI is not received within this time window.Individual SRP definitions may override this value. (Default = 4000 milliseconds). |
.edr_initialdp_extended
|
0 / 1 / yes / no
|
Include IDPX_ extended InitialDP fields in INITIALDP event EDRs?(Default = 0, not included).
|
.hlr_sigtran_app_name
|
String |
The name of a configured n2svcd application instance of SigtranApp which can route to the HLR
for sending AnyTimeInterrogationRequest.(Default = HLR ATI is not available). |
.hlr_ssn
|
1 - 255
|
The destination SCCP SubSystem Number for routing AnyTimeInterrogationRequest to the HLR.(Default = HLR ATI is not available). |
.hlr_gt_digits
|
Hex String |
The destination SCCP Global Title for routing AnyTimeInterrogationRequest to the HLR.(Default = HLR ATI is not available). |
.diameter_app_name
|
String | [Required] The configured N2SVCD name for the Diameter application to use for communicating with the Diameter server. |
.diameter_sid_prefix
|
String |
The prefix to use for Diameter Session-Id values generated.
Session-Id values are generated as <prefix>:<application name>:<unique digits>.(Default = N2DSG).
|
.diameter_timeout_tx
|
Float |
The number of seconds to wait for a response from the Diameter server for credit control requests.
Must be a positive integer or float value. (Default = 2.0 seconds).
|
.diameter_use_mscc
|
Boolean |
Whether to put rating AVPs inside a Diameter Multiple-Services-Credit-Control AVP or not.If set to false, rating AVPs will be placed at the root level.(Default = true).
|
.diameter_send_msisdn
|
Boolean |
Whether to send the subscriber MSISDN (derived as per Subscriber Selection to the OCS in Diameter requests. At least one of diameter_send_msisdn and diameter_send_imsi must be enabled.If no suitable subscriber MSISDN is provided in the received `InitialDP`, the call will be rejected. (Default = true).
|
.diameter_send_imsi
|
Boolean |
Whether to send the received subscriber IMSI to the OCS in Diameter requests. At least one of diameter_send_msisdn and diameter_send_imsi must be enabled.If no IMSI is provided in the received `InitialDP`, the call will be rejected. (Default = false).
|
.diameter_send_subscription_id
|
Boolean |
Whether to send subscriber information inside a Diameter Subscription-Id AVP or not.Should be enabled for strict compatibility with RFC 4006. At least one of diameter_send_subscription_id and diameter_send_subscription_id_extension must be enabled.(Default = true).
|
.diameter_send_subscription_id_extension
|
Boolean |
Whether to send subscriber information inside a Diameter Subscription-Id-Extension AVP or not.Should be enabled for strict compatibility with RFC 8506. At least one of diameter_send_subscription_id and diameter_send_subscription_id_extension must be enabled.(Default = false).
|
.diameter_default_rsu_seconds
|
Integer |
The number of seconds to request by default in Diameter messages if no selector rule applies. (Default = 60 seconds).
|
.diameter_default_service_context_id
|
Integer |
The Diameter Service-Context-Id value to send if no selector rule applies. (Default = n2dsg@nsquared.nz).
|
.diameter_rounding_type
|
String |
The rounding method to apply for times provided by the network, where required. Times that are already an
even number of seconds (including 0) will not be modified. Possible values are:
ceiling).
|
.diameter_split_edrs
|
Integer |
Whether to write a single EDR containing both the Diameter request and response details (0) or
whether to write separate EDRs for the Diameter request and response (1).
(Default = 0).
|
.cfnr_handling
|
String |
The handling to apply when the network indicates that call forwarding applies during an ERBCSM for an MT call
(late call forwarding). Some network elements require that the call attempt have an explicit Continue instruction
in order to allow call forwarding to operate. Possible values are:
continue).
|
.cfu_handling
|
String |
The handling to apply when the network indicates that call forwarding applies during an InitialDP for
an MT call (early call forwarding). As the terminating leg does not leave the home network in this case, some operators
prefer that such call attempts are not sent for normal processing or billing. Possible values are:
continue).
|
.time_mismatch_mode
|
String |
The time reported to the billing engine for a call is taken straight from the value provided by the serving switch
However, this value may sometimes not actually reflect the elapsed wall time, particularly when dealing with
roaming partners. The DSG-SCP allows these situations to be highlighted for reporting purposes using the
time_mismatch_mode parameter when the mismatch is outside the allowable variance given by the
time_mismatch_grace_ds parameter. Possible values are:
GRACE EDR is not created for time mismatches, as the time was not granted by the
DSG-SCP.
(Default = record).
|
.time_mismatch_grace_ds
|
Integer |
Used in conjunction with the time_mismatch_mode parameter, this is the number of deciseconds of
variation that is allowable when comparing the reported time from the network against the wall clock time.Note that this parameter has no effect if the time_mismatch_mode parameter is set to
suppress.(Default = 10).
|