徐靜 余文順
武鋼通信公司
接到客服電話,有用戶反映不能通過17909這種方式撥打長途了,一查數據,原來是該區域交換機出現了故障,該用戶從ZXJ10的交換機上割接到所在樓道里面的中興EPON上,具體型號是9806H。
按照以往故障排查的順序,首先檢查用戶數據,發現該用戶的所有用戶數據、屬性都是正常的。用戶所在的分析子下面有幾萬用戶,從來沒有反映過不能撥打17909的問題。ZXJ10、9806H這些設備都是掛在軟交換下面,和營運商對接也是在軟交換層面完成的,因為是同一個出口,那么可以斷定出口方面是沒有任何問題的,那么問題就應該在軟交換及以下層面。為了解決問題,維護人員搭建了模擬環境,測試時分別把用戶放置在ZXJ10交換機、中興的F420、中興的9806H上,發現用戶在9806H時有撥打不通的故障,在另外兩個設備上都沒有出現撥打不了的情況。通過測試,可以判斷問題就出在9806H上,不是這一臺9806H,而是所有的9806H都有這個問題。于是利用軟件進行H.248協議的呼損跟蹤,跟蹤消息出來后發現是號碼不全并且9806H的撥號方案不同于其他設備,它是一位一位送號的。問題可能出現在數據分析這部分。分析子對用戶所撥號碼的分析要借助兩個數據庫,一個是分析器,一個是號碼圖表(DigitMap)。一個個來查找問題。檢查分析器的數據沒有問題,那么問題就應該在DigitMap上。
我們先來看看什么是DigitMap。
DigitMap,數字地圖。在我們通信行業里稱作號碼圖表,是跟電話通信相關。當我們發起一個呼叫,各種形式的終端上所撥打出的號碼由接入的媒體網關接收,再發送至核心網進行撥號分析,完成呼叫接續。DigitMap就是存在于媒體網關內的一種撥號方案,用于檢測和報告終端的撥號事件。當我們所撥的被叫用戶號碼符合DigitMap所定義的撥號方案之一時,媒體網關將此被叫號碼發送至核心網進一步處理。如果我們所撥的被叫號碼不符合DigitMap所定義的任何一個撥號方案,媒體網關將直接釋放本次呼叫、并送空號提示音。由此可見,如果沒有配置正確的DigitMap,我們是無法撥出號碼的。
DigitMap是由一系列代表一定含義的數字字符串組成,DigitMap中常用的字符串及其含義說明參見下表。
用戶號碼所在的分析器子所用的號碼圖表里面有幾個,一一查看,發現其中一個號碼圖表模板里面有兩個相關的撥號方案“1[2-9]XX”和“1[79]XSX.”。當用戶撥打17909XXXXXXXXXXX時,由于9806H的撥號方案是一位一位的送號,當送到“1790”的“0”后就匹配了“17XX”這個DigitMap方案,用戶后面撥打的號碼沒有被有效分析。
找到問題了,怎么解決。解決方案有兩種:
(1)修改“1[2-9]XX”。“1[2-9]XX”是給商務群內部小號碼使用的,查看內部小號碼發現沒有開放“17XX”這個號段。修改“1[2-9]XX”為“1[2-6]XX|1[8-9]XX”,把“17XX”的撥號方案從中剝離,讓X“17909XXXXXXXXXX”去和“1[79]XSX.”匹配也不影響其他小號碼的使用。
(2)利用“S”的功能,我們修改為“1[2-9]XXS”,也就是說當號碼串已經匹配了“17XX”撥號方案,但同時有可能接收更多位數的號碼而匹配其它不同的撥號方案,則不應立即報告匹配情況,繼續收號。按照上述方案之一修改DigitMap,試撥成功,通知用戶撥打,成功。

字符 含 義數字"0"到"9" 可撥打的具體數字通配符"x" 代表任何數字("0"到"9")范圍"["和"]" 任取一個"["和"]"中包含的字符,作為本位字符子范圍"-"由"-"分開的兩個數字,代表這兩個數字(包括它們)之間的數字。子范圍只能應用在范圍符號內,即包含在"["和"]"中。例如"1-4"表示1、2、3、4分隔符"|" 用于分隔字符串,"|"左右的字符串均為一個可選擇的撥號方案"." 表示對它前面的數字或字符任意多次(包括零次)的重復E表示DTMF(雙音多頻信號)方式中的"*"F表示DTMF(雙音多頻信號)方式中的"#"S短定時器,如果號碼串已經匹配了DigitMap中的某一撥號方案,但同時有可能接收更多位數的號碼而匹配其它不同的撥號方案,則不應立即報告匹配情況。媒體網關必須使用短定時器S(例如8秒)等待接收更多位數的號碼。L長定時器,如果媒體網關檢測到至少還需要一個數字來匹配DigitMap中的任意撥號方案,則數字間的定時器值應設置為長定時器L(例如16秒)
撥號方案的發送是否成功不僅要有完善的分析子、分析器,更要有匹配的DigitMap,通過修改DigitMap可以滿足不同用戶的撥號需求。