北京智能网话单解析规则和流程说明

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1目的
本文描述了目前北京智能网华为、西门子SCP8通话话单、短信话单、充值话单的详细解析流程,用于核对北京智能网话单采集程序中可能存在的问题。

2适用范围
适用于北京智能网话单解析的开发和维护人员。

3术语
简写说明:
一般的,话单记录以"|"进行分割,话单中的透明字段以";"进行分割。

#1,#2,#3……#n,表示对原始话单以"|"分割后,第1,第2,第3……第n个字段;
$1,$2,$3……$n,表示原始话单中透明字段以";"分割后,第1,第2,第3……第n个字段
T1,T2,T3……Tn,表示解析后话单的第1,第2,第3……第n个字段;
4参考资料
无。

5规则和流程描述
5.1西门子通话话单
5.1.1原始文件说明
西门子PPS7U V75平台,设备包括SCP7,SCP8,SCP9。

原单话单文件格式:
Microsoft Office
Excel 工作表
MOC格式举例:
8|1|303|211|0x7070C03B|10|555|86|FFFFFFFFFFFFFFFF|86|-1|0|96531|0|-1|8|33|1|545|0|0|96531|0 |-1|?|25|1817|?|?|0|10137|0|46|8613000109;000000555;000060;;;0;0000;;;;25;0;0
MTC格式举例:
8|1|314|217|0x7070C03B|11|555|86|FFFFFFFFFFFFFFFF|86|-1|0|86|0|-1|250|25|1|579|0|0|86|0|-1| ?|20|6546|?|?|0|10142|0|57|100555;0086;8613000191;22000;;0;0000;;;;20;0;0
5.1.2字段规则
中间数据,这些数据为计算最终结果所用
解析后话单格式(如没有特别指明,则MOC/MTC取值方法相同):
5.1.3解析流程
5.1.4Call_Type流程
5.1.4.1C allType定义
原始话单的CallType定义:
CALLING_UNICOM_MOBILE_DEFAULT = 0;
CALLING_UNICOM_MOBILE_LOCAL_CALL = 1;
CALLING_UNICOM_MOBILE_REGIONAL_CALL = 2;
CALLING_UNICOM_MOBILE_PROVINCE_CALL = 3;
CALLING_UNICOM_MOBILE_LONG_DISTANCE_CALL = 4;
CALLING_TELECOM_MOBILE_DEFAULT = 5;
CALLING_TELECOM_MOBILE_LOCAL_CALL = 6;
CALLING_TELECOM_MOBILE_REGIONAL_CALL = 7;
CALLING_TELECOM_MOBILE_PROVINCE_CALL = 8;
CALLING_TELECOM_MOBILE_LONG_DISTANCE = 9;
CALLING_FIXED_NET_DEFAULT = 10;
CALLING_FIXED_NET_LOCAL_CALL = 11;
CALLING_FIXED_NET_REGIONAL_CALL = 12;
CALLING_FIXED_NET_PROVINCE_CALL = 13;
CALLING_FIXED_NET_LONG_DISTANCE = 14;
CALLING_SPECIAL_DESTINATIONS_1 = 15;
CALLING_SPECIAL_DESTINATIONS_2 = 16;
CALLING_SPECIAL_DESTINATIONS_3 = 17;
CALLING_INTERNATIONAL_HK_MC_TW = 20;
CALLING_INTERNATIONAL_14_STATE = 22;
CALLING_INTERNATIONAL_OTHER = 23;
CALLING_10109068 = 25;
CALLING_10155 = 26;
CALLING_101900 = 27;
CALLING_106056 = 28;
CALLING_9622922 = 28;
CALLING_1016060 = 29;
CALLING_10158 = 30;
CALLING_NOT_DETERMINED = -1;
解析话单的CallType定义:
CALLING_LOCAL_CNC = 0;
CALLING_LONG_DISTANCE_CNC = 1;
CALLING_LONG_DISTANCE_HK_MC_TW = 2;
CALLING_LONG_DISTANCE_INTERNATIONAL = 3;
CALLING_LOCAL_UNICOM_GSM = 4;
CALLING_LONG_DISTANCE_UNICOM_GSM = 5;
CALLING_LOCAL_UNICOM_CDMA = 6;
CALLING_LONG_DISTANCE_UNICOM_CDMA = 7;
CALLING_LOCAL_MOBILE = 8;
CALLING_LONG_DISTANCE_MOBILE = 9;
CALLING_IP_LOCAL = 10;
CALLING_IP_HK_MC_TW = 11;
CALLING_IP_USA_CA = 12;
CALLING_IP_14_STATE = 13;
CALLING_IP_OTHER = 14;
CALLING_ROAMING_LONG_DISTANCE_INTERNATIONAL = 15;
CALLING_ROAMING_LONG_DISTANCE_HK_MC_TW = 16;
CALLING_ROAMING_LOCAL_UNICOM_GSM = 17;
CALLING_ROAMING_LONG_DISTANCE_UNICOM_GSM = 18;
CALLING_ROAMING_LOCAL_UNICOM_CDMA = 19;
CALLING_ROAMING_LONG_DISTANCE_UNICOM_CDMA = 20;
CALLING_ROAMING_LOCAL_MOBILE_GSM = 21;
CALLING_ROAMING_LONG_DISTANCE_MOBILE_GSM = 22;
CALLING_ROAMING_LOCAL_CNC = 23;
CALLING_ROAMING_LONG_DISTANCE_CNC = 24;
CALLING_ROAMING_CALL_IP = 25;
CALLING_ROAMING_OTHERS = 26;
CALLING_PREPAY_PHONE = 27;
CALLING_LOCAL_96531 = 28;
CALLING_LONG_DISTANCE_96531 = 29;
CALLING_LOCAL_PSTN_RAILWAY_TELECOM = 31;
CALLING_LONG_DISTANCE_TELECOM = 32;
CALLING_LONG_DISTANCE_RAILWAY_TELECOM = 33;
CALLING_ROAMING_LOCAL_TELECOM = 34;
CALLING_ROAMING_LOCAL_RAILWAY_TELECOM = 35;
CALLING_ROAMING_LONG_DISTANCE_TELECOM = 36;
CALLING_ROAMING_LONG_DISTANCE_RAILWAY_TELECOM = 37;
CALLING_OTHER = 49;
CALLED_LOCAL_CNC = 50;
CALLED_LONG_DISTANCE_CNC = 51;
CALLED_LONG_DISTANCE_INTERNATIONAL = 52;
CALLED_LOCAL_UNICOM_GSM = 53;
CALLED_LONG_DISTANCE_UNICOM_GSM = 54;
CALLED_LOCAL_UNICOM_CDMA = 55;
CALLED_LONG_DISTANCE_UNICOM_CDMA = 56;
CALLED_LOCAL_MOBIE_GSM = 57;
CALLED_LONG_DISTANCE_MOBIE_GSM = 58;
CALLED_ROAMING = 59;
CALLED_LOCAL_TELECOM = 60;
CALLED_LOCAL_RAILWAY_TELECOM = 61;
CALLED_LONG_DISTANCE_TELECOM = 62;
CALLED_LONG_DISTANCE_RAILWAY_TELECOM = 63;
CALLED_OTHER = 99;
5.1.4.2相关数据
Call_Type的最后取值,取决于以下几个密切相关的字段:
1)Service_Key(#6):话单主被叫标识,10为主叫,11为被叫。

2)Roam_Flag(T20):漫游标识,可能取值0,1,9。

3)srcCallType:原始CallType,取$3的4-5位,还可能为"AA"。

4)otherNumber:MOC被叫号码,MTC主叫号码。

5)bIPFlag:IP电话标识,根据$3第1位得到,默认值False。

5.1.4.3主叫话单
1)主叫非漫游(Service_key=10,Roam_Flag=0)
判断srcCallType的值
0,1:判断otherNumber是否CDMA号码,是Call_Type=6,否Call_Type=4。

2,3,4:判断otherNumber是否CDMA号码,是Call_Type=7,否Call_Type=5。

5,6:Call_Type=8。

7,8,9:Call_Type=9。

10,11,25-30:Call_Type=0。

25不是港澳台吗?
12,13,14:Call_Type=1。

20:Call_Type=2。

21,22,23:Call_Type=3。

判断IP电话,根据srcCallType的值,会覆盖上面的判断结果。

20:Call_Type=11
21:Call_Type=12
22:Call_Type=13
23:Call_Type=14
Other: Call_Type=10
2)主叫漫游(Service_key=10,Roam_Flag=1)
判断srcCallType的值
0,1:判断otherNumber是否CDMA号码,是Call_Type=19,否Call_Type=17。

2,3,4:判断otherNumber是否CDMA号码,是Call_Type=20,否Call_Type=18。

5,6:Call_Type=21。

7,8,9:Call_Type=22。

10,11,25-30:Call_Type=23。

12,13,14:Call_Type=24。

20:Call_Type=16。

21,22,23:Call_Type=15。

Other:Call_Type=25。

3)主叫其他(Service_key=10,Roam_Flag=9)
Call_Type=49。

4)9386/96531特殊号码
根据srcCallType的值,会覆盖前面的判断结果。

0,1,5,6,10,11:Call_Type=28。

Other:Call_Type=29。

5.1.4.4被叫话单
1)被叫非漫游(Service_key=11,Roam_Flag=0)
判断otherNumber的值:
以(86)130,131,132,156开头:判断otherNumber是否为本地联通号码,是则Call_Type=53,否则Call_Type=54。

以(86)133,153开头:判断otherNumber是否为本地联通号码,是则Call_Type=55,否则Call_Type=56。

以(86)134-9,150,158,159开头:判断otherNumber是否为本地移动号码,是则Call_Type=55,否则Call_Type=56。

以10,01开头:Call_Type=50。

其他开头:Call_Type=99。

2)被叫漫游(Service_key=11,Roam_Flag=1)
Call_Type=59。

3)被叫其他(Service_key=11,Roam_Flag=9)
Call_Type=99。

5.2西门子短信话单
5.2.1原始文件说明
原始话单格式
例子:
8|1|470|202|0x7070C03B|1|*123|?|FFFFFFFFFFFFFFFF|86|-1|0|?|0|-1|0|0|1|128|0|255|?|0|0|?|10| 5234|?|?|0|0|0|213|Tran_Prefix:30460-;TransactionID:2111174;IASError:0;SubAccount:0;Functio n:1;TransparentData:SMSChargeA86B86;GOB-relevant:0;CompMoneUsed:0;CompMoneAcct:0;FreeSMSuse
8|1|453|207|0x7070C03B|1|123|?|FFFFFFFFFFFFFFFF|86|-1|0|?|0|-1|0|0|1|128|0|255|?|0|0|?|0|0| ?|?|0|0|0|196|Tran_Prefix:30500-;TransactionID:1487948;IASError:62;SubAccount:0;Function:1; TransparentData:XXHD;98885238;100;2;GOB-relevant:0;CompMoneUsed:0;CompMoneAcct:0;FreeSMSuse d:0;FreeSMSacc:0;
5.2.2字段规则
最终入库的字段
5.2.3解析流程
略。

5.3西门子充值话单
5.3.1原始文件说明
原始话单格式例子:
7|86|3|5000|0000-00-00|024419|2005-11-15|2007-08-19 15:40|0000-00-00|2007-12-31|90|0|0000-00-00|0|0|
5.3.2字段规则
5.3.3解析流程
略。

5.3.4其他说明
最终结果需要剔除非联通号码和非本地预付费号码。

5.4华为通话话单
5.4.1原始文件说明
0|1|0|2|0|||10|8613000191||8613000191||4681|4610|223|208|45|20|0|1||||10||1986|20|0|0|1 0|10||0|||0|H|0|15|0|0|0|0|
0|1|2|1|1|||555|8613000107||8613000307||4691|4699|217|221|64|100|0|2|||||555|29259|0|10 0|0|554|10|0086|0|||0|P|0|15|0|0|0|0|
5.4.2字段规则
解析后话单格式(如没有特别指明,则MOC/MTC取值方法相同):
5.4.3主要解析流程
以下是程序的主要解析流程,CALL_TYPE的计算流程在后面进行详细描述。

5.4.4CALL_TYPE流程
5.4.4.1相关数据
Call_Type的最后取值,取决于以下几个密切相关的字段:
strCallType
roam_flag
strChargeType
otherNumber
otherHPLMN
5.4.4.2主叫话单
1)主叫非漫游(strCallType=0,Roam_Flag=0)
判断strChargeType的值:
0:
Call_Type=3。

1:判断otherNumber:
非移动联通号码则Call_Type=1;
联通GSM号码则Call_Type=5;
联通CDMA号码则Call_Type=7;
移动号码则Call_Type=9;
2:判断otherNumber
非移动联通号码则Call_Type=0;
联通GSM号码则Call_Type=4;
联通CDMA号码则Call_Type=6;
移动号码则Call_Type=8;
5:
Call_Type=2
6:判断otherNumber和otherHPLMN
otherNumber以9886开头:Call_Type=10;
otherNumber以98852开头且otherHPLMN=852或者otherNumber以98853开头且otherHPLMN=853或者otherNumber以98886开头且otherHPLMN=886:Call_Type=11;
otherHPLMN=1且otherNumber不以9886开头:Call_Type=12;
otherHPLMN为("91", "92", "84", "967", "850", "880", "504", "98", "223", "974", "229", "976", "254", "250")中任意一个,且otherNumber不以9886开头:Call_Type=13;
其他情况:Call_Type=14;
Other:
Call_Type=49;
2)主叫漫游(strCallType=0,Roam_Flag=1)
0:
Call_Type=15;
1:
联通GSM号码则Call_Type=18;
联通CDMA号码则Call_Type=20;
移动号码则Call_Type=22;
非移动联通号码则Call_Type=24;
2:
联通GSM号码则Call_Type=17;
联通CDMA号码则Call_Type=19;
移动号码则Call_Type=21;
非移动联通号码则Call_Type=23;
5:
Call_Type=16;
6:
Call_Type=25;
Other:
Call_Type=26;
3)主叫其他(strCallType=0,Roam_Flag=其他)Call_Type=49。

5.4.4.3被叫话单
1)被叫非漫游(strCallType=2,Roam_Flag=0)0:
Call_Type=52;
1:
联通GSM号码则Call_Type=54;
联通CDMA号码则Call_Type=56;
移动号码则Call_Type=58;
非移动联通号码则Call_Type=51
2:
联通GSM号码则Call_Type=53;
联通CDMA号码则Call_Type=55;
移动号码则Call_Type=57;
非移动联通号码则Call_Type=50;
Other:
Call_Type=99;
2)被叫漫游(strCallType=2,Roam_Flag=1)Call_Type=59。

3)被叫其他(strCallType=2,Roam_Flag=其他)Call_Type=99。

5.5华为短信GUA话单
5.5.1原始文件说明
原始话单格式例子:
229|0||86|101001|1|0|0||0|10|235|30006|QQVIP||0|0|9777012026|1|||||402|15|0|14|||| 229|0||86|101001|1|0|0||0|110|254|90801|VSM10155||100|0|10155|2|||||3127|15|0|0|||| 229|0||86|101001|1|0|0||0|10|213|11161|$YWJSSJCS||0|0|49011|0|||||3448|0|0|0|||| 229|0||86|101001|1|0|0||0|10|239|91490|6666||0|0|6666|0|||||4865|0|0|0||||
229|0||86|101001|1|0|0||0|1000|246|30006|LTMCLUB||1000|0|9777|3|||||1966|15|0|0|||| 5.5.2字段规则
5.6华为短信P2P话单
5.6.1原始文件说明
原始话单文件格式例子:
11|1|||86|1|92|2147483647|0|15|227|10|1|0|||0|6106|15|0|0|||| 11|1|||86|1|28|2147483647|0|0|228|10|1|0|||0|0|15|1|21||||
11|1|||86|1|32|1127977467|0|0|228|10|0|0|||0|1664|15|1|110|||| 11|1|||86|1|138|2147483647|0|10|228|10|1|0|||0|1170|15|0|0|||| 11|1|||86|1|12|2147483647|0|0|229|10|0|0|||0|5668|15|1|194|||| 11|1|||86|1|18|1127977608|0|0|229|10|0|0|||0|3236|15|1|142|||| 11|1|||86|1|40|1127977702|0|10|230|10|1|0|||0|425|15|0|0||||
5.6.2字段规则
入库字段
5.7华为充值话单
5.7.1原始文件说明
原始文件话单格式:
1004||5000|JFK2231600000|JFK2231600000|214|0|146|20071118|20080216|0|0|5|10|90| 1004||10000|JFK2231680000|JFK2231680000|228|0|19|20090126|20090426|0|0|8|10|24| 1004||5000|JFK2234400000|JFK2234400000|200|0|0|20070821|20071119|0|0|6|10|90|
5.7.2字段规则
5.8华为DayHire话单
5.8.1原始文件说明
5.8.2字段规则
5.9华为MonthHire话单5.9.1原始文件说明
5.9.2字段规则
6附录
7文件修改控制。

相关文档
最新文档