本文档详细介绍如何实施外部交换站(FXS)-2DID卡的基本配置以及如何使用信令。有关硬件和Cisco IOS®软件支持的其他信息,请参阅了解2端口直接拨入(2 DID)语音接口卡。
本文档没有任何特定的要求。
本文档中的信息基于以下软件和硬件版本:
思科VG200网关
思科IOS软件版本12.2(8)T
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文件规则的更多信息请参见“ Cisco技术提示规则”。
直接拨入(DID)是电话公司提供的一项服务,使呼叫方能够直接拨打专用分机交换机(PBX)或分组语音系统(例如Cisco CallManager和IOS路由器/网关)上的分机,而无需操作员或自动呼叫总机的协助。此服务使用仅将电话号码的最后三到五位数转发到PBX或路由器/网关的DID中继。例如,当公司的电话分机555-1000到555-1999和呼叫方拨打555-1234时,本地中心局(CO)将234转发到PBX或数据包语音系统。PBX或数据包语音系统振铃分机234。此外,由于DID中继最多可以支持50个分机,因此可以使用相对较少的中继来支持大量分机。
DID要求在数字传输之前,DID中继和PBX之间需要握手协议。信令可以是闪烁启动、延迟拨号或立即启动。这些信令类型类似于耳和嘴(E&M)信令中使用的信令类型。
立即启动是最简单的协议。始发端通过摘机夺取线路,并开始脉冲数字而不等待响应。根据标准,与立即开始一起使用的地址信令是拨号脉冲。
在闪烁启动时,始发端通过摘机和在启动之前抢占线路,在发出闪烁后等待另一端确认。确认是极性反转(摘机),持续时间为140至290毫秒,也称为眨眼。传入的捕捉信号收到后,传情动漫应不早于100毫秒。除信令功能外,闪烁启动还用作完整性检查,用于识别故障中继并允许网络向主叫方发送重新排序音。
在延迟拨号模式下,始发端将夺取线路(摘机),等待约200毫秒,并检查远端是否挂机(电池正常)。 如果是,则输出拨号数字。如果远端摘机(电池倒换),则会等到挂机(电池正常),然后输出拨号数字。
答案监督是电池反转信号。当呼叫由站应答或路由到录制的通告或交互式语音应答(IVR)时,应答监督将返回。 不返回应答监督的条件是当主叫分机忙或号码不可用时。
注意:如果电信设备上的应答监督配置不正确,则可能会发生单向语音。
当被叫站在始发端之前断开连接时,电池将倒回正常状态,并在传入端等待挂机。如果被叫站在中继断开后未断开,则DID端口上的正常电池电压会恢复,并断开中继站和站之间的连接。
当呼叫完成到未分配的号码或永久受限站的呼叫时,呼叫者接收重新排序音。当被叫用户摘机时,主叫方收到忙音。
这些DID关联的命令行界面(CLI)命令仅在语音端口硬件支持DID功能时有效。此外,E&M语音端口中使用的所有CLI命令也可用于DID端口,因为DID和E&M端口具有类似的功能。默认操作模式为DID。
要配置FXS-DID语音端口,请执行以下操作:
voice-port x/y signal did wink-start delay-start immediate-start did-digit-length <Digit length>
要禁用FXS-DID,以成为常规FXS:
voice-port x/y no signal did
注意:无法在DID(已配置)语音端口上发出传出呼叫。尽管硬件可支持在这些端口上振铃和发出去话呼叫,但使用软件会禁用它。
DID线路的特征必须与Telco一起检查,并且DID卡的配置基于此验证信息。最常见的问题是拨号方案的配置不正确(CO传送了多少位数字)、呼叫信令和线路极性不正确(Telco设备对极性敏感,因此可能需要反转头端和环连接)。
这是调用号码4609的wink DID中继的debug vpm all命令的输出。
*Mar 5 00:54:22.783: htsp_dsp_message: SEND/RESP_SIG_STATUS: state=0xC timestamp=13671 systime=34886280 *Mar 5 00:54:22.783: htsp_process_event: [1/0/0, DID_ONHOOK, E_DSP_SIG_1100] did_onhook_offhook htsp_setup_ind *Mar 5 00:54:22.787: [1/0/0] get_local_station_id calling num= calling name= calling time=00/00 00:00 *Mar 5 00:54:22.791: dsp_digit_collect_on: [1/0/0] packet_len=20 channel_id=128 packet_id=35 min_inter_delay=240 max_inter_delay=9760 mim_make_time=10 max_make_time=100 min_brake_time=10 max_brake_time=100 *Mar 5 00:54:22.791: dsp_soutput: [1/0/0] *Mar 5 00:54:22.795: dsp_digit_collect_on: [1/0/0] packet_len=20 channel_id=128 packet_id=35 min_inter_delay=240 max_inter_delay=9760 mim_make_time=10 max_make_time=100 min_brake_time=10 max_brake_time=100 *Mar 5 00:54:22.795: dsp_soutput: [1/0/0] *Mar 5 00:54:22.795: dsp_digit_collect_on: [1/0/0] packet_len=20 channel_id=128 packet_id=35 min_inter_delay=240 max_inter_delay=9760 mim_make_time=10 max_make_time=100 min_brake_time=10 max_brake_time=100 *Mar 5 00:54:22.795: dsp_soutput: [1/0/0] *Mar 5 00:54:22.795: htsp_process_event: [1/0/0, DID_WAIT_SETUP_ACK, E_HTSP_SETUP_ACK]did_wait_setup_ack_get_ack *Mar 5 00:54:22.795: dsp_digit_collect_off: [1/0/0] packet_len=8 channel_id=128 packet_id=36 *Mar 5 00:54:22.795: dsp_soutput: [1/0/0] *Mar 5 00:54:22.799: htsp_timer2 - 88 msec *Mar 5 00:54:22.799: htsp_dsp_message: SEND/RESP_SIG_STATUS: state=0xC timestamp=13685 systime=34886282 *Mar 5 00:54:22.799: htsp_process_event: [1/0/0, DID_WAIT_SETUP_ACK, E_DSP_SIG_1100]did_wait_setup_ack_offhook *Mar 5 00:54:22.799: did_stop_timer *Mar 5 00:54:22.799: htsp_timer_stop *Mar 5 00:54:22.887: htsp_process_event: [1/0/0, DID_WAIT_SETUP_ACK, E_HTSP_EVENT_TIMER2] did_wait_prewink_timer *Mar 5 00:54:22.887: dsp_digit_collect_off: [1/0/0] packet_len=8 channel_id=128 packet_id=36 *Mar 5 00:54:22.887: dsp_soutput: [1/0/0] did_offhook *Mar 5 00:54:22.887: [1/0/0] set signal state = 0x6 timestamp = 0 *Mar 5 00:54:22.887: dsp_set_sig_state: [1/0/0] packet_len=12 channel_id=128 packet_id=39 state=0x6 timestamp=0x0 *Mar 5 00:54:22.887: dsp_soutput: [1/0/0] did_onhook *Mar 5 00:54:22.887: [1/0/0] set signal state = 0x4 timestamp = 200 *Mar 5 00:54:22.887: dsp_set_sig_state: [1/0/0] packet_len=12 channel_id=128 packet_id=39 state=0x4 timestamp=0xC8 *Mar 5 00:54:22.887: dsp_soutput: [1/0/0] *Mar 5 00:54:22.891: dsp_digit_collect_on: [1/0/0] packet_len=20 channel_id=128 packet_id=35 min_inter_delay=240 max_inter_delay=9760 mim_make_time=10 max_make_time=100 min_brake_time=10 max_brake_time=100 *Mar 5 00:54:22.891: dsp_soutput: [1/0/0] *Mar 5 00:54:23.879: htsp_digit_ready(1/0/0): digit = 4 *Mar 5 00:54:24.983: htsp_digit_ready(1/0/0): digit = 6 *Mar 5 00:54:26.483: htsp_digit_ready(1/0/0): digit = 0 *Mar 5 00:54:27.891: htsp_digit_ready(1/0/0): digit = 9 *Mar 5 00:54:27.891: dsp_digit_collect_off: [1/0/0] packet_len=8 channel_id=128 packet_id=36 *Mar 5 00:54:27.891: dsp_soutput: [1/0/0] *Mar 5 00:54:27.895: htsp_dsp_message: SEND/RESP_SIG_STATUS: state=0xC timestamp=18781 systime=34886792 *Mar 5 00:54:27.895: htsp_process_event: [1/0/0, DID_OFFHOOK, E_HTSP_PROCEEDING] *Mar 5 00:54:27.895: htsp_process_event: [1/0/0, DID_OFFHOOK, E_DSP_SIG_1100] did_offhook_offhook *Mar 5 00:54:27.895: did_stop_timer *Mar 5 00:54:27.895: htsp_timer_stop wrong offhook eventhtsp_alert_notify *Mar 5 00:54:32.415: htsp_process_event: [1/0/0, DID_OFFHOOK, E_HTSP_VOICE_CUT_THROUGH] htsp_connect: no_offhook 0 *Mar 5 00:54:32.419: htsp_process_event: [1/0/0, DID_OFFHOOK, E_HTSP_CONNECT] did_offhook_connect *Mar 5 00:54:32.419: htsp_timer2 - 40 msec did_offhook *Mar 5 00:54:32.419: [1/0/0] set signal state = 0x6 timestamp = 250 *Mar 5 00:54:32.419: dsp_set_sig_state: [1/0/0] packet_len=12 channel_id=128 packet_id=39 state=0x6 timestamp=0xFA *Mar 5 00:54:32.419: dsp_soutput: [1/0/0] *Mar 5 00:54:32.459: htsp_process_event: [1/0/0, DID_CONNECT_MIN, E_HTSP_EVENT_TIMER2] *Mar 5 00:55:01.659: htsp_dsp_message: SEND/RESP_SIG_STATUS: state=0x4 timestamp=52547 systime=34890168 *Mar 5 00:55:01.659: htsp_process_event: [1/0/0, DID_CONNECT, E_DSP_SIG_0100]did_offhook_onhook