本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本檔案介紹FXS和FXO連線埠及其功能、通話設定和卸除、組態元件和疑難排解提示。
思科建議您瞭解模擬介面基礎知識。
本檔案中的資訊是根據以下硬體和軟體版本:
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
外匯站(FXS)/外匯局(FXO)是典型的類比電路,用於為您的住宅傳輸一條模擬電話線路。
FXOport(或裝置)是連線到電路的埠,它能夠在摘機時開啟/關閉鉤子並傳輸數字以發起呼叫。 它採用了一個繼電器,當埠摘機時,電路關閉,而當埠被認為是掛機時,電路開啟。它與另一側的FXS互連。
由於FXO埠終止運營商提供的線路,您還可以將其視為模擬聽筒或傳真機/數據機。
FXS埠是連線到電路並為一個FXO裝置提供撥號音和振鈴電壓的裝置。 FXS埠將網關連線到電話、傳真機和數據機等裝置。FXS連線埠僅使用兩根電線(尖端和環)作為指定通話上的訊號傳送和音訊路徑。此雙線對可向站台提供振鈴、電壓和撥號音。
為了更好地理解如何對這兩種埠型別進行故障排除,您必須首先瞭解呼叫是如何在它們上面設定的。本節介紹從兩個端點掛機到出現雙向音訊的點之間的模擬呼叫過程。
與所有呼叫一樣,當兩個端點未使用時,FXS埠會以掛機狀態啟動:
當其中一個電話摘機時,電路關閉,並且撥號音由FXS埠提供給FXO裝置。
一旦發起呼叫的裝置處於摘機狀態,它就會開始通過Pults或Tones來撥打該號碼。
撥打該號碼後,處理該呼叫的裝置會相應地路由該號碼。一旦呼叫被路由,當遠端裝置收到呼叫的警報時,呼叫源自的裝置將播放回鈴音。
一旦遠端裝置接聽呼叫,其電路也關閉,此時呼叫與雙向音訊連線:
先前的範例是呼叫開始到結束的基本流程。但是,FXS埠在後台還有更多關於每個呼叫狀態的訊號傳送到電話。下一節介紹兩種最常用的信令方法,它們用於Cisco模擬網關上的FXS埠。
環路啟動信令是標準公共交換電話網路(PSTN)或連線多個裝置到網路的模擬埠中最常用的接入信令技術。大多數住宅電話是模擬環路啟動電話,基於先前看到的本地環路概念。環路是由兩條電線組成的電通訊路徑,一條用來傳輸,另一條用來接收語音訊號。
兩線電路仍稱為尖端和環,尖端與地相連,環與電池的負側相連。當電話聽筒被拿起(摘機)時,此操作將關閉電路,並在FXS埠和電話之間建立一個環路。電流從模擬埠的電池中提取,表示狀態的變化。此狀態變化向模擬埠中的電流檢測器發出訊號,以提供撥號音。
呼入呼叫通過標準的開/關模式發訊號到話筒,這會導致電話振鈴。
為了更好地瞭解在FXS埠上成功撥出呼叫的日誌外觀,這些日誌已經過註釋,以便您可以清楚地識別呼叫的每個部分。
007578: Jul 2 09:15:50.655: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): GOING OFF HOOK 007579: Jul 2 09:15:51.903: htsp_dsp_message: SEND_SIG_STATUS: state=0xC timestamp=62909 systime=6970515 007580: Jul 2 09:15:51.903: htsp_process_event: [0/3/0, FXSLS_ONHOOK, E_DSP_SIG_1100]fxsls_onhook_offhook htsp_setup_ind 007581: Jul 2 09:15:51.903: [0/3/0] get_local_station_id calling num= calling name= calling time=07/02 09:15 orig called= 007582: Jul 2 09:15:51.904: htsp_process_event: [0/3/0, FXSLS_WAIT_SETUP_ACK, E_HTSP_SETUP_ACK]fxsls_check_auto_call 007583: Jul 2 09:16:00.879: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): DIALING 2002 007584: Jul 2 09:16:02.261: htsp_digit_ready(0/3/0): digit = 2 007585: Jul 2 09:16:02.734: htsp_digit_ready(0/3/0): digit = 0 007586: Jul 2 09:16:03.005: htsp_digit_ready(0/3/0): digit = 0 007587: Jul 2 09:16:03.438: htsp_digit_ready(0/3/0): digit = 2 007588: Jul 2 09:16:03.439: htsp_process_event: [0/3/0, FXSLS_OFFHOOK, E_HTSP_PROCEEDING]htsp_alert_notify 007589: Jul 2 09:16:08.241: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): RING BACK 007590: Jul 2 09:16:10.621: htsp_call_bridged invoked 007591: Jul 2 09:16:10.665: htsp_process_event: [0/3/0, FXSLS_OFFHOOK, E_HTSP_CONNECT]fxsls_offhook_connect 007592: Jul 2 09:16:10.665: [0/3/0] nim_set_sig_state: ABCD=6, timestamp=0, sys_time=6972391 007593: Jul 2 09:16:10.665: [0/3/0] set signal state = 0x6 timestamp = 0 007594: Jul 2 09:16:10.667: htsp_process_event: [0/3/0, FXSLS_CONNECT, E_HTSP_VOICE_CUT_THROUGH]fxsls_voice_cut_thru 007595: Jul 2 09:16:20.815: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): TWO WAY AUDIO 007596: Jul 2 09:16:37.503: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): HANGING UP 007597: Jul 2 09:16:39.794: htsp_dsp_message: SEND_SIG_STATUS: state=0x4 timestamp=45260 systime=6975304 007598: Jul 2 09:16:39.794: htsp_process_event: [0/3/0, FXSLS_CONNECT, E_DSP_SIG_0100]fxsls_offhook_onhook, HF duration Max=1000, HF duration Min=150 007599: Jul 2 09:16:39.794: htsp_timer - 1000 msec 007600: Jul 2 09:16:40.795: htsp_process_event: [0/3/0, FXSLS_CONNECT, E_HTSP_EVENT_TIMER]fxsls_connect_wait_release_req 007601: Jul 2 09:16:40.795: htsp_timer_stop 007602: Jul 2 09:16:40.796: htsp_timer_stop3 007603: Jul 2 09:16:40.878: htsp_process_event: [0/3/0, FXSLS_WAIT_RELEASE_REQ, E_HTSP_RELEASE_REQ]fxsls_waitrls_req_rls 007604: Jul 2 09:16:40.878: [0/3/0] nim_set_sig_state: ABCD=4, timestamp=0, sys_time=6975412 007605: Jul 2 09:16:40.878: [0/3/0] set signal state = 0x4 timestamp = 0 007606: Jul 2 09:16:40.878: [0/3/0] nim_set_sig_state: ABCD=4, timestamp=0, sys_time=6975412 007607: Jul 2 09:16:40.878: [0/3/0] set signal state = 0x4 timestamp = 0 007608: Jul 2 09:16:40.898: htsp_dsp_message: RESP_SIG_STATUS: state=0x4 timestamp=0 systime=6975414 007609: Jul 2 09:16:40.898: htsp_process_event: [0/3/0, FXSLS_ONHOOK, E_DSP_SIG_0100]fxsls_onhook_onhook
本文還包括入站呼叫的信令外觀。日誌已經過註釋,可以輕鬆理解流程中的每個步驟。
008109: Jul 2 10:54:34.424: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): PHONE IS IN IDLE & ON HOOK. THEN IT STARTS TELLING PHONE TO RING. 008110: Jul 2 10:54:42.225: htsp_timer_stop3 htsp_setup_req 008111: Jul 2 10:54:42.225: Orig called num:88777 008112: Jul 2 10:54:42.225: htsp_process_event: [0/3/0, FXSLS_ONHOOK, E_HTSP_SETUP_REQ]fxsls_onhook_setuphtsp_alert 008113: Jul 2 10:54:42.225: [0/3/0] nim_set_sig_state: ABCD=0, timestamp=0, sys_time=7563547 008114: Jul 2 10:54:42.225: [0/3/0] set signal state = 0x0 timestamp = 0 008115: Jul 2 10:54:42.226: htsp_call_bridged invoked 008116: Jul 2 10:54:42.227: htsp_process_event: [0/3/0, FXSLS_WAIT_OFFHOOK, E_HTSP_VOICE_CUT_THROUGH]fxsls_waitoff_voice 008117: Jul 2 10:54:52.960: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): PHONE GOES OFF HOOK 008118: Jul 2 10:54:55.431: htsp_dsp_message: SEND_SIG_STATUS: state=0xC timestamp=42727 systime=7564868 008119: Jul 2 10:54:55.431: htsp_process_event: [0/3/0, FXSLS_WAIT_OFFHOOK, E_DSP_SIG_1100]fxsls_waitoff_offhook 008120: Jul 2 10:54:55.431: [0/3/0] nim_set_sig_state: ABCD=4, timestamp=0, sys_time=7564868 008121: Jul 2 10:54:55.432: [0/3/0] set signal state = 0x4 timestamp = 0 008122: Jul 2 10:54:55.432: [0/3/0] nim_set_sig_state: ABCD=6, timestamp=200, sys_time=7564868 008123: Jul 2 10:54:55.432: [0/3/0] set signal state = 0x6 timestamp = 200 008124: Jul 2 10:54:55.432: htsp_timer2 - 200 msec 008125: Jul 2 10:54:55.631: htsp_process_event: [0/3/0, FXSLS_WAIT_OFFHOOK, E_HTSP_EVENT_TIMER2]fxsls_offhook_dial htsp_dial 008126: Jul 2 10:54:55.632: htsp_process_event: [0/3/0, FXSLS_CONNECT, E_DSP_DIALING_DONE]fxsls_conn_dial_done 008127: Jul 2 10:54:55.640: htsp_process_event: [0/3/0, FXSLS_CONNECT, E_HTSP_VOICE_CUT_THROUGH]fxsls_voice_cut_thru 008128: Jul 2 10:55:08.864: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): TWO WAY AUDIO 008129: Jul 2 10:55:27.232: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): PHONE IS NOW DISCONNECTED FORM FAR END 008130: Jul 2 10:55:29.798: htsp_timer_stop3 008131: Jul 2 10:55:29.843: htsp_process_event: [0/3/0, FXSLS_CONNECT, E_HTSP_RELEASE_REQ]fxsls_connect_disc 008132: Jul 2 10:55:29.843: htsp_timer_stop 008133: Jul 2 10:55:29.843: [0/3/0] nim_set_sig_state: ABCD=12, timestamp=0, sys_time=7568309 008134: Jul 2 10:55:29.843: [0/3/0] set signal state = 0xC timestamp = 0 008135: Jul 2 10:55:29.843: [0/3/0] nim_set_sig_state: ABCD=4, timestamp=750, sys_time=7568309 008136: Jul 2 10:55:29.843: [0/3/0] set signal state = 0x4 timestamp = 750 008137: Jul 2 10:55:29.843: htsp_timer - 950 msecfxsls_simulate_onhook 008138: Jul 2 10:55:30.793: htsp_process_event: [0/3/0, FXSLS_CPC, E_HTSP_EVENT_TIMER]fxsls_cpc_timer 008139: Jul 2 10:55:30.793: htsp_timer - 60000 msec 008140: Jul 2 10:55:30.808: htsp_dsp_message: RESP_SIG_STATUS: state=0xC timestamp=0 systime=7568405 008141: Jul 2 10:55:30.808: htsp_process_event: [0/3/0, FXSLS_WAIT_ONHOOK, E_DSP_SIG_1100]fxsls_waitonhook_offhook 008142: Jul 2 10:55:37.525: htsp_dsp_message: SEND_SIG_STATUS: state=0x4 timestamp=19285 systime=7569077 008143: Jul 2 10:55:37.525: htsp_process_event: [0/3/0, FXSLS_WAIT_ONHOOK, E_DSP_SIG_0100]fxsls_waitonhook_onhook 008144: Jul 2 10:55:37.525: htsp_timer_stop htsp_report_onhook_sig 008145: Jul 2 10:55:48.351: %SYS-7-USERLOG_DEBUG: Message from tty867(user id: ): PHONE IS ON HOOK
本文探討在模擬埠的不同狀態的基本知識以及完美的呼叫方案之後,對其進行故障排除的不同方法。更具體地說,它介紹了一些show命令和常見故障場景。
為了幫助排除埠所處的狀態故障,您可以使用以下命令 show voice port summary
和 show voice call summary
.這些命令會顯示不同的狀態,例如,呼叫處於掛機狀態且未使用時,埠處於摘機狀態且有活動呼叫時。下圖顯示了某些不同的狀態。
掛機:
ISR4451#show voice port sum IN OUT PORT CH SIG-TYPE ADMIN OPER STATUS STATUS EC =============== == ============ ===== ==== ======== ======== == 0/3/0 -- fxs-ls up dorm on-hook idle y 0/3/1 -- fxs-ls up dorm on-hook idle y ISR4451#show voice call sum PORT CODEC VAD VTSP STATE VPM STATE ============== ========= === ===================== ===================== 0/3/0 - - - FXSLS_ONHOOK 0/3/1 - - - FXSLS_ONHOOK
電話收到警報:
ISR4451#show voice port sum IN OUT PORT CH SIG-TYPE ADMIN OPER STATUS STATUS EC =============== == ============ ===== ==== ======== ======== == 0/3/0 -- fxs-ls up up on-hook ringing y 0/3/1 -- fxs-ls up dorm on-hook idle y ISR4451#show voice call sum PORT CODEC VAD VTSP STATE VPM STATE ============== ========= === ===================== ===================== 0/3/0 g711ulaw n S_SETUP_REQ_PROC FXSLS_WAIT_OFFHOOK 0/3/1 - - - FXSLS_ONHOOK
呼叫已連線:
ISR4451#show voice port sum IN OUT PORT CH SIG-TYPE ADMIN OPER STATUS STATUS EC =============== == ============ ===== ==== ======== ======== == 0/3/0 -- fxs-ls up up off-hook idle y 0/3/1 -- fxs-ls up dorm on-hook idle y ISR4451#show voice call sum PORT CODEC VAD VTSP STATE VPM STATE ============== ========= === ===================== ===================== 0/3/0 g711ulaw n S_CONNECT FXSLS_CONNECT 0/3/1 - - - FXSLS_ONHOOK
在前面兩個show命令中,這些命令未來可能會對您有所幫助:
show call active voice brief
show voice call status
show voice dsp active
show voice dsp error
show voice dsp group all
檢測器相關函式測試
使用test voice port detector命令,您可以強制特定檢測器進入開啟或關閉狀態,對檢測器執行測試,然後將檢測器恢復至其原始狀態。
要配置此功能,請在特權EXEC模式下輸入以下命令:
指令 |
目的 |
Router# test voice port slot/subunit/port detector {m-lead | battery-reversal | loop-current |振鈴 | tip-ground | ring-ground | ring-trip} {on |關閉} |
標識要測試的語音埠。 為要測試的檢測器輸入關鍵字,並指定是否強制其進入開啟或關閉狀態。 注意:對於每個信令型別(E&M、FXO、FXS),僅顯示適用的關鍵字。僅當檢測器處於強制狀態時,才會顯示disable關鍵字。 |
Router# test voice port slot/subunit/port detector {m-lead | battery-reversal | loop-current |振鈴 | tip-ground | ring-ground | ring-trip}禁用 |
標識要結束測試的語音埠。 為要測試的檢測器輸入關鍵字,該關鍵字禁用以結束強制狀態。 注意:對於每個信令型別(E&M、FXO、FXS),僅顯示適用的關鍵字。僅當檢測器處於強制狀態時,才會顯示disable關鍵字。 |
要在語音埠上建立環回,請在特權EXEC模式下輸入以下命令:
指令 |
目的 |
Router# test voice port slot/subunit/port loopback {local |網路} |
標識要測試的語音埠,並為環回方向輸入關鍵字。 注意:必須在測試語音埠上建立呼叫。 |
Router# test voice port slot/subunit/port loopback disable |
標識要在其上結束測試的語音埠,並輸入關鍵字disable以結束環回。 |
要將測試音調注入語音埠,請在特權EXEC模式下輸入以下命令:
指令 |
目的 |
Router# test voice port slot/subunit/port injection-tone {local |網路} {1000hz | 2000hz | 200hz | 3000hz | 300hz | 3200hz | 3400hz | 500hz | quiet} |
標識要測試的語音埠,並為傳送測試音的方向和測試音的頻率輸入關鍵字。 注意:必須在測試語音埠上建立呼叫。 |
Router# test voice port slot/subunit/port injection-tone disable |
標識要在其上結束測試的語音埠,並輸入關鍵字disable以結束測試音。 注意:只有在啟用測試條件時,disable關鍵字才可用。 |
要在語音埠上測試與中繼相關的功能,請在特權EXEC模式下輸入以下命令:
指令 |
目的 |
Router# test voice port slot/subunit/port relay {e-lead |循環 | ring-ground | battery-reversal |斷電 |振鈴 | tip-ground} {on|off} |
標識要測試的語音埠。 為正在測試的中繼輸入關鍵字,並指定是否強制其進入開啟或關閉狀態。 注意:對於每個信令型別(E&M、FXO、FXS),僅顯示適用的關鍵字。僅當中繼處於強制狀態時,才會顯示disable關鍵字。 |
Router# test voice port slot/subunit/port relay {e-lead |循環 | ring-ground | battery-reversal |斷電 |振鈴 | tip-ground}禁用 |
標識要結束測試的語音埠。 為正在測試的中繼輸入關鍵字,然後輸入關鍵字disable以結束強制狀態。 注意:對於每個信令型別(E&M、FXO、FXS),僅顯示適用的關鍵字。僅當中繼處於強制狀態時,才會顯示disable關鍵字。 |
其 test voice port switch fax
命令強制語音連線埠進入傳真模式以進行測試。輸入此命令後,您可以使用 show voice call
或 show voice call summary
命令檢查語音埠是否能在傳真模式下運行。如果語音連線埠沒有偵測到傳真資料,則語音連線埠會保留傳真模式30秒,然後自動回復到語音模式。
disable關鍵字可結束強制模式開關;但是,傳真模式在30秒後自動結束。只有在語音連線埠處於傳真模式時,disable關鍵字才可用。
若要強制語音連線埠進入傳真模式並將其回復到語音模式,請在特權EXEC模式下輸入以下命令:
指令 |
目的 |
Router# test voice port slot/subunit/port switch fax |
標識要測試的語音埠。 輸入關鍵字fax,強制語音埠進入傳真模式。 |
Router# test voice port slot/subunit/port switch disable |
標識要結束測試的語音埠。 輸入關鍵字disable將語音連線埠還原為語音模式。 |
如前所述,本文檔介紹對FXO和FXS進行故障排除時發現的一些常見問題。
FXO負責檢測FXS何時完成斷電,從而知道何時在FXS側斷開的情況下掛機。
005754: Nov 18 18:51:28.257: htsp_process_event: [0/2/3, FXOLS_ONHOOK, E_HTSP_SETUP_REQ]fxols_onhook_setup 005755: Nov 18 18:51:28.257: [0/2/3] set signal state = 0xC timestamp = 0 005756: Nov 18 18:51:28.257: htsp_timer - 500 msec 005782: Nov 18 18:51:28.509: htsp_process_event: [0/2/3, FXOLS_WAIT_DIAL_TONE, E_DSP_SIG_1100]fxols_power_denial_detected 005783: Nov 18 18:51:28.509: htsp_timer2 - 1000 msec 005784: Nov 18 18:51:28.509: htsp_timer_stop 005785: Nov 18 18:51:29.509: htsp_process_event: [0/2/3, FXOLS_WAIT_DIAL_TONE, E_HTSP_EVENT_TIMER2]fxols_power_den_disc 005786: Nov 18 18:51:29.509: htsp_timer_stop 005787: Nov 18 18:51:29.509: htsp_timer_stop2
其 fxols_power_denial_detected
當線路上未檢測到環路電流時,將觸發事件。預設情況下,已啟動750msec計時器。如果DSP在計時器到期前未檢測到當前呼叫,則會斷開呼叫。計時器在語音埠配置模式下可使用 timeouts power-denial <0-2500ms>
指令。此計時器必須與FXS端為其電源拒絕持續時間定義的值相匹配。
此案例表示有故障的電纜、硬體或另一端的埠型別錯誤。確定問題是否與埠或線路有關。
connection plar
以便將呼叫從埠路由到接線員或IVR/AA。修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
25-Jul-2019 |
初始版本 |