Post-Call Rules
Post-Call Rules
Post-call rules may be defined to control DSG-SCP behaviour at the conclusion of a call when either the calling or called party has released the call.
An example post-call processing configuration might be:
...
<post_call>
<rule edp="rsf" action="release" cause="15" />
<rule edp="busy" action="release" cause="edp" />
<rule tag="network" value="roaming" action="continue" notification="notf1" />
<rule tag="network" value="home" action="announcement_continue"
srf_name="OnSwitch" announcement_id="3" />
</post_call>
...
Note that this processing applies only after the actions continue
or continue_period
have been applied.
Configuration Details
Each rule
can support the following attributes:
Attribute | Type | Description |
---|---|---|
action |
String | [Required] The action to take when this rule is matched. Possible values are shown under Post-Call Rule Actions. |
tag |
String | [Conditional] The tag name to match the value for If tag is present, value must also be present. |
tag_x |
String | [Conditional] As for tag , but with x representing a unique pairing, e.g. tag_1 or tag_a . A matching value_x must also be present. |
value |
(various) | [Conditional] The string or integer value to match against during rule selection. Required when tag is present. |
value_x |
(various) | [Conditional] As for value , but with x representing a unique pairing, e.g. value_1 or value_a . A matching tag_x must also be present. |
originating |
Boolean | Whether this rule applies for originating calls. (Default: true ) |
forwarding |
Boolean | Whether this rule applies for forwarding calls. (Default: true ) |
terminating |
Boolean | Whether this rule applies for terminating calls. (Default: true ) |
cause |
Integer | The release cause to send to the network if the action releases the call. May be specified as edp in order to pass through the received EDP cause from the network, if any.(Default: 31 ) |
announcement_id |
Integer | [Required with action = announcement_release or announcement_connect ] The announcement ID to play to the caller, if appropriate to the action . |
announcement_source |
String | The tag to use as the announcement ID to play to the caller, if appropriate to the action . If no value or a non-numeric value is found, announcement_id will be used instead. |
srf_name |
String | [Required with action = announcement_release or announcement_connect ] The SRF name (as configured in the ScpApp ) to use to play an announcement to the caller, if appropriate to the action . |
srf_source |
String | The tag to use as the SRF name to use to play an announcement to the caller, if appropriate to the action . If no value or a non-numeric value is found, srf_name will be used instead. |
divert_to |
String | [Required with action = connect or announcement_connect ] The normalised destination digits to connect the call to, if approrpiate to the action . |
notification |
String | A notification message name to send when this rule applies. |
fci or sci |
String | An FCI or SCI message name to send when this rule applies. Only available for certain actions. |
edp |
String | Whether this rule applies only when a specific EDP has been received. If defined, must be a valid EDP name. (Default: match all EDPs) |
edp_cause |
String | Whether this rule applies only when a specific EDP cause has been received. (Default: match all EDP causes) |
(other available fields) | (various) | Any number of selector rule available fields. |
Note that, unlike other selector rules, the call state selectors at_initial
,
at_update
, and at_terminate
are not permitted, as post-call processing can only occur at the end of a call.
EDP Names
Post-call rules may specify which Event Detection Points to match on. Valid EDP names are:
busy
: matches the EDPsoCalledPartyBusy
ortBusy
rsf
: matches the EDProuteSelectFailure
no_answer
: matches the EDPsoNoAnswer
ortNoAnswer
abandon
: matches the EDPsoAbandon
ortAbandon
Post-Call Rule Actions
Each post-call rule must specify a single action to take when a rule is matched during processing.
Note that all post-call rules are only applicable after the call has been completed (whether successfully or unsuccessfully).
No action will be performed if the calling party is no longer connected (but other non-telephony parameters such as
notification
may still apply).
The following actions are available:
Action | Possible Parameters |
FCI/SCI? | Description |
---|---|---|---|
continue |
- | No | Allow the call to continue as usual. This is functionally identical to the release action. |
release |
cause |
No | Release the call immediately with the given cause . |
connect |
divert_to |
Yes | Terminate the call to the provided divert_to with no further rating interaction. |
announcement_continue |
announcement_id srf_name announcement_source srf_source cause |
No | Play the given announcement on the specified SRF (as configured under SRF Endpoints) and then apply handling as for continue . |
announcement_release |
announcement_id srf_name announcement_source srf_source cause |
No | Play the given announcement on the specified SRF (as configured under SRF Endpoints) and then apply handling as for release . |
announcement_connect |
announcement_id srf_name divert_to announcement_source srf_source |
Yes | Play the given announcement on the specified SRF (as configured under SRF Endpoints) and then apply handling as for connect . |
abort |
- | No | Send a TC_ABORT to end the call immediately. |