IMS |
|||||||||||||||||||||
SMS over IMS
Overall sequence of SMS over IMS is very simple. Just send a message and wait for delivery report (this delivery report is optional).
Comments from the initial post (Just to give you an idea on how the technology evolve) : But when you are going into details especially for troubleshooting, there are a lot of small things you have to think of. I came across many troubleshooting case, but I haven't found any general rules that would clear out all of your problems. (It may be becauseIMS service is still in early phase as of now (Oct 2013), specification (RFC, 3GPP) is not so clear and the interpretation of those specification by the IMS stack developers seems to vary a lot.) So my approach on this topic is to introduce various cases as much as possible so that you can absorbe the generic pattern.
Comments as of Feb 2017 : Now pretty much everything is cleary defined in 3GPP specification 24.341 (Refer to the latest version of 24.341)
Followings are the list of example, I will go through in this page.
< Capability indcation in REGISTER >
IR 92 2.2.1 SIP Registration Procedures says : If a UE support SMS over IP, it should include a tag to indicate the capablity of SMS over IP as stated in 24.341 5.3.2.2 as below.
On sending a REGISTER request, the SM-over-IP receiver shall indicate its capability to receive traditional short messages over IMS network by including a "+g.3gpp.smsip" parameter into the Contact header according to RFC 3840
In RFC 3840, 5. Computing Capabilities
Example : REGISTER sip:test.3gpp.com SIP/2.0 Expires: 600000 Authorization: Digest .... CSeq: 1 REGISTER Max-Forwards: 70 Route: <sip:[2001:0:0:2::2]:5060;lr> f: <sip:310410123456789@test.3gpp.com>;tag=1148585218 i: 229717043 k: pathsec-agree l: 0 m: <sip:310410123456789@[2001:0:0:2::1]:5060>;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel";+g.3gpp.smsip;+sip.instance="<urn:gsma:imei:35858205-001765-1>"
t: <sip:310410123456789@test.3gpp.com> v: SIP/2.0/TCP [2001:0:0:2::1]:5060;branch=z9hG4bK1447958797smg;transport=TCP
< 24.341 B.5 Signalling flows demonstrating successful UE originated SM submit procedure over IP >
< 24.341 B.6 Signalling flows demonstrating successful UE terminated SM deliver procedure over IP >
Following is an example of MO SMS over IMS. If you want to get the detailed description of the specification, refer to 34.229 18.1 Mobile Originating SMS
NOTE : If you want to see the contents of full log with Amarisoft Log viewer, go to LogAnalysis section and click on 'Sample Log' in this tutorial of Amarisoft TechAcademy.
Request: MESSAGE tel:19037029920;phone-context=TestIMS.com | (RP) RP-DATA (MS to Network) MESSAGE tel:19037029920;phone-context=TestIMS.com SIP/2.0 f: "Test" <sip:+11234567890@test.3gpp.com>;tag=834037901 t: <tel:19037029920;phone-context=TestIMS.com> CSeq: 834037887 MESSAGE i: 834037887_2367153256@2001:0:0:1::1 v: SIP/2.0/UDP [2001:0:0:1::1]:5060;branch=z9hG4bK253093091 Max-Forwards: 70 Route: <sip:[2001:0:0:1::2]:5060;lr> c: application/vnd.3gpp.sms Allow: MESSAGE Request-Disposition: no-fork User-Agent: Test User Agent l: 28
v: SIP/2.0/UDP [2001:0:0:1::1]:5060;branch=z9hG4bK253093091 Route: <sip:[2001:0:0:1::2]:5060;lr> c: application/vnd.3gpp.sms Allow: MESSAGE Request-Disposition: no-fork User-Agent: Test User Agent
Message Body GSM A-I/F RP - RP-DATA (MS to Network) RP-Message Reference RP-Message Reference: 0x05 (5) RP-Origination Address Length: 0 RP-Destination Address - (19037029920) 0... .... = TP-RP: TP Reply Path parameter is not set in this SMS SUBMIT/DELIVER .0.. .... = TP-UDHI: The TP UD field contains only the short message ..0. .... = TP-SRR: A status report is not requested ...1 0... = TP-VPF: TP-VP field present - relative format (2) .... .0.. = TP-RD: Instruct SC to accept duplicates .... ..01 = TP-MTI: SMS-SUBMIT (1) // This is indication of MO-SMS TP-MR: 88 TP-Destination-Address - (555) Length: 3 address digits 1... .... : No extension .000 .... : Type of number: (0) Unknown .... 0001 : Numbering plan: (1) ISDN/telephone (E.164/E.163) TP-DA Digits: 555 TP-PID: 0 00.. .... : defines formatting for subsequent bits ..0. .... : no telematic interworking, but SME-to-SME protocol ...0 0000 : the SM-AL protocol being used between the SME and the MS (0) TP-DCS: 0 00.. .... = Coding Group Bits: General Data Coding indication (0) Special case, GSM 7 bit default alphabet TP-Validity-Period: 24 hours 0 minutes TP-User-Data-Length: (12) depends on Data-Coding-Scheme TP-User-Data SMS text: MO SMS Test
Request: MESSAGE sip:+11234567890@test.3gpp.com | (RP) RP-ACK (Network to MS) MESSAGE sip:+11234567890@test.3gpp.com SIP/2.0 Via: SIP/2.0/UDP [2001:0:0:1::2]:5060;branch=z9hG4bK-b6999e582ee8a42f22e8aafe5f68f47b;rport Via: SIP/2.0/UDP [2001:0:0:1::2]:60393;branch=z9hG4bK00476613 Max-Forwards: 69 From: <sip:1111@test.3gpp.com>;tag=00476613 To: <sip:+11234567890@test.3gpp.com> Call-ID: 20131016-151124@[2001:0:0:1::2]:60393 CSeq: 1 MESSAGE Request-Disposition: fork, parallel Accept-Contact: *;+g.3gpp.smsip;require;explicit // This indicate that this SIP message is a SMS message Content-Type: application/vnd.3gpp.sms // This indicates that the SMS is in 3GPP format (not 3GPP2 format) In-Reply-To: 834037887_2367153256@2001:0:0:1::1 P-Called-Party-ID: <sip:+11234567890@test.3gpp.com> Content-Length: 13 Record-Route: <sip:[2001:0:0:1::2];lr>
Message Body GSM A-I/F RP - RP-ACK (Network to MS) RP-Message Reference RP-Message Reference: 0x05 (5) RP-User Data Element ID: 0x41 Length: 9 TPDU (not displayed) GSM SMS TPDU (GSM 03.40) SMS-SUBMIT REPORT .0.. .... = TP-UDHI: The TP UD field contains only the short message .... ..01 = TP-MTI: SMS-SUBMIT REPORT (1) TP-Parameter-Indicator 0... .... : No extension .000 0... : Reserved .... .0.. : TP-UDL not present .... ..0. : TP-DCS not present .... ...0 : TP-PID not present TP-Service-Centre-Time-Stamp Year 33, Month 13, Day 03 Hour 13, Minutes 63, Seconds 13 Timezone: GMT + 13 hours 15 minutes
Following is an example of MT SMS over IMS. If you want to get the detailed description of the specification, refer to 34.229 18.2 Mobile Terminating SMS
NOTE : If you want to see the contents of full log with Amarisoft Log viewer, go to LogAnalysis section and click on 'Sample Log' in this tutorial of Amarisoft TechAcademy.
Request: MESSAGE sip:+11234567890@test.3gpp.com | (RP) RP-DATA (Network to MS) MESSAGE sip:+11234567890@test.3gpp.com SIP/2.0 Via: SIP/2.0/UDP [2001:0:0:1::2]:5060;branch=z9hG4bK-ad54683f54403f46ff8d8b553521e588;rport Via: SIP/2.0/UDP [2001:0:0:1::2]:60393;branch=z9hG4bK0047D4EC Max-Forwards: 69 From: <sip:1111@test.3gpp.com>;tag=0047D4EC To: <sip:+11234567890@test.3gpp.com> Call-ID: 20131016-151152@[2001:0:0:1::2]:60393 CSeq: 1 MESSAGE Request-Disposition: no-fork Accept-Contact: *;+g.3gpp.smsip;require;explicit // This indicate that this SIP message is a SMS message Content-Type: application/vnd.3gpp.sms // This indicates that the SMS is in 3GPP format (not 3GPP2 format) Content-Transfer-Encoding: binary P-Called-Party-ID: <sip:+11234567890@test.3gpp.com> Content-Length: 41 Record-Route: <sip:[2001:0:0:1::2];lr>
Message Body GSM A-I/F RP - RP-DATA (Network to MS) RP-Message Reference RP-Origination Address - (999999) Length: 4 1... .... = Extension: No Extension .000 .... = Type of number: unknown (0x00) .... 0001 = Numbering plan identification: ISDN/Telephony Numbering (Rec ITU-T E.164) (0x01) BCD Digits: 999999 RP-Destination Address RP-User Data
GSM SMS TPDU (GSM 03.40) SMS-DELIVER 0... .... = TP-RP: TP Reply Path parameter is not set in this SMS SUBMIT/DELIVER .0.. .... = TP-UDHI: The TP UD field contains only the short message ..0. .... = TP-SRI: A status report shall not be returned to the SME .... .1.. = TP-MMS: No more messages are waiting for the MS in this SC .... ..00 = TP-MTI: SMS-DELIVER (0) // This is indication of MT-SMS TP-Originating-Address - (1234567890) Length: 10 address digits 1... .... : No extension .000 .... : Type of number: (0) Unknown .... 0001 : Numbering plan: (1) ISDN/telephone (E.164/E.163) TP-OA Digits: 1234567890 TP-PID: 0 00.. .... : defines formatting for subsequent bits ..0. .... : no telematic interworking, but SME-to-SME protocol ...0 0000 : the SM-AL protocol being used between the SME and the MS (0) TP-DCS: 0 00.. .... = Coding Group Bits: General Data Coding indication (0) Special case, GSM 7 bit default alphabet TP-Service-Centre-Time-Stamp Year 13, Month 10, Day 16 Hour 15, Minutes 11, Seconds 29 Timezone: GMT + 5 hours 0 minutes TP-User-Data SMS text: this is a mt sms test message
Request: MESSAGE sip:1111@test.3gpp.com;phone-context=TestIMS.com | (RP) RP-ACK (MS to Network) MESSAGE sip:1111@test.3gpp.com;phone-context=TestIMS.com SIP/2.0 f: "Test" <sip:+11234567890@test.3gpp.com>;tag=834066458 t: <sip:1111@test.3gpp.com;phone-context=TestIMS.com> CSeq: 834066445 MESSAGE i: 834066446_2367161720@2001:0:0:1::1 v: SIP/2.0/UDP [2001:0:0:1::1]:5060;branch=z9hG4bK502862226 Max-Forwards: 70 Route: <sip:[2001:0:0:1::2]:5060;lr> c: application/vnd.3gpp.sms Allow: MESSAGE Request-Disposition: no-fork User-Agent: Test User Agent l: 6
Message Body GSM A-I/F RP - RP-ACK (MS to Network) RP-Message Reference RP-Message Reference: 0x00 (0) RP-User Data Element ID: 0x41 Length: 2 TPDU (not displayed) GSM SMS TPDU (GSM 03.40) SMS-DELIVER REPORT .0.. .... = TP-UDHI: The TP UD field contains only the short message .... .0.. = TP-MMS: More messages are waiting for the MS in this SC .... ..00 = TP-MTI: SMS-DELIVER REPORT (0) TP-Parameter-Indicator 0... .... : No extension .000 0... : Reserved .... .0.. : TP-UDL not present .... ..0. : TP-DCS not present .... ...0 : TP-PID not present
|
|||||||||||||||||||||