地址
地址的概念是大多数通信作的核心。 地址表示网络上的位置。 地址到线路或通道的本地分配通常在服务提供商安装期间进行,但稍后可以修改。 有关相关过程的详细信息,请参阅作系统的Microsoft提供的服务提供商的资源工具包以及非Microsoft产品的服务提供商文档中。
单个地址可以由多个行设备共享。 不同的交换机供应商对此概念有不同的名称,例如地址桥接、多个外观目录编号(MADN)或桥接外观。 共享地址的传入呼叫在与地址关联的所有行上提供。 有关 TAPI 识别的配置的说明,请参阅 LINEADDRESSSHARING_ 常量。
地址本身是标识网络上位置的字符串。 对于电话网络,该地址是包含国家或国际代码的电话号码。 如果网络基于 IP,则地址可能是 IP 地址。 有关 TAPI 定义的地址类型,请参阅 LINEADDRESSTYPE_ 常量。 服务提供商可以定义其他地址类型。
Address-Related 功能和消息
不同的地址具有不同的特性、功能和状态。 服务提供商是此类信息的来源。 TAPI 的设备查询功能和状态和事件报告机制为应用程序提供管理地址的信息。
应用程序通过处理 TAPI 的事件或使用查询作来获取此信息。 这允许应用程序考虑因素,例如给定地址是否支持特定功能,如 公园。
TAPI 2.x: 应用程序调用 lineGetAddressCaps 函数来确定每个地址的电话功能,然后在 LINEADDRESSCAPS 数据结构中接收此信息。 同样,应用程序可以调用 lineGetDevCapslineGetDevCaps,以确定分配给该行的地址数以及其他信息。
TAPI 3.x: 应用程序使用 地址对象接口 获取有关地址功能和事件的信息。
将电话号码存储在电子通讯簿中
许多用户选择通过从通讯簿中选择人员、传真机、公告板和其他实体来拨打人员、传真机、公告板和其他实体。 拨打的实际号码取决于用户的地理位置以及要使用的线路设备的连接方式。 例如,台式计算机可以访问两条线路,一条线路连接到 PBX,另一条线路连接到电话公司的中央办公室。 对同一方进行呼叫时,可能需要使用不同的号码。 (例如,若要通过 PBX 拨号,计算机可能需要拨打“9”前缀才能获取外部线路,或者通过中央办公室进行的呼叫可能需要其他前缀。或者,用户可能从便携式计算机发出呼叫,并希望使用单个静态通讯簿,即使从不同的位置或电话环境进行呼叫也是如此。 TAPI 的地址转换功能允许用户通知计算机呼叫的当前位置和所需线路设备。 然后 TAPI 处理任何拨号差异,无需对用户的通讯簿进行任何更改。 应用程序使用 地址转换 将地址从 规范地址 格式转换为 可拨号地址 格式。
相关主题是处理国际通话进度监视,这是收听听音(如拨号音、特殊信息音调、忙碌信号和回响音)的过程,以确定呼叫的 状态(通过网络的进展)。 由于呼叫进度音的节奏和频率因国家或地区而异,因此服务提供商必须知道发出国际传出呼叫时要遵循的呼叫进度。 因此,应用程序在发出传出呼叫时指定目标国家或地区代码。
规范地址
规范地址格式旨在成为一个通用常量目录编号。 因此,通讯簿中的数字最好使用规范格式进行存储。
以下详细信息涉及被视为规范的电话地址。
规范电话地址是具有以下结构的文本字符串:
+ CountryCode Space [(AreaCode) Space] SubscriberNumber | Subaddress ^ name CRLF ...
下表描述了此结构的组件。
元件
意义
+
等效于十六进制 2B。 指示其后面的数字使用规范格式。
CountryCode
一个可变大小的字符串,包含一个或多个数字“0”到“9”(十六进制 30 到 39(含)。 CountryCode 由以下空格分隔。 它标识地址所在的国家或地区。
空间
正好是一个空格字符(十六进制 20)。 它用于分隔地址的 CountryCode 部分的末尾。
AreaCode
一个可变大小的字符串,包含零个或多个数字“0”到“9”(十六进制 30 到 39(含)。 AreaCode 是地址的区号部分,是可选的。 如果存在区号,则它必须紧跟一个左括号字符(28),后跟一个右括号字符(29)和一个空格字符(20)。
SubscriberNumber
一个可变大小的字符串,包含一个或多个数字“0”到“9”(十六进制 30 到 39(含)。 它还可能包含其他格式字符,包括可拨号地址格式中所述的任何拨号控制字符:
字符
十六进制编码
! #
$
*
,
?
@
ABCD
P
T
W
abcd
p
t
w
21 23
24
2A
2C
3F
40
41-44
50
54
77
61-64
70
74
79
订阅者编号不应包含左括号或右括号字符(仅用于分隔区号),也不应包含“|”、“^”或 CRLF 字符(用于开始以下字段)。 大多数情况下,订阅者编号中的非digit 字符将仅包含空格、句点(“.”)和短划线(“-”)。 订阅服务器号码中显示的任何允许的非digit 字符都从由 lineTranslateAddress 函数返回的 DialableString 中省略,但保留在 DisplayableString中。
|
十六进制 (7C)。 如果存在此可选字符,则后跟下一个 + | 的信息^ CRLF 或规范地址字符串的末尾被视为子地址信息,对于 ISDN 子地址。
子地址
包含子地址的可变大小的字符串。 字符串由 + | 分隔^ CRLF 或地址字符串的末尾。 在拨号期间,子地址信息将传递给远程方。 它可以是 ISDN 子地址或电子邮件地址等。
^
十六进制 (5E)。 如果存在此可选字符,则遵循该字符到下一个 CRLF 或规范地址字符串末尾的信息被视为 ISDN 名称。
名称
一个大小可变的字符串,被视为名称信息。 名称由 CRLF 或规范地址字符串的末尾分隔,可以包含其他分隔符。 在拨号期间,名称信息将传递给远程方。
CRLF
十六进制 (0D) 后跟十六进制 (0A),是可选的。 如果存在,则表示另一个规范数字正在关注此数字。 它用于将多个规范地址分隔为单个地址字符串的一部分(反多路复用)。 例如,Microsoft公司主交换机电话号码的规范表示形式为:
+1 (425) 882-8080
可拨号地址
可拨号地址格式是将地址传递到处理电话号码的服务提供商的表单。 以下详细信息涉及电话网络上的可拨号地址。
可拨号号码格式允许一次性提供多个目标地址。 如果服务提供商通过设置对每个指定目标的调用,然后将信息流作为单个高带宽媒体流进行管理,从而提供某种形式的反向复用,则此功能非常有用。 应用程序将此呼叫组视为单个呼叫,因为它只接收表示单个电话呼叫聚合的单个呼叫句柄。
还可以在应用程序级别支持反向多路复用。 为此,应用程序将设置一系列单独的调用并同步其媒体流。
子地址 是在 ISDN 线路上提供的功能,它允许在拨号时仅使用单个电话号码。 此附加信息可以指定要拨打的单个电话扩展,或者在计算环境中指定要发出警报的特定应用程序。 其他参数可以描述请求的连接所需的方面,例如速率和计时。
如果服务提供商支持子地址,则应用程序会将它包含在传递给需要一个作的任何作的地址中。
可拨号电话地址包含部分寻址信息,本质上是部分导航。 任何不以“+”字符开头的输入字符串都假定不采用规范格式,因此采用可拨号地址格式,并返回给应用程序未修改。 可拨号地址是具有以下结构的文本字符串:
DialableNumber | 子地址 ^ 名称 CRLF ...
下表提供了此结构的组件。
元件 | 意义 |
---|---|
DialableNumber | 数字和修饰符 0-9 A-D * # , ! W w p p T t @ $ ? ;用 | 分隔符^ CRLF 或可拨号地址字符串的末尾。 加号 (+) 是可拨号字符串中的有效字符。 它表示电话号码是完全限定的国际号码。 在 DialableNumber中,请注意以下定义: 0-9 A-D *# 对应于 DTMF 和/或脉冲数字的字符。 |
! | 十六进制 (21)。 指示将在拨号字符串中插入挂钩(一个半秒 onhook,后跟一个半秒的 offhook,然后再继续)。 |
P p | 十六进制 (50) 或十六进制 (70)。 指示脉冲拨号将用于其后面的数字。 |
T t | 十六进制 (54) 或十六进制 (74)。 指示音调(DTMF)拨号将用于其后面的数字。 |
, | 十六进制 (27)。 指示正在暂停拨号。 暂停的持续时间特定于设备,可以从行的设备功能中检索。 多个逗号可用于提供更长的暂停时间。 |
W w | 十六进制 (57) 或十六进制 (77)。 大写或小写 W 指示拨号应仅在检测到拨号音后继续。 |
@ | 十六进制(40)。 指示拨号是在拨打可拨号地址的其余部分之前“等待静默应答”。 这意味着等待至少一个回环音,然后几秒钟的沉默。 |
$ | 十六进制 (24)。 指示拨号计费信息是等待“计费信号”(如信用卡提示音)。 |
? | 十六进制(3F)。 指示在继续拨号之前提示用户。 提供程序实际上不会执行提示,但存在“?” 会强制提供程序拒绝字符串无效,并提醒应用程序需要将其分解为片段并提示用户之间。 |
; | 十六进制 (3B)。 如果放置在部分指定的可拨号地址字符串的末尾,则表示可拨号号码信息不完整,稍后将提供更多地址信息。 只能在地址的 DialableNumber 部分中使用“;”组件。 |
| | 十六进制(7C),是可选的。 如果存在,则后跟到下一个 + | 的信息^ CRLF 或可拨号地址字符串的末尾被视为子地址信息(对于 ISDN 子地址)。 |
子地址 | 包含子地址的可变大小的字符串。 该字符串由下一个 + 分隔符 |^ CRLF 或地址字符串的末尾。 拨号时,子地址信息将传递给远程方。 它可以用于 ISDN 子地址、电子邮件地址等。 |
^ | 十六进制 (5E),是可选的。 如果存在,则其后面的信息将被视为 ISDN 名称,其后到下一个 CRLF 或可拨号地址字符串的末尾。 |
名称 | 一个大小可变的字符串,被视为名称信息。 名称由 CRLF 或可拨号地址字符串的末尾分隔。 拨号时,名称信息将传递给远程方。 |
CRLF | 十六进制 (0D) 后跟十六进制 (0A)。 如果存在,则此可选字符指示另一个可拨号号码正在关注此号码。 它用于将多个可拨号地址分隔为单个地址字符串的一部分(用于反向多路复用)。 |
地址转换可用于将地址从规范格式转换为可拨号格式。