mss (mobicents sip servlets) を使用して SIP アプリケーションを構築しています。
P-Charging-Vectorには、 icid-valueおよびicid-generated-atパラメータがあります。
rfc3455 および rfc3261 によると、icid-valueとicid-generated-atパラメータの両方は、"[" IPv6address "]" の形式にすることができます。
私はjain-sip-ri バージョン 1.2.242を使用しており、次の 2 つの問題に直面しています。
1) "[" IPv6address "]" の形式の icid 値を持つ SIP リクエストを取得している場合、
例えば:
P-Charging-Vector: icid-value=[2a02:ed0:1000:3033::249];orig-ioi=1223abc4;icid-generated-at=[2a02:ed0:1000:3033::249]
次の例外が発生し、sip スタックによってヘッダーが削除されます。
java.text.ParseException: [C@53fad5b4
Expecting >>>;<<< got >>>[<<<
at gov.nist.core.LexerCore.match(LexerCore.java:287)
at gov.nist.javax.sip.parser.ims.PChargingVectorParser.parse(PChargingVectorParser.java:81)
at gov.nist.javax.sip.parser.StringMsgParser.processHeader(StringMsgParser.java:294)
at gov.nist.javax.sip.parser.StringMsgParser.parseSIPMessage(StringMsgParser.java:179)
at gov.nist.javax.sip.stack.UDPMessageChannel.processIncomingDataPacket(UDPMessageChannel.java:357)
at gov.nist.javax.sip.stack.UDPMessageChannel.run(UDPMessageChannel.java:317)
at java.lang.Thread.run(Thread.java:745)
2) "[" IPv6address "]" の形式で icid-value または icid-generated-at パラメータを使用して P-Charging-Vector を生成しようとすると、同じ解析例外が発生します。
これはrfcに従っていないようです。