Breakout Dialing

Breakout Dialing

The BreakoutDialing requests the network infrastructure to prompt the caller to enter a complete Breakout Destination. This address may be checked against a static list of configured “permitted destination patterns” configured into this operation. If the Breakout Destination is acceptable, the call process will attempt to terminate the call to this destination address.

Note that when attached to a Toll-Free Service Number, this operation allows callers to potentially make non-charged calls to arbitrary destination numbers. A BreakoutDialing operation should always be protected by a preceding PinAuthorisation or AccountCodeEntry operation.

The BreakoutDialing operation has three exits. If the caller abandons (i.e. hangs up) during the announcement, no further processing is performed and no exit is followed.

Otherwise, the exits followed are:

Config Parameters

The BreakoutDialing operation config attributes are as follows.

Parameter Type Description
main_announcement Announcement
Object
[Required] The main_announcement parameter is an Object using the shared announcement configuration structure as defined in the Flow Introduction documentation. This announcement is played as the prompt on the caller's first attempt to enter input.
reprompt_announcement Announcement
Object
[Required] The reprompt_announcement parameter is an Object using the shared announcement configuration structure as defined in the Flow Introduction documentation. This announcement is played as the prompt on the caller's second and subsequent attempts to enter input.
max_iterations Integer The maximum number of attempts that the caller may have to enter a valid Breakout Destination.
(Default = 3)
min_digits Integer [Required] The minimum number of digits which may constitute a valid Breakout Destination. This value must be in the range of 6-20 inclusive and must be <= max_digits.
max_digits Integer [Required] The maximum number of digits which may constitute a valid Breakout Destination. This value must be in the range of 6-20 inclusive and must be >= min_digits.
timeout_seconds Integer The number of seconds for which the Breakout Destination should be rung before deciding that the call is unanswered and proceeding to the Busy/NoAnswer exit. If there is no processing attached to the Busy/NoAnswer exit, then this timeout value will not be used. If present, this value must be greater than or equal to zero. If absent or if zero, then a system-configured default timeout will be used.
end_character String Controls how the "End of Input" digit is handled when the caller is entering input digits. This must be either default (use system default behavior), or none (no end of input digit will apply to this interaction).
(Default = default)
cancel_character String Controls how the "Cancel Input" digit is handled when the caller is entering input digits. This must be either default (use system default behavior), or none (no cancel of input digit will apply to this interaction).
(Default = default)
destination_patterns Array of
String
If this parameter is present then it must be an Array containing one or more patterns against which the Breakout Destination address will be validated before allowing the termination attempt to occur. See the notes on Pattern Matching in the Flow Elements Introduction documentation. If the destination_patterns parameter is present and the user-supplied Breakout Destination does not match any of the listed patterns, then the "No Match" exit will be followed.
(Default = No Checking)

Example Operation

Here is an example BreakoutDialing operation in JSON representation.

    {
        "id": 5,
        "type": "BreakoutDialing",
        "base_node": 1,
        "config": {
            "main_announcement": { "set": "General Purpose Anns",
                                   "entry": "Please Enter Breakout Destination", "repetition": 1
            },
            "reprompt_announcement": { "set": "General Purpose Anns",
                                       "entry": "Invalid Input Please Try Again", "repetition": 1
            },
            "min_digits": 9,
            "max_digits": 12,
            "end_character": "none",
            "cancel_character": "none",
            "destination_patterns": [
                "04432[7-9]???",
                "063581140"
            ]
        },
        "exits": [ 4, 17, 22 ]
    }

The entered Breakout Destination must be either 044327xyz, 044329xyz, or 044329xyz, or 063581140.

If the caller enters a valid Breakout Destination, but termination attempt gives Busy/NoAnswer then processing will continue down exit index 0 to operation ID 4.

If the caller cannot provide sufficient digits to form a Breakout Destination after three attempts, processing will continue down exit index 1 to operation ID 17.

If the caller provides sufficient digits to form a Breakout Destination, but the entered digits do not match a valid destination number/pattern from the destination_patterns Array, processing will continue down exit index 2 to operation ID 22.

Exits

There are always exactly three exits for an BreakoutDialing operation.

Exit Index Name Description
0 Busy/NoAnswer [Required] This exit is followed if the caller successfully entered a valid Breakout Destination, but the termination attempt gives a Busy/NoAnswer result.
1 Insufficient Digits [Required] This exit is followed if the caller failed to enter an acceptable number of digits for a Breakout Destination after the maximum number of iterations, and is still connected at the end of the interaction.
1 No Match [Required] This exit is followed if the caller entered an acceptable number of digits for a Breakout Destination, but the Breakout Destination fails validation against the destination_patterns list.