使用 Seagull 直径消息生成器,我正在尝试构建一些具有 MSISDN AVP 的请求,如下所示...
<avp name="MSISDN" value="19075977202"> </avp>
从海鸥股票“sh”词典借来的词典条目是……
<!-- re-use 3GPP Sh AVPs (!!! vendor-id=10415) -->
<define name="MSISDN" type="OctetString">
<setfield name="avp-code" value="701"></setfield>
<setfield name="flags" value="192"></setfield>
<setfield name="Vendor-ID" value="10415"></setfield>
</define>
pcap 跟踪显示...
*AVP: MSISDN(701) l=23 f=VM- vnd=TGPP val=3139303735393737323032
AVP Code: 701 MSISDN
AVP Flags: 0xc0, Vendor-Specific: Set, Mandatory: Set
AVP Length: 23
AVP Vendor Id: 3GPP (10415)
MSISDN: 3139303735393737323032
E.164 number (MSISDN): 1393037353937373230323
Country Code: Americas (1)
Padding: 00*
注意大长的 ASCII 数字字符串。
正确的跟踪应该显示类似...
*
AVP: MSISDN(701) l=18 f=VM- vnd=TGPP val=9170957720f2
AVP Code: 701 MSISDN
AVP Flags: 0xc0, Vendor-Specific: Set, Mandatory: Set
AVP Length: 18
AVP Vendor Id: 3GPP (10415)
MSISDN: 9175557720f2
E.164 number (MSISDN): XXXXXXXXXXX
Padding: 0000
注意 MSISDN 是 BCD 编码的。我尝试了所有显而易见的事情,例如更改字典中的类型。有没有人成功地让 MSISDN 在 Seagull 上工作?我不介意将它们作为 PCAP 中显示的十六进制值输入,但我还没有弄清楚如何在 Seagull 中执行此操作。感谢有实际经验的人提供的任何帮助。