|
|
etWindowsDialing Properties Sample Program - More Information
This information, also available in the TeleTools help file, explains
in more detail how to use the etLine DeviceTranslatePhoneNumber property
in your Telephony application. In addition, we've included a
definition of the Microsoft Windows Dialing Properties canonical
format. Below is a complete table of all the components of the
canonical format structure and how to understand it and apply it to your
phone numbers and locations.
etLine.Device.TranslatePhoneNumber
ActiveX: etLine.DeviceTranslatePhoneNumber
Type: Boolean
When: Design-Time and Run-Time
Read/Write: Read and Write
Edition: Express, Standard, Professional, Enterprise
The property is used to control the format of phone number for inbound and
outbound calls.
Inbound Calls
Most Telephony Service Providers (TSP) supply the CallerID
phone number as a simple string without formatting. Some TSP's will format
the CallerID phone numbers to appear in canonical address format. Set this
property to False to remove the formatting. Set this property to True to
leave the number as is it supplied by the TSP. The
etLine.Call.CallerID.MaskNumber will be applied after this property causes
the number to be unformatted.
This property will effect the following properties:
etLine.Call.CalledID.Number, etLine.Call.CallerID.Number,
etLine.Call.ConnectedID.Number, etLine.Call.RedirectingID.Number and
etLine.Call.Redirection.Number.
For example if the TSP supplies the CallerID number
"+1 (919) 233-2232", this property is set to True and the
etLine.Call.CallerID.MaskNumber is blank then etLine.Call.CallerID.Number
will have the value "+1 (919) 233-2232". If this property is
false then etLine.Call.CallerID.Number will have the value
"19192332232"
If the TSP supplies the CallerID number
"9192332232", this property is set to True and the
etLine.Call.CallerID.MaskNumber is "000-000-0000;*" then
etLine.Call.CallerID.Number will have the value "919-233-2232".
If this property is false then etLine.Call.CallerID.Number will have the
same value, "919-233-2232"
Outbound Calls
If this property is set to true then when setting the
value of the Phone Number properties the value be modified according to
the dialing properties for the selected Device.ID.
See the properties etLine.Call.PhoneNumber,
etLine.Conference.PhoneNumber and etLine.Transfer.PhoneNumber.
When this property is set to True the Phone Number
properties must use Canonical Addresses to take advantage of the dialing
properties.
Canonical Address Format
The canonical address (phone number) format is intended to
be a universally constant directory number. For this reason, numbers in
address books are best stored using canonical format. A canonical address
is an ASCII string with the following structure:
+ CountryCode Space [(AreaCode)
Space] SubscriberNumber | Subaddress ^ Name CRLF ...
The components of this structure are described in the
following table.
|
Component
|
Meaning
|
|
+
|
Equivalent to ASCII Hex (2B). Indicates that the
number that follows it uses the canonical format.
|
|
CountryCode
|
A variably sized string containing one or more of
the digits "0" through "9". The CountryCode
is delimited by the following Space. It identifies the country in
which the address is located.
|
|
Space
|
Exactly one ASCII space character (0x20). It is
used to delimit the end of the CountryCode part of an
address.
|
|
AreaCode
|
A variably sized string containing zero or more
of the digits "0" through "9". AreaCode
is the area code part of the address and is optional. If the area
code is present, it must be preceded by exactly one ASCII left
parenthesis character (0x28), and be followed by exactly one ASCII
right parenthesis character (0x29) and one ASCII Space character
(0x20).
|
|
SubscriberNumber
|
A variably sized string containing one or more of
the digits "0" through "9". It may include
other formatting characters as well, including any of the dialing
control characters described in the Dialable Address Format:
AaBbCcDdPpTtWw*#!,@$?
The subscriber number should not contain the left
parenthesis or right parenthesis character (which are used only to
delimit the area code), nor should it contain the "|",
"^", or CRLF characters (which are used to begin
following fields). Most commonly, nondigit characters in the
subscriber number would include only spaces, periods
("."), and dashes ("-"). Any allowable
nondigit characters that appear in the subscriber number are
omitted from the DialableString returned by the
lineTranslateAddress function, but are retained in the
DisplayableString.
|
|
|
|
ASCII Hex (7C). If this optional character is
present, the information following it up to the next + | ^ CRLF,
or the end of the canonical address string is treated as
subaddress information, as for an ISDN subaddress.
|
|
Subaddress
|
A variably sized string containing a subaddress.
The string is delimited by + | ^ CRLF or the end of the address
string. During dialing, subaddress information is passed to the
remote party. It can be such things as an ISDN subaddress or an
e-mail address.
|
|
^
|
ASCII Hex (5E). If this optional character is
present, the information following it up to the next CRLF or the
end of the canonical address string is treated as an ISDN name.
|
|
Name
|
A variably sized string treated as name
information. Name is delimited by CRLF or the end of the canonical
address string and can contain other delimiters. During dialing,
name information is passed to the remote party.
|
|
CRLF
|
ASCII Hex (0D) followed by ASCII Hex (0A), and is
optional. If present, it indicates that another canonical number
is following this one. It is used to separate multiple canonical
addresses as part of a single address string (inverse
multiplexing).
For example, the canonical representation of the
main switchboard telephone number at Microsoft Corporation would
be:
+1 (425) 882-8080
|
Since we've shown you how to format the number, you may wish to know
how to unformat it as well. TeleTools has a method for stripping out
unwanted characters so that you can work with the raw telephone digits.
etLine.Device.UnformatPhoneNumber
ActiveX: etLine.DeviceUnformatPhoneNumber
Type: Boolean
When: Design-Time and Run-Time
Read/Write: Read and Write
Edition: Express, Standard, Professional, Enterprise
Some TSPs cannot handle phone numbers with any characters other than
legal TAPI digits. When this property is set to true, formatting
characters such as plus ("+"), open paren ("("), close
paren (")"), dash ("-"), and period (".")
are stripped from Call.PhoneNumber when the Call.Dial method is called.
See the Call.PhoneNumber property and CallerID and
CalledID properties in our help file. In addition, the
etLine.Call.CallerID.MaskNumber allows you to change how the Caller
information is displayed.
|