A.4 USSI AS sending USSD request, further information required from network

24.3903GPPRelease 17Stage 3TSUnstructured Supplementary Service Data (USSD) using IP Multimedia (IM) Core Network (CN) subsystem IMS

In the example flow at the figure A.4-1, the USSI AS sends a USSD request. The USSD application in the UE requires further information, and the USSI AS sends further information in a USSD request. After the USSD operation is successful, the UE hosting the USSD application sends a USSD response towards the USSI AS.

Figure A.2-1: USSI AS sends USSD request

NOTE: For clarity, the SIP 100 (Trying) responses are not shown in the signalling flow.

1. USSI AS sends INVITE request containing the USSD request — see example in table A.4-1

As a result of some associated procedure between the user and the network, a need is seen to request a password using USSD.

USSI AS sends the INVITE request.

By including the Recv-Info header field, the USSI AS indicates its support for the g.3gpp.ussd info package.

Table A.4-1: INVITE request (USSI AS to S-CSCF)

INVITE sip:user1_public1@home1.net SIP/2.0

Via: SIP/2.0/UDP [5555::aaa:bbb:ccc:ddd]:1357;branch=z9hG4bKnashds7

Max-Forwards: 70

Route: <sip:pcscf1.visited1.net:7531;lr>, <sip:scscf1.home1.net;lr>

Accept-Contact: *;+g.3gpp.icsi-ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"

P-Preferred-Identity: "John Doe" <sip:user1_public1@home1.net>

P-Access-Network-Info: 3GPP-UTRAN-TDD; utran-cell-id-3gpp=234151D0FCE11

Privacy: none

From: <sip:ussias_public1@home1.net>;tag=171828

To: <sip:user1_public1@home1.net>

Call-ID: cb03a0s09a2sdfglkj490333

Cseq: 127 INVITE

Supported: precondition, 100rel

Contact: <ussias_public1@home1.net;

Allow: INVITE, ACK, CANCEL, BYE, PRACK, UPDATE, REFER, MESSAGE, INFO

Accept: application/sdp; application/3gpp-ims+xml; application/vnd.3gpp.ussd+xml

Recv-Info: g.3gpp.ussd

Content-Type: multipart/mixed; boundary=outer

Content-Length: (…)

–outer

Content-Type: application/sdp

v=0

o=- 2987933615 2987933615 IN IP6 5555::aaa:bbb:ccc:ddd

s=-

c=IN IP6 5555::aaa:bbb:ccc:ddd

t=0 0

m=audio 0 RTP/AVP 97 96

a=rtpmap:97 AMR

a=fmtp:97 mode-set=0,2,5,7; maxframes=2

a=rtpmap:96 telephone-event

–outer

Content-Type: application/vnd.3gpp.ussd+xml

<?xml version="1.0" encoding="UTF-8"?>

<ussd-data>

<language>en</language>

<ussd-string>Please verify you want require this service</ussd-string>

<anyExt>

<UnstructuredSS-Request/>

<alertingPattern>0</alertingPattern>

</anyExt>

</ussd-data>

–outer—

Application/vnd.3gpp.ussd+xml MIME body: USSD message. The content of the <ussd-string> element in the INVITE message must be equal to the dialstring inserted in the Request-URI.

2. INVITE request (S-CSCF to P-CSCF)

The S-CSCF forwards the INVITE request based on the Route header field.

3. INVITE request (P-CSCF to UE-1)

The P-CSCF forwards the INVITE request containing the USSD message to the UE.

4. 200 (OK) response (UE-1 to P-CSCF)

The UE sends a 200 (OK) response confirming the receipt of the INVITE request and to establish the dialog. The SIP 200 (OK) response will contain a Recv-Info header field set to g.3gpp.ussd.

5. 200 (OK) response (P-CSCF to S-CSCF)

The P-CSCF forwards the 200 (OK) response along the Via header field.

6. 200 (OK) response (S-CSCF to USSI AS)

The S-CSCF forwards the 200 (OK) response along the Via header field to the USSI AS.

7. ACK request (USSI AS to S-CSCF)

The USSI AS responds to the 200 (OK) response with an ACK request sent to the S-CSCF.

8. ACK request (S-CSCF to P-CSCF)

The S-CSCF forwards the ACK request to the P-CSCF.

9. ACK request (P-CSCF to UE-1)

The P-CSCF forwards the ACK request to the UE.

10. USSD operation

The UE performs the requested USSD operation. Details of USSD processing are outside the scope of this specification.

In this example, the UE requires further information from the USSI AS.

11-13. INFO request (UE-1 to USSI AS) – see example in table A.4-11

Table A.4-11: INFO request (UE-1 to P-CSCF)

INFO sip:ussias_public1@home1.net;gr=hdg7777ad7aflzig8sf7 SIP/2.0

Via: SIP/2.0/UDP ussias.home1.net:6677;branch=z9hG4bKnashds75454

Max-Forwards: 70

Route: <sip:scscf1.home1.net:46545;lr>, <sip:pcscf1.visited1.net:7531;lr>

From: <sip:user1_public1@home1.net>;tag=t45543543

To: <sip:ussias_public1@home1.net>;tag=171828

Call-ID: cb03a0s09a2sdfglkj490333

Cseq: 4665 INFO

Info-Package: g.3gpp.ussd

Content-Length: (…)

Content-Type: application/vnd.3gpp.ussd+xml

Content-Disposition: Info-Package

<?xml version="1.0" encoding="UTF-8"?>

<ussd-data>

<language>en</language>

<ussd-string>

PIN:3663

<anyExt><UnstructuredSS-Request/></anyExt>

</ussd-string>

</ussd-data>

14-16. 200 (OK) response (USSI AS to UE-1)

The USSI AS sends a SIP 200 (OK) response to the AS confirming the SIP INFO request.

17-19. INFO request (USSI AS to UE) – see example in table A.4-17

The USSI AS sends the SIP INFO request containing the further USSD information required.

Table A.4-17: INFO request (USSI AS to S-CSCF)

INFO sip:user1_public1@home1.net SIP/2.0

Via: SIP/2.0/UDP [5555::aaa:bbb:ccc:ddd]:1357;branch=z9hG4bKnashds76565465

Max-Forwards: 70

Route: <sip:pcscf1.visited1.net:7531;lr>, <sip:scscf1.home1.net;lr>, <ussias.home1.net:6677;lr>

From: <sip:ussias_public1@home1.net>;tag=171828

To: <sip:user1_public1@home1.net>;tag=t45543543

Call-ID: cb03a0s09a2sdfglkj490333

Cseq: 128 INFO

Info-Package: g.3gpp.ussd

Content-Length: (…)

Content-Type: application/vnd.3gpp.ussd+xml

Content-Disposition: Info-Package

<?xml version="1.0" encoding="UTF-8"?>

<ussd-data>

<language>en</language>

<ussd-string>

Thankyou

</ussd-string>

<anyExt><UnstructuredSS-Request/></anyExt>

</ussd-data>

20-21. 200 (OK) response (UE-1 to USSI AS)

The UE sends a SIP 200 (OK) response to the USSI AS confirming the SIP INFO request.

23. USSD operation

The UE performs the requested USSD operation. Details of USSD processing are outside the scope of this specification.

In this example, the USSD operation is successful and the UE sends a response indicating success will be sent to the USSI AS.

24-26 INFO request (UE-1 – USSI AS) — see example in table A.4-24

The UE sends a SIP INFO request towards USSI AS containing a USSD response.

Table A.4-24: INFO request (UE-1 to P-CSCF)

INFO sip:ussias_public1@home1.net SIP/2.0

Via SIP/2.0/UDP sip:as1.home1.net;branch=z9hG4bK332b23.1

Max-Forwards: 70

Route: <sip:pcscf1.visited1.net;lr>, <sip:scscf1.home1.net:7531;lr>

From: <sip:ussias_public1@home1.net>;tag=314159

To: <sip:user1_public1@home1.net>;tag=171828

Call-ID: cb03a0s09a2sdfglkj490334

Cseq: 129 INFO

Content-Type: application/vnd.3gpp.ussd+xml

Content-Length:

<?xml version="1.0" encoding="UTF-8"?>

<ussd-data>

<language>en</language>

<ussd-string>

No further business

</ussd-string>

<anyExt><UnstructuredSS-Request/></anyExt>

</ussd-data>

Application/vnd.3gpp.ussd+xml MIME body: USSD message.

27-29. 200 (OK) response (USSI AS to UE-1)

The USSI AS sends a 200 (OK) response to the UE confirming the INFO request.

30. BYE request (USSI AS to S-CSCF)

The USSI AS considers the transaction complete and sends a BYE request.

31. BYE request (S-CSCF to P-CSCF)

The S-CSCF forwards the BYE request to the P-CSCF.

32. BYE request (P-CSCF to UE)

The P-CSCF forwards the BYE request to the UE.

33. 200 (OK) response (UE to P-CSCF)

The UE responds to the BYE request with a 200 (OK) response.

34. 200 (OK) response (P-CSCF to S-CSCF)

The P-CSCF forwards to the 200 (OK) response to the S-CSCF.

35. 200 (OK) response (S-CSCF to USSI AS)

The S-CSCF forwards the 200 (OK) response to the USSI AS.

Annex B (normative):
Media feature tags defined within the current document