Determine Valid Phone Numbers for all Outbound Calls

$phone_mask line action mask [output_string]

The $phone_mask command in the configuration file allows you to control the allowable outbound call area and optional dialing prefixes and suffixes for your phone system, and to select which lines are to be used for specific telephone number types. If the number is acceptable, you use the output string to convert it to either an intermediate string for further checks or to a dialing sequence for your phone system.

From COPIAFACTS engine release 7.348, phone masks which define a number mask to be rejected on 'all lines' can be added to exclusion search tree which can be scanned faster than the default of sequential matching of phone mask entries. For more information see the phone mask examples topic.

The parameters on this command are used as follows:

line the line number or line group(s) to be used, or * for all lines. The * entries are processed at call time after any user profile phone masks, as well as at the time of sending the fax.
action determines restriction or processing. You can specify either the code letter or the keyword:
c | convert convert phone numbers matched to mask, using output-string, for further phone-mask processing.
+ | accept accept phone number. For special purposes, the symbol + may be followed by a numeric TOSEND queue number (from 0 to the maximum queue number) which qualifies the mask as applying only to items in this queue number.
- | reject reject phone number. For special purposes, the symbol - may be followed by a numeric TOSEND queue number (from 0 to the maximum queue number) which qualifies the mask as applying only to items in this queue number.
~ | decline decline phone number for this line. For special purposes, the symbol ~ may be followed by a numeric TOSEND queue number (from 0 to the maximum queue number) which qualifies the mask as applying only to items in this queue number.  For SMS job items processed from an MSMQ launch, this action is equivalent to a reject action, since the queue item cannot be processed by a line other than the one which has removed it from the queue.
$ | tollfreeaccept phone number and mark this number as toll-free.  For special purposes, the symbol $ may be followed by a numeric TOSEND queue number (from 0 to the maximum queue number) which qualifies the mask as applying only to items in this queue number.  Toll-free numbers use the special outbound ANI defined by $outbound_tf_ani or OB_TF_ANI.
mask pattern used to match the phone number as follows:
(0 .. 9, comma) match actual digits of supplied phone number
X match any numeric digit, or a comma, of supplied phone number
* match all remaining digits, or commas, in supplied phone number (only valid at end of mask).
output-string pattern used to convert phone number, as follows:
(0 .. 9) digit to be used in next match
X digit of supplied phone number
* (at end, with a * at the end of mask) remaining digits of supplied phone number (otherwise * is dialed)
P leading P: pulse dial
T leading T: tone dial
L wait for local dial tone (Dialogic)
I wait for international dial tone (Dialogic)
X wait for extra dial tone (Dialogic) (see also $dial_tone)
W following T or P: wait for dial tone (Not Dialogic)
, wait 2 seconds (Dialogic), 1 second (Brooktrout)
; wait 5 seconds (Brooktrout)
! (at end) do not wait for fax tone (Dialogic)
$ (not at end) hook flash (Brooktrout)
$ (at end) skip call progress and send CNG (VFX/40)
& hook flash (Dialogic)
@ insert code from $phone_account or from system variable PHONE_ACCOUNT. This code may be used either once or twice in the string.  It is affected by the setting of the $macro_char command.  This special code is also used for placing SIP calls, see the example in the description of the $phone_account command.

The output-string parameter is required on accept and convert commands and must not be specified on reject and decline commands. It is ignored on accept commands at call time and is only used when the fax is ready to be sent. It is always used on convert commands.

When an FS file is ready to send, CopiaFacts checks all currently free outbound lines in turn against the configuration-file phone mask list. The first match (on line and phone mask) is processed as follows depending on the access code:

~ no further testing is done for the current line and processing moves to the next free outbound line, unless the ~ appears on an all lines (*) command, in which case processing moves to the next FS file, if any.
- the FS file is moved to FAIL with status code 63.
+ CopiaFacts sends the fax on the selected line.

If no matches occur, processing moves to the next FS file, if any. Phone mask entries are processed in the sequence that they appear in the configuration file.

Default: all phone numbers valid if no masks specified

Examples:

$phone_mask * reject 900XXXXXXX ; no 900 numbers

$phone_mask * reject 0891* ; reject numbers of any length with this prefix