N2IWF Globals
N2IWF Globals
Most configuration of the behaviour of the N2IWF platform is done using LogicApp global variables.
These are set at N2SVCD startup and may not be altered at runtime.
Most N2IWF globals are N2SVCD rule engine
selector rule sets,
with the remainder being either
simple or complex
definitions. Note that N2IWF further classifies rules that require an action
parameter as
“action rules”.
The available N2IWF globals are:
- N2SVCD rule engine variables
- Notification definitions
- Various N2IWF action rules
In addition, there is extensive configuration for Diameter message handling during a rating session, as well as configuration specifically for each type of input traffic supported:
Selector Rules Extensions
The N2IWF provides some extensions to the standard N2SVCD selector rule attributes.
An example Result-Code rule array for CAMEL calls might include this rule:
<global name="RESULT_CODES" type="array">
...
<rule code="2002" service.loop_number="0" service.at_update="0" service.at_terminate="0" action="divert" divert_to="234" loop="1" />
...
</global>
This rule would apply when:
- a Result-Code of
2002
was returned by the OCS… - … only at an initial interrogation…
- … on the first loop.
It would then divert the call and request a loop be performed afterward.
Core IWF Actions
When processing action rules, the N2IWF supports core actions that apply to all input protocol.
Action | Valid At | Description |
---|---|---|
continue |
(all) | Continue the session normally with rating interaction where applicable. |
release |
(all) | End the session immediately. |
Each input protocol, along with protocol-specific actions, may also specify additional parameters for core actions.
Core IWF Action Rule Directives
When processing action rules, additional directives may be used to apply N2IWF features.
Directive | Type | Description |
---|---|---|
loop |
Integer | If set to a truthy value, looping will be requested and apply after post-rating. If set to a non-truthy value, any current looping request will be cancelled. |
notification |
String | Causes a notification to be sent. |
Note that these directives are ignored for non-action rules used for source selection, e.g. requested time rules.
Each input protocol may also specify additional directives for action rules.
Additional Selectors
In addition to the standard N2SVCD rule engine selector rule fields, N2IWF has additional selectors that may be used.
Selector | Type | Description |
---|---|---|
service.rc_last |
Integer | The last effective Result-Code returned from the OCS. |
service.rc_last_class |
Boolean | The class of the last effective Result-Code. |
service.at_initial |
Boolean | Whether the rule applies at initial interrogation of the OCS. |
service.at_update |
Boolean | Whether the rule applies at interim interrogation of the OCS. |
service.at_terminate |
Boolean | Whether the rule applies at final interrogation of the OCS. |
service.loop_number |
Boolean | The current loop number. |
service.loop_requested |
Boolean | Whether looping has been requested. |
In addition, if an N2CUG external action has been performed, the field
service.cug
will contain the results of the
N2CUG lookup.
These selectors are available for all rules, including action rules.
Each input protocol may also specify additional selectors for rules.