VoIP(Voice over IP)是基于IP分组交换网络,通过对传统的模拟语音信号进行数字化、压缩、打包,封装成帧等一系列处理,使得语音业务可以通过IP网进行承载。
广义上讲,VoIP是指在数据网络上承载数据、语音、传真和图像等多媒体业务,而在狭义上即是指在IP上传送语音业务。我们日常所说的IP电话就是VoIP的一项典型应用。
与传统语音通信相比,VoIP通信的特点如表1-1所示。
表1-1 传统语音通信和VoIP通信的比较
Cptone(Call Progress Tone,呼叫进程音),也称信号音,它一般由几个离散的单频音组合,持续或按照一定的通断时间比重复播放产生,主要包括拨号音,回铃音和忙音等,用于提示用户呼叫进程状态。信号音没有统一的国际标准,各国的信号音差别较大,实现信号音的可选性是为了满足各国的标准。
信号音支持两种方式:国家模式定制和自定义模式。同时提供信号音的幅度定制功能,避免在特殊情况下检测不到信号音。
FXS(Foreign Exchange Station)接口使用标准的RJ-11接口,通过电话线直接与普通电话机、传真机等设备连接,通过Tip 和Ring 线的电平变化进行信令交互,提供振铃、电压和拨号音。
主叫信息(包括主叫号码和主叫用户名)识别及显示(CID,Calling Identity Delivery)业务是指在被叫用户终端设备上显示主叫号码、主叫用户名、呼叫日期、时间等主叫识别信息。
主叫信息识别功能实现了在挂机状态下传送和接收数据消息格式的主叫号码、主叫用户名及呼叫时间信息,可以与呼叫无条件前转、呼叫遇忙前转等功能结合,即主叫识别信息可以按照这些新业务进行传送。采用简单数据消息格式时,允许包含以下信息:
l 语音呼叫发生的日期和时间(月、日、时、分);
l 如果设备上配置为允许显示主叫信息时,则包含主叫号码;
l 如果设备上配置为不允许显示主叫信息时,则传送字符“P”。
l 当被叫PBX交换机无法得到主叫号码(如发端没有发送主叫号码)时,则传送字符“O”
采用复合数据消息格式时,允许包含以下信息:
l 语音呼叫发生的日期和时间(月、日、时、分);
l 如果设备上配置为允许显示主叫信息时,则包含主叫号码和主叫用户名;
l 如果设备上配置为不允许显示主叫信息时,则主叫号码和主叫用户名都传送字符“P”;
l 当被叫PBX交换机无法得到主叫号码(如发端没有发送主叫号码)时,则传送字符“O”;
l 当被叫PBX交换机无法得到主叫用户名(如发端没有发送主叫用户名)时,则传送字符“O”。
FXS语音用户线负责将主叫信息发送到被叫话机。主叫信息在一次振铃和二次振铃之间通过FSK(Frequency Shift Keying,频移键控)调制方式发送到被叫话机,因此要想正确发送和接收主叫信息,被叫用户必须在二次振铃之后摘机,否则可能无法显示主叫信息。
FXO(Foreign Exchange Office)即二线环路中继,FXO接口使用RJ-11接口,通过电话线将本地呼叫连接到PSTN(Public Switched Telephony network,公共交换电话网)中心局或小型用户交换机(PBX)。同样也通过Tip和Ring线的电平变化进行信令交互。FXO端口的设备只能与有FXS端口的设备相互连接。
FXO语音用户线负责接收PBX交换机发送过来的主叫号码。FXO接口在一次振铃和二次振铃之间(缺省情况下,在{dy}声和第二声振铃间进行检测CID。可以使用cid ring命令更改检测CID的时间)接收从PBX交换机发送来的主叫号码调制信息。进行FSK解调和奇偶校验等处理,如果校验正确则检查是否启动了发送主叫号码功能,如果启动则将主叫号码发送到IP侧,否则向IP侧发送字符“P”或“O”。
实际用户应用的现场存在各式各样的交换机,不同设备使用的信令标准不尽相同,同样在交换机上播放的提示音亦有不同的指标,存在不同的频谱特性,无法使用一个固定的阈值将忙音识别出来。
自动忙音检测采用智能的软件忙音识别技术,通过对输入忙音进行采样、计算、分析,得出一组最接近忙音特性的参数,使用者通过在FXO端口上配置这些参数就可以完成忙音的检测功能,从而解决了不同交换机之间存在不同忙音指标的问题。
从检测的角度考虑,需要关注的主要有以下三点:
l 忙音频率:目前大部分忙音都由一个或两个频率组成。
l 占空时间:构成忙音信号的高低电平持续时间比的规定,也就是通常所说的信号的通断时间比。不同地区对忙音的占空时间规定也不同,中国的国家标准是350毫秒/350毫秒(允许10%的误差)。
l 检测门限:判定信号能量的阈值。高于检测门限的认为是高电平,否则为低电平。
自动忙音检测的典型组网如所示,电话Telephone A连接到PBX A上,PBX A提供1路普通电话线与路由器FXO口相连,对端配置与之类似。
(1) 使用电话Telephone A(010-1001)拨打号码1002,接通后路由器Router A 的FXO接口向交换机播放拨号音,交换机将拨号音传送给电话Telephone A。此时Telephone A再进行二次拨号,拨打号码07552001。电话Telephone B振铃,电话Telephone B摘机后电话接通。
(2) Telephone A在听到接通音后挂断电话,此时,交换机就通过与路由器Router A相连的电话线给路由器播放忙音,为忙音检测提供输入。
(3) 在语音视图下使用命令vi-card busy-tone-detect开始检测。为确保捕捉到交换机送出的忙音信号,建议在Telephone A挂机后2秒左右再执行以上命令。
(4) 控制台终端显示“Begin to autodetect busy-tone, it will take about 12 seconds, please wait...”提示忙音检测正在进行,检测结束后,提示“Auto-detect busy-tone succeeded!”,表示检测成功,此时使用save命令保存检测到的忙音参数。
(5) 验证自动忙音检测是否成功,重复步骤(2)的操作,在PBX交换机给路由器播放忙音约4秒钟后,如果自动忙音检测成功,电话将自动挂断,则Telephone B听到“啪嗒”一声。
E&M(Ear & Mouth,或recEive & transMit),PBX在M线上输出信号(M即Mouth,由PBX发出),接收E线上的信号(E即Ear,由PBX收到)。因此,从带有语音功能的路由器看来,路由器是接收PBX的M信号,向PBX发送E信号。
E&M接口使用RJ-48电话线,通常用来连接PBX。E&M接口的设备只能与有E&M接口的设备相互连接。
E&M用于VoIP通信时可使用二线或四线,另外还有二或四根信令线。因此,四线模拟E&M实际上至少有六线。二线方式提供全双工语音传输,语音在两根线中双向传输;四线方式相当于单工方式,每两根线负责一个方向的语音传输。
E&M接口支持E&M信令,将每个语音连接分为中继电路侧和信令单元侧(与DCE和DTE关系相似)。
E&M接口提供挂机/摘机信号,并使产生的干扰最小。因为E&M接口不提供拨号音,故使用三种信令技术中的一个启动拨号,这些信令技术是立即启动(immediate)、延时启动(delay)、闪断启动(wink)。
l 立即启动:主叫侧摘机,等待确定时间后向被叫侧发送拨号地址信息,期间不检测被叫侧是否接收准备就绪,被叫侧正常接收被叫信息后进行摘机应答。
图2-2 立即启动方式示意图
l 延时启动:主叫侧摘机先占用中继线路,被叫侧(如对端PBX)也进入摘机状态来响应主叫的摘机,并且一直处在摘机状态直到准备好接收地址信息,此时被叫侧PBX进入挂机状态(此间隔就是延时拨号时间)。主叫侧发送地址信息,被叫侧PBX将此呼叫接续到用户话机,双方进入通话状态。
图2-3 延时启动方式示意图
l 闪断启动:主叫侧摘机先占用中继线路,被叫侧(如对端PBX)处于挂机状态直到接收到主叫侧发来的连接信号,此时被叫侧发送wink信号进行确认,并进入就绪状态。当主叫侧收到该wink信号就开始发送地址信息,被叫侧将此呼叫接续到用户话机,双方进入通话状态。
图2-4 闪断启动方式示意图
BSV(BRI S/T Voice)接口支持语音、数据同传,可以实现ISDN BRI接口数字PCM语音的接收、发送和压缩、解压缩处理,并通过路由器的其它广域网接口实现VoIP功能。
BSV接口一般用于连接ISDN数字话机,也可以作为中继接口与PBX数字中继连接。如果配合FXS或FXO模拟语音接口,实现灵活的语音呼叫选路策略。
表2-1 语音用户线配置任务简介
路由器已经插有FXS、FXO、E&M、BSV、VE1或VT1语音接口卡,而且路由器支持语音接口卡。
表2-2 配置多国提示音模式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
配置呼叫提示音的国家模式 |
cptone country-type locale |
必选 缺省情况下,提示音的国家模式为中国 |
配置指定提示音的电平参数 |
cptone tone-type { all | busy-tone | congestion-tone | dial-tone | ringback-tone | special-dial-tone | waiting-tone } amplitude value |
可选 缺省情况下,忙音和拥塞音类型的幅度值为1000,拨号音和特殊拨号音类型的幅度值为400,回铃音和呼叫等待音类型的幅度值为600 |
当多国提示音模式不能满足用户需求时,用户可以通过自定义提示音功能配置各种提示音种类及其参数。
表2-3 配置自定义提示音模式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
配置自定义模式的提示音参数 |
vi-card cptone-custom { busy-tone | congestion-tone | dial-tone | ringback-tone | special-dial-tone | waiting-tone } comb freq1 freq2 time1 time2 time3 time4 |
必选 缺省情况下,没有配置自定义模式的提示音参数 |
配置自定义提示音模式 |
cptone country-type CS |
必选 缺省情况下,提示音的国家模式为中国 |
配置指定提示音的电平参数 |
cptone tone-type { all | busy-tone | congestion-tone | dial-tone | ringback-tone | special-dial-tone | waiting-tone } amplitude value |
可选 缺省情况下,忙音和拥塞音类型的幅度值为1000,拨号音和特殊拨号音类型的幅度值为400,回铃音和呼叫等待音类型的幅度值为600 |
路由器已经插有FXS、FXO、E&M接口卡,而且路由器支持这些语音接口卡。
本节介绍语音板卡生成的相应的语音用户线的基本功能,对于不同语音用户线特有的配置,将在介绍各语音用户线中单独介绍。
的基本功能
l 路由器已经插有FXS接口卡,而且路由器支持FXS接口卡。
l 完成语音用户线的基本配置。
语音用户线的主叫信息识别及显示功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入FXS语音用户线视图 |
subscriber-line line-number |
- |
启动FXS语音用户线主叫信息显示功能 |
cid display |
可选 缺省情况下,启动FXS语音用户线主叫信息显示功能 |
启动FXS语音用户线向远端发送主叫信息功能 |
cid send |
可选 缺省情况下,启动FXS语音用户线向远端发送主叫信息功能 |
配置FXS语音用户线的主叫用户名 |
calling-name text |
可选 缺省情况下,没有配置主叫用户名 |
配置FXS语音用户线发送主叫信息时所采用的消息格式 |
cid type { complex | simple } |
可选 缺省情况下,FXS语音用户线发送主叫信息时采用复合格式 当对端设备只能支持两种格式中一种的时候,就需要调整本端用户线的格式,保证两端设备采用一致的格式 |
l 为了实现CID功能,除了IP语音网关支持挂机状态下的主叫信息接收外,还要求:PBX交换机的硬件和软件必须支持该项业务,用户电话机必须支持CID功能,即必须能在挂机或通话状态下正确接收和显示主叫识别信息(通常这类话机为CID I类或CID II类话机)。
l 简单数据消息格式中传送的呼叫发生日期和时间为IP语音网关的系统时间,为了有效确定呼叫何时发生,要求系统时间必须和当地标准时间保持同步,请使用clock命令进行配置。
表2-6 配置FXS语音用户线的丢包补偿方式
表2-7 配置FXS语音用户线的电气阻抗
l 路由器已经插有FXO接口卡,而且路由器支持FXO接口卡。
l 完成语音用户线的基本配置。
语音用户线的接收及发送主叫号码功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入FXO语音用户线视图 |
subscriber-line line-number |
- |
启动FXO语音用户线主叫号码接收功能 |
cid receive |
可选 缺省情况下,FXO接口已经启动主叫号码接收功能 |
使能FXO语音用户线发送主叫号码 |
cid send |
可选 缺省情况下,使能发送主叫号码 |
配置检测CID的时间 |
cid ring { 0 | 1 | 2 } |
可选 缺省配置下,在{dy}声和第二声振铃间进行检测CID,即cid ring 1 |
l 为了实现CID功能,除了IP语音网关支持挂机状态下的主叫号码接收外,还要求:PBX交换机的硬件和软件必须支持该项业务,用户电话机必须支持CID功能,即必须能在挂机或通话状态下正确接收和显示主叫识别信息(通常这类话机为CID I类或CID II类话机)。
l 简单数据消息格式中传送的呼叫发生日期和时间为IP语音网关的系统时间,为了有效确定呼叫何时发生,要求系统时间必须和当地标准时间保持同步,请使用clock命令进行配置。
使能忙音检测功能可以选择,但在某些特定情况下,由于实际的忙音数据与系统配置的忙音参数不能xx匹配,如果差距较大可能导致忙音检测不准确,会产生挂不断或误挂机等问题,可以通过调整DSP忙音检测的相关参数,更准确的完成检测忙音。
表2-9 配置FXO语音用户线的忙音检测参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置FXO端口忙音检测参数 |
vi-card busy-tone-detect { auto index line-number | custom area-number index argu f1 f2 p1 p2 p3 p4 p5 p6 p7 } |
可选 系统可以记录4种忙音特性,由index参数来标记 |
配置忙音检测的类型标准 |
area { custom | europe | north-america } |
可选 缺省情况下,采用欧洲标准的忙音类型 该命令一旦配置,对设备上的所有模拟FXO类型语音单板都起作用 |
进入FXO语音用户线视图 |
subscriber-line line-number |
- |
配置忙音检测时间阈值 |
busytone-t-th time-threshold |
可选 缺省情况下,忙音检测的时间阈值为2 |
对于PBX不向数字电话机发送忙音的情况,当远端的电话挂机或占线的时候,可以配置FXO口向PBX发送忙音信号,PBX再将忙音透传给数字电话。
表2-10 配置FXO语音用户线的忙音发送功能
在PBX提供的忙音参数非常特殊的情况下,为了避免自动忙音检测功能无法检测到忙音信号导致FXO口“挂死”情况的发生,可以使用静音检测功能。
当相邻两个采样点的语音信号值小于设定的静音阈值时,系统将认为此线路处于静音状态。当线路处于静音状态的时间超过设置的静音检测挂机时长,系统就将自动挂断。
表2-11 配置FXO语音用户线的静音检测功能
某些国家的PBX不播放忙音信号,或放忙音持续时间较短,如果传输链路上又有杂音,可能导致静音挂机(silence-th-span)命令不能很好的解决FXO不挂机的问题,这种情况下可以考虑使用定时挂机命令来解决此问题。
表2-12 配置FXO语音用户线强制挂机的时间
FXO语音用户线在收到外部振铃后的摘机模式有以下两种。
l 立即摘机方式(immediate模式)。使用immediate模式,呼叫呼入后FXO立即摘机,之后用户再进行二次拨号。
l 延时摘机方式(delay模式)。使用delay模式,用户需要同时配置专线号码,呼叫呼入后,系统根据用户在FXO语音用户线下配置的专线号码,自动向被叫用户发起呼叫。当被叫摘机后,FXO语音用户线才会进行摘机通话。
表2-13 配置FXO接口语音用户线的摘机方式
PBX支持的振铃信号类型比较多,没有统一的标准。调节FXO振铃检测参数用来支持检测不同频率和波形的振铃信号。
表2-14 配置FXO振铃检测参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入FXO语音用户线视图 |
subscriber-line line-number |
- |
配置FXO振铃检测防抖动时间 |
ring-detect debounce value |
可选 缺省情况下,FXO振铃检测防抖动时间为10毫秒 l 请不要在通话中修改振铃检测的防抖时间 l 建议不要把debouce时间参数设置的过小,因为在线路有工频干扰时,可能出现振铃误检 l 在某一单板上的某个FXO语音用户线下配置该命令,则对该单板上所有FXO语音用户线均生效 |
配置FXO振铃检测的频率参数 |
ring-detect frequency value |
可选 缺省情况下,FXO振铃检测的频率参数为40Hz |
表2-15 配置FXO接口语音用户线的其他功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入FXO语音用户线视图 |
subscriber-line line-number |
- |
配置FXO语音用户线的电气阻抗 |
impedance { country-name | r550 | r600 | r650 | r700 | r750 | r800 | r850 | r900 | r950 } |
可选 缺省情况下,FXO语音用户线的电气阻抗是中国的阻抗匹配值 |
配置FXO语音用户线的丢包补偿方式 |
plc-mode { general | specific } |
可选 缺省情况下,使用语音网关特有方式进行丢包补偿 |
采用FXS&FXO 1:1绑定组网提高语音解决方案的可靠性。对于某些特定行业用户,一些FXS语音用户线的电话需要保证高可靠性通信,即要求在IP网络不通的情况下,也可以使用专用的FXO语音用户线进行PSTN通话。FXS&FXO 1:1绑定功能能够满足用户的这种专用需求,实现高可靠性通话。
FXS&FXO 1:1绑定实现如下功能:
语音用户线专用:FXO语音用户线只供所绑定的FXS使用,FXO语音用户线不可以被其他FXS用户占用;FXO语音用户线上收到PSTN侧的呼叫时,直接专线拨号到与其绑定的FXS语音用户线。
l FXS语音用户线和FXO语音用户线状态保持一致:FXS语音用户线与其绑定的FXO语音用户线摘挂机状态一致。当FXS语音用户线摘机时,如果PSTN侧有呼叫从FXO语音用户线打入,呼叫方听到忙音。
路由器上插有FXO和FXS接口卡,完成基本配置。
表2-16 配置FXS&FXO1:1绑定
|
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入FXO语音用户线视图 |
subscriber-line line-number |
- |
配置绑定FXS语音用户线和FXO语音用户线摘挂机状态一致 |
hookoff-mode delay bind fxs_subscriber_line [ ring-immediately ] |
必选 缺省情况下,采用立即摘机模式 |
配置自动拨打绑定FXS语音用户线功能 |
private-line string |
必选 缺省情况下,没有配置专线自动振铃功能 |
配置挂机同摘机间隔时长 |
timer hookoff-interval milliseconds |
可选 缺省情况下,间隔时长为500毫秒 |
退出FXO口语音用户线视图 |
quit |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建POTS语音实体,并进入POTS语音实体视图 |
entity entity-number pots |
- |
配置FXO语音用户线为绑定FXS语音用户线专用功能 |
caller-permit calling-string |
必选 缺省情况下,没有配置允许呼入的主叫号码,即对呼叫不做任何限制 |
l 路由器已经插有模拟E&M接口卡,而且路由器支持模拟E&M接口卡。
l 完成语音用户线的基本配置。
该命令用在语音路由器和与之相连的对端设备之间的线缆配合,它只影响语音传送,与信令无关,如果配置了错误的线缆方案,用户将只能得到单向的语音服务。
表2-17 配置E&M语音用户线的线缆类型
表2-18 配置E&M语音用户线的信号类型
表2-19 配置E&M语音用户线立即启动方式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
配置E&M语音用户线立即启动方式 |
em-signal immediate |
必选 缺省情况下,模拟E&M语音用户线采用立即启动 |
立即启动时,配置主叫端发送DTMF号码前的延迟时间 |
delay send-dtmf milliseconds |
可选 缺省情况下,主叫端发送DTMF号码前的延迟时间为300毫秒 |
表2-20 配置E&M语音用户线延时启动方式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
配置E&M语音用户线延时启动方式 |
em-signal delay |
必选 |
延时启动时,延时占用信号的持续时间 |
delay hold milliseconds |
可选 缺省情况下,延时占用信号的持续时间为400毫秒 |
延时启动时,被叫端检测到占用信号到发送延时占用信号前的延时时间 |
delay rising milliseconds |
可选 缺省情况下,被叫端检测到占用信号到发送延时占用信号前的延时时间为300毫秒 |
表2-21 配置E&M语音用户线闪断启动方式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
配置E&M语音用户线闪断启动方式 |
em-signal wink |
必选 |
闪断启动时,配置被叫端收到占用信号到发送闪断(wink)信号的延迟时间 |
delay send-wink milliseconds |
可选 缺省情况下,被叫端收到占用信号到发送闪断(wink)信号的延迟时间为200毫秒 |
闪断启动时,配置主叫端发送占用信号后等待闪断(wink)信号的{zd0}持续时间 |
delay wink-rising milliseconds |
可选 缺省情况下,主叫端发送占用信号后等待闪断(wink)信号的{zd0}持续时间为2000毫秒 |
闪断启动时,配置被叫端发送闪断信号的持续时间 |
delay wink-hold milliseconds |
可选 缺省情况下,被叫端发送闪断信号的持续时间为500毫秒 |
E&M无信令模式是E&M接口的一种特殊应用方式,适用于对端设备的E&M接口不提供E、M线。在这种工作模式下,E&M接口不需要和对端进行信令交互,结合专线自动振铃功能(private-line),可以形成(E&M-VoIP-E&M)三段链路,通过这条E&M虚拟专线链路,用户拿起电话就可以直接通话。
表2-22 使能E&M无信令模式
l 结合专线自动振铃功能使用时,主叫语音网关需要配置private-line命令,关于专线自动振铃功能请参见“语音分册”中的“拨号策略配置”手册。
l 使能E&M无信令模式前,E&M信令必须处于立即(immediate)启动模式。
l 数字E&M无信令方式请参见“语音分册”中的“E1和T1配置”手册。
E&M透传模拟控制信号在E&M无信令功能使能情况下才能进行透传。如所示,Tone Generator与Radio之间的建立E&M虚拟专线后,Router A与Router B可以将E&M线路上表示占用或空闲信号通过IP网络传到对端。
透传模拟控制信号
表2-23 配置E&M透传模拟控制信号
表2-24 配置slic芯片的输出增益
表2-25 配置ISDN BRI接口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入指定BSV BRI接口的视图 |
interface bri interface-number |
- |
配置接口描述信息 |
description text |
可选 缺省情况下,BSV BRI接口的描述字符串为 “该接口的接口名 Interface” |
开启BSV BRI接口B通道的环回检测功能 |
loopback { b1 | b2 | both } |
可选 缺省情况下,BSV BRI接口不设置自环 |
配置BSV BRI接口{zd0}传输单元的大小 |
mtu size |
可选 本命令的支持情况与设备的型号有关,请以设备的实际情况为准 |
配置BSV BRI接口定时查询链路状态的时间间隔 |
timer hold seconds |
可选 缺省情况下,BSV BRI接口定时查询链路状态的时间间隔为10秒 |
配置BSV BRI接口允许发送端口Link up和Link down的SNMP Trap报文 |
enable snmp trap updown |
可选 缺省情况下,BSV BRI接口允许发送端口Link up和Link down的SNMP Trap报文
|
关闭BSV BRI接口 |
shutdown |
可选 缺省情况下,BSV BRI接口处于开启状态 |
DTMF(Dual Tone Multi Frequency),双音多频,由高频群和低频群组成,高低频群各包含4个频率。一个高频信号和一个低频信号叠加组成一个组合信号,代表一个数字键。DTMF信令有16个编码,主要用于电话拨号信息传输,具有很强的抗干扰能力。
由可见,{1209Hz,1336Hz,1477Hz,1633Hz}称为列频率组,{697Hz,770Hz,852Hz,941Hz}称为行频率组。每个DTMF按键音由一个行频率单音和一个列频率单音组成。比如“1”的按键音是由697Hz和1209Hz的两个正弦信号音复合而成的。一个有效的按键音至少要持续45毫秒的时间,连续两个的按键音之间的至少要停顿23毫秒,各国的规定大体相同,可参见ITU的Q.24建议。
表2-26 配置DTMF拨号音的属性
DTMF拨号音检测可以依靠以下两种方法。
l 能量检测:DTMF拨号音检测是通过计算输入的语音信号的频谱来实现的,所配置的阈值是对输入信号频谱形状的限定,满足所有限定条件时才能被视为一个有效的DTMF拨号音。
l 敏感度检测:DTMF码检测灵敏度为高级,可靠性较低,但采用此模式可能出现DTMF码误检的情况。DTMF码检测灵敏度为低级,可靠性较高,但采用此模式可能出现DTMF码漏检的情况。
表2-27 配置DTMF拨号音检测
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
配置检测DTMF拨号音的敏感度 |
dtmf threshold analog index value |
可选 缺省情况下,索引号0-12对应的参数分别为{1400,458,-9,-9,-9,-9,-3,-12,-12,30,300,3200,375},参数的具体含义请参见“语音分册”中的“VoIP命令” 该命令主要供专业人员在DTMF拨号音检测功能失效时对设备进行调整,一般情况下使用缺省值即可 |
配置DTMF拨号音检测灵敏度等级 |
dtmf sensitivity-level { high | low | medium } |
可选 缺省情况下,DTMF码检测灵敏度为低级 该命令只对FXS/FXO语音用户线有效 medium参数的支持情况与实际使用的板卡有关 |
配置检测DTMF码的灵敏度 |
dtmf threshold digital value |
可选 缺省情况下,检测DTMF码的灵敏度等级为不敏感 该命令对BSV语音用户线生效 |
AMD(Answering Machine Detection)是通过统计算法来识别真人接听、自动应答机接听的检测功能。AMD主要用于呼叫中心的预测性拨号系统,这些业务的特点是需要对接听对象进行识别,区分的接听对象包括真人接听、自动应答机、传真和Modem。
AMD使用的统计算法主要使用应答节奏:语音持续时间和静音时间。通常真人接听电话后说完简短的问候语就是一段静音,等待对方响应,而自动应答机的问候语是一段录音,通常比较长,静音间隔较小。
表2-28 使能AMD功能
AMD检测结果的准确率和检测参数的设置有关。可以通过调整AMD检测参数,提高检测准确率。
表2-29 配置AMD检测参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
配置AMD检测参数 |
amd parameter { machine-time value | max-analyze-time value | min-silence-time value | valid-voice-time value | voice-energy-threshold value } |
可选 缺省情况下,machine-time(被识别为自动应答机的时间)为2600毫秒,max-analyze-time(AMD{zd0}分析时间)为4000毫秒,min-silence-time(有效语音后的最短静音时间)为800毫秒,valid-voice-time(有效语音的最短时间)为120毫秒,voice-energy-threshold(语音能量阈值)为100 参数的具体含义请参见“语音分册”中的“VoIP命令” |
表2-30 配置语音用户线下和拨号策略相关的选项
以上命令的具体使用请参见“语音分册”中的“拨号策略配置”和“拨号策略命令”。
表2-31 语音用户线的调节功能配置任务简介
在用户通话的过程中,自己的声音由于线路原因被重复,传回到听筒中,即发生了回波现象,原因是模拟语音信号泄漏到用户自己的接收路径中。用户可以通过语音网关提供的回波调节功能,从一定程度上解决通话回波问题。
可以从三方面调整回波抵消功能。
(1) 调节回波持续时间长度
表2-32 调节回波持续时间长度
(2) 调节回波抵消的各项参数
表2-33 调节回波抵消的各项参数
(3) 使能回波抵消的非线性功能
回波抵消的非线性功能也可称为残余回波抑制,即在近端没有说话的情况下,去除回波抵消后的残余回波。
表2-34 配置语音用户线的回波调节功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
配置回波抵消的参数 |
echo-canceller parameter { convergence-rate value | max-amplitude value | mix-proportion-ratio value | talk-threshold value } |
可选 缺省情况下,舒适噪声幅度的收敛速度的值为0,舒适噪声的{zd0}幅度的值为256,噪声的混合比例控制因子的值为100,双向通话判断阈值的值为1 |
退出语音视图 |
quit |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
使能回波抵消功能 |
echo-canceller enable |
必选 缺省情况下,使能回波抵消功能 |
配置回波持续时间长度 |
echo-canceller tail-length milliseconds |
可选 缺省情况下,回波持续时间长度为32毫秒 |
使能回波抵消的非线性功能 |
nlp-on |
可选 缺省情况下,使能回波抵消的非线性处理功能 该命令只有在配置了echo-canceller enable后才可用 |
表2-35 配置FXS/FXO/E&M语音用户线的增益调节功能
表2-36 配置MOH/PAGE语音用户线的增益调节功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
配置接口输入增益值 |
audio-input-gain value |
可选 缺省情况下,接口输入端的增益值为27.5dB 该命令只适用于MOH语音用户线 |
配置接口输出增益值 |
audio-output-gain value |
可选 缺省情况下,接口输出端的增益值为-10.0dB 该命令只适用于PAGE语音用户线 |
将指定音频接口配置为静音状态 |
audio-mute |
可选 缺省情况下,音频接口处于工作状态 该命令适用于MOH和PAGE语音用户线 |
表2-37 配置语音用户线的时间调节功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音用户线视图 |
subscriber-line line-number |
- |
配置用户从摘机到拨{dy}位号码的时间间隔 |
timer first-dial seconds |
可选 缺省情况下,从摘机到拨{dy}位号码的等待时间为10秒 该命令只对FXS/FXO语音用户线有效 |
配置等待用户拨下一位号码的超时时间 |
timer dial-interval seconds |
可选 缺省情况下,两位号码之间的{zd0}等待时间为10秒 |
配置送回铃音的{zd0}时长 |
timer ring-back seconds |
可选 缺省情况下,送回铃音的{zd0}时长为60秒 |
配置拨号延时的时间 |
delay start-dial seconds |
可选 缺省情况下,延时拨号的时间为1秒 该命令只对FXS/FXO语音用户线有效 |
配置等待号码拨号间隔的{zd0}时长 |
timer wait-digit { seconds | infinity } |
可选 缺省情况下,等待号码拨号间隔的{zd0}时长为5秒 该命令只对E&M语音用户线有效 |
配置检测拍叉的有效时间 |
timer hookflash-detect hookflash-range |
可选 缺省情况下,检测拍叉的有效时间为50~180毫秒,即检测到大于50毫秒小于180毫秒的挂机时间会被判定为拍叉 该命令只对模拟FXS用户线有效 |
命令cng-on用于使能舒适噪音配置。使用该命令可以产生适当的背景噪音以填充通话过程中的静音间隙。如果不产生舒适噪音,那么通话中的静音间隙将会使通话者感到不安。
表2-38 配置语音用户线的舒适噪音功能
l 配置POTS语音实体
l 配置VoIP语音实体
在一个完整的电话到电话的连接中,根据我们所在的位置不同(无论在主叫侧还是在被叫侧),可以把呼叫划分成四段(call segment),每一段对应一个语音实体。
从中可以看到,VoIP语音通信中用到两种语音实体。
l POTS(Plain Old Telephone Service)语音实体,指普通电话业务,对应本地电话(或PSTN)侧。POTS语音实体配置是在语音网关的语音用户线与本地电话设备之间建立联系。
l VoIP语音实体,是将电话号码与IP地址进行对应,和POTS语音实体相比,VoIP语音实体对应IP侧。
表3-1 语音实体配置任务简介
表3-2 POTS语音实体配置任务简介
登录安装有语音接口卡(如FXS接口卡等)的路由器,进入用户视图。
表3-3 创建POTS语音实体
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入语音视图 |
voice-setup |
- |
|
进入语音拨号策略视图 |
dial-program |
- |
|
创建POTS语音实体,并进入POTS语音实体视图 |
entity entity-number pots |
- |
|
配置号码模板 |
配置与本地语音用户线绑定的号码模板 |
match-template match-string |
必选 缺省情况下,没有配置与本地语音用户线绑定的号码模板 |
POTS实体做中继时,配置被叫方的号码模板 |
可选 缺省情况下,POTS实体做中继时,没有配置被叫方的号码模板 |
||
将POTS语音实体与语音用户线进行绑定 |
line line-number |
必选 缺省情况下,没有绑定语音实体与语音用户线 |
|
使能语音网关向H.323 Gatekeeper或者SIP Server注册此POTS语音实体的号码 |
register-number |
可选 缺省情况下,完成GK或SIP注册的相关参数后,POTS语音实体都会向语音服务器发起注册 |
|
配置语音实体下承载RTP流的IP报文中ToS字段的DSCP域的值 |
dscp media dscp-value |
可选 缺省情况下,DSCP域的值为ef(101110) |
表3-4 配置POTS语音实体的基本功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建POTS语音实体,并进入POTS语音实体视图 |
entity entity-number pots |
- |
按照优先级别配置语音编解码方式 |
compression { 1st-level | 2nd-level | 3rd-level | 4th-level } { g711alaw | g711ulaw | g723r53 | g723r63 | g726r16 | g726r24 | g726r32 | g726r40 | g729a | g729r8 } |
可选 缺省情况下,{zg}优先级的语音编解码为g729r8,第二优先级的语音编解码为g711alaw,第三优先级的语音编解码为g711ulaw,{zd1}优先级的语音编解码为g723r53 本命令中对g726编码方式的支持情况与实际使用的板卡有关 |
配置不同编解码格式下的语音打包时长 |
payload-size { g711 | g723 | g726r16 | g726r24 | g726r32 | g726r40 | g729 } time-length |
可选 缺省情况下,g711打包时长为20毫秒,g723打包时长为30毫秒,g726打包时长为30毫秒,g729打包时长为30毫秒 |
配置语音实体描述字符串 |
description string |
可选 缺省情况下,没有配置语音实体描述字符串 |
配置指定语音实体的管理状态从up转为down |
shutdown |
可选 缺省情况下,语音实体的管理状态为up |
l 只有当通讯双方拥有的语音编解码方法存在交集时,才能正常建立通信。因此在配置compression命令时,必须保证在两端设备中设定的编解码方式存在共有的编解码方法,否则会导致呼叫失败。
l 由于不同的板卡支持的编解码方式不一致,而上层相关部分(语音实体)是与硬件无关的,因此,上层只是针对每种编解码方式取{zd0}范围来验证,此范围内具体的值是否有效,只能由DSP根据硬件类型自行判断,如果能够满足,则使用上层下发值,否则,取此编解码下的默认值。如果用户有时候发现配置了一个时长,但是没有起作用,请首先检查在此单板类型和编解码方式下配置的时长值是否有效。
表3-5 配置POTS语音实体本地发送回铃音功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建POTS语音实体,并进入POTS语音实体视图 |
entity entity-number pots |
- |
配置与本地语音用户线绑定的号码模板 |
match-template match-string |
必选 缺省情况下,没有配置语音实体的被叫号码模板 |
将POTS语音实体与语音用户线进行绑定 |
line line-number |
必选 缺省情况下,没有绑定语音实体与语音用户线 |
启用语音实体本地发送回铃音功能 |
send-ring |
可选 缺省情况下,本地不发送回铃音 只有绑定到非FXS、非FXO语音用户线的POTS实体,才可以启用该功能 |
用户通话过程中,DTMF码可以采用带内或带外方式在主被叫网关之间透明传输。
l 带内方式:指将DTMF拨号音直接作为话音的一部分传送到对端。
l 带外方式:指从DTMF码中提取相应信息,然后封装在H.245、H.225消息或RFC 2833建议的RTP报文中传输。采用RFC 2833建议的RTP报文来传输DTMF码又称为NTE方式(Named Telephone Event,命名的电话事件)。
表3-6 配置POTS语音实体的DTMF传输功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建POTS语音实体,并进入POTS语音实体视图 |
entity entity-number pots |
- |
配置采用带外方式传输DTMF码 |
outband { h225 | h245 | nte } |
可选 缺省情况下,采用带内方式传输DTMF码 |
配置NTE使用的payload值 |
rtp payload-type nte value |
可选 缺省情况下,采用NTE方式传输DTMF码时RTP报文的payload-type值为101 |
l H.323协议和SIP协议都支持NTE方式。
l 由于不同厂商路由器的实现可能存在差异,建议在组网应用时,在主被叫两侧同时配置outband nte并使用相同的rtp payload-type值,否则可能造成NTE协商失败,导致用户无法收到DTMF。
l 在配置rtp payload-type nte命令时禁止采用98作为NTE的payload-type值,该payload-type值已经固定作为非标准T.38传真报文标识。
l 与其它厂商的路由器互通时,不能配置其他厂商路由器禁用的payload-type值,否则可能导致NTE协商失败。
VAD(Voice Activity Detection,静音检测)的基本思想是根据人们日常谈话的话音信号和沉默信号能量高低不同来检测静音并加以删除,不产生信号;检测到突发的活动声音时才生成语音信号并传输。研究表明运用VAD技术能够节省不少于50%的传输带宽。
表3-7 配置POTS语音实体静音检测功能
表3-8 配置POTS语音实体下和拨号策略相关的选项
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建POTS语音实体,并进入POTS语音实体视图 |
entity entity-number pots |
- |
配置允许呼入的主叫号码 |
caller-permit calling-string |
可选 缺省情况下,没有配置允许呼入的主叫号码,即对呼叫不做任何限制 |
配置语音实体的优先级 |
priority priority-order |
可选 缺省情况下,优先级别为0 数值越小,优先级越高 |
配置拨号前缀 |
dial-prefix string |
可选 缺省情况下,没有配置拨号前缀 |
配置发送被叫号码的方式 |
send-number { digit-number | all | truncate } |
可选 缺省情况下,截断被叫号码,即发送号码末尾和通配符“.”匹配的号码 |
以上命令的具体使用请参见“语音分册”中的“拨号策略配置”和“拨号策略命令”。
表3-9 VoIP语音实体配置任务简介
登录安装有语音接口卡(如FXS接口卡等)的路由器,进入用户视图。
语音实体
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
进入VoIP语音实体视图 |
entity entity-number voip |
- |
配置被叫方的号码模板 |
match-template match-string |
必选 缺省情况下,没有配置语音实体的被叫号码模板 |
配置VoIP语音实体到被叫语音网关的选路策略 |
address sip { dns domain-name [ port port-number ] | ip ip-address [ port port-number ] | proxy } |
两者必选其一 缺省情况下,没有配置VoIP语音实体到达对端语音网关的选路策略 |
address { ip ip-address | ras } |
||
配置区域ID |
area-id string |
可选 缺省情况下,没有配置区域ID 如果指定选路策略为SIP,该命令不可用 |
配置语音实体下承载RTP流的IP报文中ToS字段的DSCP域的值 |
dscp media dscp-value |
可选 缺省情况下,DSCP域的值为ef(101110) |
表3-11 配置VoIP语音实体的基本功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建VoIP语音实体,并进入VoIP语音实体视图 |
entity entity-number voip |
- |
按照优先级别配置语音编解码方式 |
compression { 1st-level | 2nd-level | 3rd-level | 4th-level } { g711alaw | g711ulaw | g723r53 | g723r63 | g726r16 | g726r24 | g726r32 | g726r40 | g729a | g729r8 } |
可选 高优先级的语音编解码为g729r8,第二优先级的语音编解码为g711alaw,第三优先级的语音编解码为g711ulaw,{zd1}优先级的语音编解码为g723r53 本命令中对g726编码方式的支持情况与实际使用的板卡有关 |
配置不同编解码格式下的语音打包时长 |
payload-size { g711 | g723 | g726r16 | g726r24 | g726r32 | g726r40 | g729 } time-length |
可选 缺省情况下,g711打包时长为20毫秒,g723打包时长为30毫秒,g726打包时长为30毫秒,g729打包时长为30毫秒 |
配置语音实体描述字符串 |
description string |
可选 缺省情况下,没有配置语音实体描述字符串 |
配置指定语音实体的管理状态从up转为down |
shutdown |
可选 缺省情况下,语音实体的管理状态为up |
表3-12 配置VoIP语音实体的DTMF带外传输功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建VoIP语音实体,并进入VoIP语音实体视图 |
entity entity-number voip |
- |
配置采用带外方式传输DTMF码 |
outband { h225 | h245 | nte } |
可选 缺省情况下,采用带内方式传输DTMF码 |
配置NTE使用的payload值 |
rtp payload-type nte value |
可选 缺省情况下,采用NTE方式传输DTMF码时RTP报文的payload值为101 |
l 快速连接是指根据H.225.0协议规定,在Setup、CallProceeding、Alerting或Connect消息中携带标准H.245消息(如打开逻辑通道消息),使网关在收到Connect消息之前就开始建立RTP/RTCP语音通道,避免随后建立TCP连接进行H.245消息交互的过程,从而缩短了接续时间。由于快速连接方式不存在能力协商过程,因此双方能力的确定是由被叫网关决定的。采用快速连接方式时,主叫网关发出的Setup消息中携带本端所支持的编解码参数,当被叫网关收到该消息后,从中挑出一种自己所支持的编解码通过CallProceeding、Alerting、Connect中某个消息通知主叫网关,这样双方就采用此编解码进行通话。
l 隧道功能是指在快速连接方式下,在H.225.0协议的Facility消息中封装非标准H.245消息(如DTMF码的透明传输能力)完成能力协商和呼叫转移,使得不需要为H.245消息的传送再建立一个独立的H.245 TCP连接。
表3-13 配置快速连接和隧道功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
进入VoIP语音实体视图 |
entity entity-number voip |
- |
配置启动快速连接 |
fast-connect |
必选 缺省情况下,未启动快速连接 |
使能本地发送回铃音 |
send-ring |
可选 如果使用快速连接模式,缺省情况下,由远端播放回铃音,本地不发送回铃音 在H.323类型的语音实体下配置快速连接后,该命令可见并有效 如果需要强制本地放音,就需要使用此功能 |
启动隧道功能 |
tunnel-on |
可选 缺省情况下,没有启动隧道功能 只有在配置快速连接后,该命令才可见 |
在主叫网关上可以为发起的每路呼叫设置是否使用快速连接方式;如果主叫网关使用了快速连接,被叫网关会根据voip called-start和voip called-tunnel enable命令的配置决定是否使用快速方式初始化呼叫和启用被叫网关启动隧道功能。
表3-14 配置被叫网关的快速连接和隧道功能
表3-15 配置快速连接下的DTMF传输功能
快速连接方式则借助隧道功能封装H.245中的UserInput消息来传送DTMF码。当采用快速连接方式时,如果主被叫有一方不支持隧道功能,则无法完成DTMF码带外传输。
表3-16 配置快速连接下带隧道功能的DTMF带外传输功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
进入VoIP语音实体视图 |
entity entity-number voip |
- |
配置启动快速连接 |
fast-connect |
必选 缺省情况下,未启动快速连接 |
启动隧道功能 |
tunnel-on |
必选 缺省情况下,没有启动隧道功能 只有在用快速连接后,该命令才可见 |
配置采用带外方式传输DTMF码 |
outband { h225 | h245 } |
可选 缺省情况下,采用带内方式传输DTMF码 |
表3-17 配置VoIP语音实体静音检测功能
表3-18 配置VoIP语音实体下和拨号策略相关的选项
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
进入语音拨号策略视图 |
dial-program |
- |
创建VoIP语音实体,并进入VoIP语音实体视图 |
entity entity-number voip |
- |
配置允许呼入的主叫号码 |
caller-permit calling-string |
可选 缺省情况下,没有配置允许呼入的主叫号码,即对呼叫不做任何限制 |
配置语音实体的优先级 |
priority priority-order |
可选 缺省情况下,优先级别为0 数值越小,优先级越高 |
以上命令的具体使用请参见“语音分册”中的“拨号策略配置”和“拨号策略命令”。
如所示,Telephone A想呼叫Telephone B,首先Telephone A会通过IP网络呼叫到SIP Server上,这时SIP Server与Router B设备之间的IP网络出现故障,因此SIP Server会把该呼叫转回给Router A,然后从FXO接口呼叫Telephone B。在这种应用中,从Telephone A发出的呼叫经过服务器,再通过SIP呼叫转回到本网关上,会占用两路DSP资源,因此可以通过智能识别本地呼叫功能来识别该呼叫是由本端设备上语音接口Telephone A发起的,建立呼叫时,把Telephone A对应的语音接口和FXO接口直接连起来进行通话,从而节省DSP资源。
登录安装有语音接口卡(如FXS接口卡等)的路由器,进入用户视图。
表3-19 配置智能识别本地呼叫功能
已经完成VoIP语音实体基本配置中的必选配置。
表3-20 配置影响语音性能的参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
监控DSP缓冲数据的时间长度 |
vqa dsp-monitor buffer-time time |
可选 缺省情况下,对DSP数据进行监控的时间长度为270毫秒 当时间长度参数设置为0时,表示停止对缓冲数据进行监控 需要注意的是, 在抖动比较大时,如果设置的取值时间过小,语音质量会很差。因此建议将时间长度设为超过240毫秒的值 |
配置承载RTP流或语音信令的IP报文中ToS字段DSCP域的值 |
vqa dscp { media | signal } dscp-value |
可选 缺省情况下,ToS字段DSCP域的值为101110 |
配置VoIP呼叫失败后从VoIP语音实体切换到备份POTS语音实体的时间 |
voip timer voip-to-pots time |
可选 缺省情况下,VoIP呼叫失败后从VoIP语音实体切换到备份POTS语音实体的时间长为5秒 |
配置保存的呼叫历史信息{zd0}条目 |
call-history max-count number |
可选 缺省情况下,可以保存的呼叫历史信息{zd0}条目为50条 |
复位语音单板将会导致该单板上所承载的所有业务全部中断,并重新初始化单板状态。一般情况下,当发现语音单板工作不正常时(如配置正确但是无法正常接续)可以采用此操作。可以在复位语音单板时观察单板指示灯的状态以判断复位操作是否执行。
表3-21 复位语音单板
配置语音实体时,如果不使用命令配置某特性参数,则该参数赋值为系统预先固化的缺省值。
当同一台路由器上语音实体非常多时,如果大多数语音实体采用的特性参数取值与系统预先固化的缺省值都相同,则可不使用命令进行配置,直接采用缺省值,提高配置效率。
在某些场合下,若大多数语音实体采用的参数取值几乎相同,但是与缺省值不相同,如果逐个配置这些语音实体的参数将相当耗费时间,此时可通过default命令将全局范围内的参数缺省值更新为新值,配置各个语音实体时不再逐一配置这些参数,直接采用缺省值,这使得配置更加灵活、简洁、方便。
命令default command(如default entity vad-on命令)用于在全局范围内配置各语音实体参数的缺省值。
命令undo default command用于恢复全局范围内的参数值为系统固化的缺省值。
命令command用于配置某语音实体的语音参数为指定值,不改变全局取值。命令undo command用于将某语音实体的语音参数恢复为缺省值(即default命令指定的值),也不改变全局取值。
表3-22 配置全局范围内的语音参数缺省值
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入语音视图 |
voice-setup |
- |
配置所有语音用户线输入/输出增益的缺省值 |
default subscriber-line { receive | transmit } gain value |
可选 缺省情况下,value值为0 |
进入语音拨号策略视图 |
dial-program |
- |
配置全局范围内使能静音检测作为缺省值 |
default entity vad-on |
可选 缺省情况下,禁止静音检测 |
配置全局范围内编解码方式的缺省值 |
default entity compression { 1st-level | 2nd-level | 3rd-level | 4th-level } { g711alaw | g711ulaw | g723r53 | g723r63 | g726r16 | g726r24 | g726r32 | g726r40 | g729a | g729r8 } |
可选 缺省情况下,高优先级的语音编解码为g729r8,第二优先级的语音编解码为g711alaw,第三优先级的语音编解码为g711ulaw,{zd1}优先级的语音编解码为g723r53 default entity compression对IVR语音实体不起作用 |
配置全局范围内不同编解码格式的默认语音打包时长 |
default entity payload-size { g711 | g723 | g726r16 | g726r24 | g726r32 | g726r40 | g729 } |
可选 缺省情况下,g711打包时长为20毫秒,g723打包时长为30毫秒,g726打包时长为30毫秒,g729打包时长为30毫秒 |
开启呼叫模块的Trap功能后,会在呼叫发起时,生成级别为warning的Trap报文,用于报告该模块的重要事件。生成的Trap报文将被发送到设备的信息中心,通过设置信息中心的参数,最终决定Trap报文的输出规则。(有关信息中心参数的配置请参见“系统分册”中的“信息中心配置”。)
Trap功能分为全局和实体下两种,开启全局Trap功能后,将为所有的实体产生Trap。如果未开启全局Trap功能,将仅为开启Trap功能的实体产生Trap。
表3-23 开启全局Trap功能
表3-24 开启实体Trap功能
在完成上述配置后,在任意视图下执行display命令可以显示配置后VoIP的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以xxVoIP的相关统计信息。
显示和维护
操作 |
命令 |
显示语音呼叫信息 |
display voice call-info { brief | mark number | verbose } |
显示CMC模块相关信息 |
display voice cmc { ccb | statistic [ all | em | h323 | iva | lgs | r2 | sip | tmrout | vim ] } |
显示当前缺省值和系统固化缺省值信息 |
display voice default all |
显示不同类型语音实体的配置信息 |
display voice entity { all | ivr | mark entity-tag | pots | voip } |
显示语音用户线的信息 |
display voice subscriber-line line-number |
显示当前正在进行的呼叫统计信息 |
display voice statistics call-active { all | calling calling-number | called called-number } |
显示系统启动后,与语音实体相关的统计信息 |
display voice statistics entity { all | mark entity-index } |
显示IPP模块统计信息 |
display voice ipp statistic { all | cmc | h225 | h245 | ras | socket | timer } |
显示IVA模块相关信息 |
display voice iva statistic { all | call | cmc | error | isdn | proc | timer | vim } |
显示语音CMC模块的相关消息 |
display voice cmc |
显示语音呼叫历史记录信息 |
display voice statistics call-history { all | last index } |
xxCMC模块的呼叫统计信息 |
reset voice cmc statistic |
xxIVA统计信息 |
reset voice iva statistic |
xxIPP统计信息 |
reset voice ipp statistic |
两个语音网关Router A和Router B之间直接经由广域网通话。
例如:语音网关Router A的号码为010-1001的话机为了和语音网关Router B的号码为0755-2001的话机通话,需要拨入号码“0755-2001”,待被叫摘机后,双方通话建立。
图3-3 FXS组网图
(1) A端路由器的配置
# 配置到B侧的VoIP语音实体。
<RouterA> system-view
[RouterA] voice-setup
[RouterA-voice] dial-program
[RouterA-voice-dial] entity 0755 voip
[RouterA-voice-dial-entity755] match-template 0755....
[RouterA-voice-dial-entity755] address ip 2.2.2.2
[RouterA-voice-dial-entity755] quit
# 配置本地端口Line 1/0对应POTS语音实体。
[RouterA-voice-dial] entity 1001 pots
[RouterA-voice-dial-entity1001] match-template 0101001
[RouterA-voice-dial-entity1001] line 1/0
[RouterA-voice-dial-entity1001] quit
# 配置本地端口Line 1/1对应POTS语音实体。
[RouterA-voice-dial] entity 1002 pots
[RouterA-voice-dial-entity1002] match-template 0101002
[RouterA-voice-dial-entity1002] line 1/1
(2) B端路由器的配置
# 配置到A侧的VoIP语音实体。
<RouterB> system-view
[RouterB] voice-setup
[RouterB-voice] dial-program
[RouterB-voice-dial] entity 010 voip
[RouterB-voice-dial-entity10] match-template 010....
[RouterB-voice-dial-entity10] address ip 1.1.1.1
[RouterB-voice-dial-entity10] quit
# 配置本地端口Line 2/0对应POTS语音实体。
[RouterB-voice-dial] entity 2001 pots
[RouterB-voice-dial-entity1001] match-template 07552001
[RouterB-voice-dial-entity1001] line 2/0
[RouterB-voice-dial-entity1001] quit
# 配置本地端口Line 2/1对应POTS语音实体。
[RouterB-voice-dial] entity 2002 pots
[RouterB-voice-dial-entity1002] match-template 07552002
[RouterB-voice-dial-entity1002] line 2/1
Router B的FXO语音用户线工作于专线自动振铃方式,默认的远端连接电话号码为010-1001。
当PBX的用户0755-2001拨打号码0755-2003时,首先连接到B侧的语音路由器上,由于FXO端口工作于专线自动振铃方式,将自动使用已经设置的远端连接号码向A侧用户010-1001请求建立连接。
图3-4 FXO组网图
侧路由器的配置
<RouterA> system-view
[RouterA] voice-setup
[RouterA-voice] dial-program
[RouterA-voice-dial] entity 0755 voip
[RouterA-voice-dial-entity755] match-template 0755....
[RouterA-voice-dial-entity755] address ip 2.2.2.2
[RouterA-voice-dial-entity755] quit
[RouterA-voice-dial] entity 1001 pots
[RouterA-voice-dial-entity1001] match-template 0101001
[RouterA-voice-dial-entity1001] line 1/0
侧路由器的配置
<RouterB> system-view
[RouterB] voice-setup
[RouterB-voice] dial-program
[RouterB-voice-dial] entity 010 voip
[RouterB-voice-dial-entity10] match-template 010....
[RouterB-voice-dial-entity10] address ip 1.1.1.1
[RouterB-voice-dial-entity10] quit
[RouterB-voice-dial] entity 2001 pots
[RouterB-voice-dial-entity2001] match-template 07552001
[RouterB-voice-dial-entity2001] line 1/0
[RouterB-voice-dial-entity2001] send-number all
# 对FXO Line1/0进行如下配置。
[RouterB-voice-dial-entity2001] quit
[RouterB-voice-dial] quit
[RouterB-voice] quit
[RouterB] subscriber-line 1/0
[RouterB-subscriber-line1/0] private-line 0101001
l 路由器Router A与路由器Router B通过IP网络和PSTN网络连接,路由器Router A上所接话机Telephone A可以通过IP网络或者PSTN网络呼叫路由器Router B所接电话Telephone B。
l 通常情况下,Telephone A通过IP网络呼叫Telephone B,在IP网络故障的情况下,Telephone A通过专用绑定的FXO语音用户线,选择PSTN网络呼叫Telephone B。
图3-5 配置FXS&FXO1:1绑定组网图
l 配置绑定功能,使FXS语音用户线和FXO语音用户线1:1绑定。
l 在IP网络正常使用时,配置语音实体选择,优先选择VoIP语音实体。电话通过IP网络通话。
l 在IP网络出现故障时,配置语音实体选择,优先选择POTS语音实体。电话通过绑定的FXO语音用户线通话。
(1) 配置路由器Router A
<RouterA> system-view
[RouterA] voice-setup
[RouterA-voice] dial-program
# 配置IP呼叫所用的VoIP实体,匹配号码为“210....”。
[RouterA-voice-dial] entity 210 voip
[RouterA-voice-dial-entity210] match-template 210....
[RouterA-voice-dial-entity210] address ip 192.168.0.76
[RouterA-voice-dial-entity210] quit
# 配置FXS语音用户线上的POTS语音实体。
[RouterA-voice-dial] entity 0101001 pots
[RouterA-voice-dial-entity101001] match-template 0101001
[RouterA-voice-dial-entity101001] line 6/24
[RouterA-voice-dial-entity101001] quit
# 配置FXO语音用户线上呼叫备份用的POTS语音实体,号码为“.T”,并配置被叫号码全部发送及呼叫号码限制。
[RouterA-voice-dial] entity 211 pots
[RouterA-voice-dial-entity211] match-template .T
[RouterA-voice-dial-entity211] line 6/0
[RouterA-voice-dial-entity211] send-number all
[RouterA-voice-dial-entity211] caller-permit 0101001
[RouterA-voice-dial-entity211] quit
[RouterA-voice-dial] quit
[RouterA-voice] quit
# 配置FXO语音用户线自动拨号及延时摘机绑定。
[RouterA] subscriber-line 6/0
[RouterA-subscriber-line6/0] private-line 0101001
[RouterA-subscriber-line6/0] hookoff-mode delay bind 6/24
[RouterA-subscriber-line6/0] quit
# 配置拨号策略VoIP实体优先。
[RouterA] voice-setup
[RouterA-voice] dial-program
[RouterA-voice-dial] select-rule type-first 2 1 3 4
(2) 配置路由器Router B
<RouterB> system-view
[RouterB] voice-setup
[RouterB-voice] dial-program
# 配置IP呼叫所用的VoIP实体,匹配号码为“010....”。
[RouterB-voice-dial] entity 010 voip
[RouterB-voice-dial-entity10] match-template 010....
[RouterB-voice-dial-entity10] address ip 192.168.0.71
[RouterB-voice-dial-entity10] quit
# 配置FXS口上的POTS语音实体。
[RouterB-voice-dial] entity 2101002 pots
[RouterB-voice-dial-entity2101002] match-template 2101002
[RouterB-voice-dial-entity2101002] line 6/24
[RouterB-voice-dial-entity2101002] quit
# 配置FXO口上呼叫备份用的POTS语音实体,号码为“.T”,并配置被叫号码全部发送及呼叫号码限制。
[RouterB-voice-dial] entity 011 pots
[RouterB-voice-dial-entity11] match-template .T
[RouterB-voice-dial-entity11] line 6/0
[RouterB-voice-dial-entity11] send-number all
[RouterB-voice-dial-entity11] caller-permit 2101002
[RouterB-voice-dial-entity11] quit
[RouterB-voice-dial] quit
[RouterB-voice] quit
# 配置FXO语音用户线自动拨号及延时摘机绑定。
[RouterB] subscriber-line 6/0
[RouterB-line6/0] private-line 2101002
[RouterB-line6/0] hookoff-mode delay bind 6/24
[RouterB-line6/0] quit
# 配置拨号策略VoIP实体优先。
[RouterB] voice-setup
[RouterB-voice] dial-program
[RouterB-voice-dial] select-rule type-first 2 1 3 4
(3) 当IP网络故障时,使用PSTN网络。
# 配置路由器Router A,POTS语音实体优先,其他配置不变。
<RouterA> system-view
[RouterA] voice-setup
[RouterA-voice] dial-program
[RouterA-voice-dial] select-rule type-first 1 2 3 4
# 配置路由器Router B,POTS语音实体优先,其他配置不变。
<RouterB> system-view
[RouterB] voice-setup
[RouterB-voice] dial-program
[RouterB-voice-dial] select-rule type-first 1 2 3 4
A、B两地的电话通过具有语音功能的路由器直接经由广域网通话。要求从A呼叫B采用快速连接方式,并且支持DTMF码H.225带外传输功能;从B呼叫A采用非快速连接方式,也支持DTMF码带外传输功能。
地路由器的配置
# 配置VoIP语音实体。
<RouterA> system-view
[RouterA] voice-setup
[RouterA-voice] dial-program
[RouterA-voice-dial] entity 0755 voip
[RouterA-voice-dial-entity755] match-template 0755....
[RouterA-voice-dial-entity755] address ip 2.2.2.2
# 为VoIP语音实体启动快速连接、隧道功能和DTMF码H.225带外传输功能。
[RouterA-voice-dial-entity755] fast-connect
[RouterA-voice-dial-entity755] outband h225
[RouterA-voice-dial-entity755] quit
# 配置本地端口、电话号码。
[RouterA-voice-dial] entity 1001 pots
[RouterA-voice-dial-entity1001] match-template 0101001
[RouterA-voice-dial-entity1001] line 1/1
# 为POTS语音实体启动DTMF码带外传输功能。
[RouterA-voice-dial-entity1001] outband h225
地路由器的配置
# 配置VoIP语音实体。
<RouterB> system-view
[RouterB] voice-setup
[RouterB-voice] dial-program
[RouterB-voice-dial] entity 010 voip
[RouterB-voice-dial-entity10] match-template 010....
[RouterB-voice-dial-entity10] address ip 1.1.1.1
# 为VoIP语音实体启动DTMF码带外传输功能。
[RouterB-voice-dial-entity10] outband h225
[RouterB-voice-dial-entity10] quit
# 配置本地端口、电话号码。
[RouterB-voice-dial] entity 2001 pots
[RouterB-voice-dial-entity2001] match-template 07552001
[RouterB-voice-dial-entity2001] line 1/1
# 为POTS语音实体启动DTMF码带外传输功能。
[RouterB-voice-dial-entity2001] outband h225
拨完号立即听到忙音。
可以按照如下步骤进行。
l 首先查看到对端的路由是否可达。可以使用ping工具,ping对端的IP地址.;
l 查看语音实体的配置是否正确。
FXO语音用户线无法检测到交换机发送的忙音信号,话机一直保持通话状态,从而导致电话挂不断。
正常挂机的过程如所示:电话Telephone A连接到PBX A上,PBX A提供1路普通电话线与路由器FXO语音用户线相连,对端配置与之类似。
为描述方便,假设双方通话完成后,Telephone A先挂机,PBX A向本端路由器Router A播放忙音。Router A检测到这个忙音信号后挂机,并将拆线(挂机)消息通知对端路由器Router B。Router B收到这个消息后向PBX B交换机发起挂机指示,PBX B收到该挂机消息后向Telephone B播放忙音。这样就完成了拆线过程。
对于这种故障就要使用忙音检测来排除。
可以按照如下步骤进行。
l 最简单的情况:交换机使用北美标准,由于路由器缺省使用国标(即欧洲标准)的忙音识别,因此需要改变为北美标准。在路由器语音视图下执行命令area north-america设置忙音类型为北美标准。如果执行area命令不能解决问题,继续下一步:
l 自动忙音检测:使用智能软件进行忙音识别,即由软件对输入的忙音进行采样、计算、自动分析,得出一组最接近于忙音特性的参数,用户使用此组参数在相应的FXO端口上配置,即可完成忙音的检测。
参照上文自动忙音检测的操作步骤检测忙音,如果没有成功,可能是检测忙音参数操作失败,重复进行上述操作,直到检测到忙音参数。