CSC4 Flows Tab


The CSC4 Flows tab is used in IP Application Node, MME nodal, PGW Nodal, SGW Nodal and Wifi Offload Gateway Nodal when CSC-4 to Mission Critical CMS Interface is enabled. The configuration management interface is called CSC-4 and shown in the following diagram from TS 23.280. It is between the Configuration Management Client (CMC) residing in MCPTT UE, and the Configuration Management Server (CMS) within Common Service Core (CSC). It is used to configure MCPTT service, as well as MCData, and MCVideo services with focus on configuration management in MCPTT services based on On-network model, which includes UE configuration, user profile configuration, service configuration, and group configuration.

CSC-4 reference makes use of not only http-1 reference point for non-subscription/notification procedures, but also sip-1 interface for subscription/notification. The following diagram shows all these reference points.

Configuration procedures are used throughout the MCPTT service lifetime, as explained in the diagram from 3GPP TS 23.280 Figure 10.1.1-1.

First, after bootstrapping, there is an initial configuration happening on MCPTT UE, such as MCPTT client id, MCPTT APN, MCPTT server information, etc. In Landslide emulation, most of the configurations during this procedure are provisioned via the GUI configuration. Then, after MCPTT UE is successfully authenticated by the common service core, several configuration procedures are executed between the CMC module in the MCPTT UE and the CMS over the CSC-4 interface. The procedures include UE configuration, user profile configuration, and service configuration. UE may also subscribe to CMS for any change in the configuration documents. Then CMS can notify the changes to the UE at any time during the MC service period.

Landslide does not support configuration subscription/notification procedures at this time. A script has been provided for HTTP flow that is running parallel with the MCPTT SIP call flows for the UE to create/retrieve/update/delete the configurations any time as required. 

All the configurations over CSC-4 interface are performed based on XML Configuration Access Protocol (XCAP). This means all configuration data is saved on the server in the form of XML files. The relationship between each configuration scope, XML file schema, and corresponding spec number are explained in this following table.

Config Scope

XML Schema

Spec Number

MCPTT UE Configuration

3GPP TS 24.484 subclause 8.2.2

3GPP TS 24.484 subclause 8.2

MCPTT User Profile Configuration

3GPP TS 24.484 subclause 8.3.2

3GPP TS 24.484 subclause 8.3

MCPTT Service Configuration

3GPP TS 24.484 subclause 8.4.2

3GPP TS 24.484 subclause 8.4

Configuration management client is part of MCPTT UE. However, configuration management server is part of CSC and a logic function outside of MCPTT server.

XCAP

XCAP “allows a client to read, write, and modify application configuration data stored in XML format on a server. XCAP maps XML document sub-trees and element attributes to HTTP URIs, so that these components can be directly accessed by HTTP.” – RFC 4825

Document URI is used to identify specific element in the specific configuration document. The URI includes an XCAP root directory, AUID of the application, document selector, and node selector. Document selector and node selector are separated by “~~”.

For example, in the following URI:

http://xcap.example.com/test/users/sip:[email protected]/index/

~~/foo/a:bar/b:baz?xmlns(a=urn:test:namespace1-uri)

xmlns(b=urn:test:namespace1-uri)

 

“xcap.example.com” is the XCAP root, “test” is the AUID, “/users/sip:[email protected]/index/” is the document selector, and “/foo/a:bar/b:baz?xmlns(a=urn:test:namespace1-uri) xmlns(b=urn:test:namespace1-uri)” is the node selector.

List of applicable documents referenced by this topic: 

Document Number

Title

3GPP TS 23.280 release 14

Common functional architecture to support mission critical services

3GPP TS 22.179 release 14

Mission Critical Push To Talk (MCPTT); Stage 1

3GPP TS 23.179 release 14

Mission Critical Push To Talk (MCPTT); Stage 2

3GPP TS 24.379 release 14

Mission Critical Push To Talk (MCPTT) call control; Protocol specification

3GPP TS 24.380 release 14

Mission Critical Push To Talk (MCPTT) media plane control; Protocol specification

3GPP TS 33.180 release 14

Security of the mission critical service

3GPP TS 24.334 release 14

Proximity-services (ProSe) User Equipment (UE) to ProSe function protocol aspects

3GPP TS 24.299 release 14

Session Initiation Protocol (SIP) and Session Description Protocol (SDP)

3GPP TS 33.179 release 13

Security of Mission Critical Push To Talk (MCPTT) over LTE

3GPP TS 24.483 release 14

Mission Critical Services (MCS) Management Object (MO)

3GPP TS 24.484 release 14

Mission Critical Services (MCS) configuration management; Protocol specification

3GPP TS 24.481 release 14

Mission Critical Services (MCS) group management; Protocol specification

RFC 4825

The Extensible Markup Language (XML) Configuration Access Protocol (XCAP)

OMA OMA-TS-XDM_Core-V2_1-20120403-A

XML Document Management (XDM) Specification

RFC 2612

Hypertext Transfer Protocol -- HTTP/1.1

OMA-TS-XDM_Group-V1_1_1

Group XDM Specification

OMA-SUP-XSD_poc_listService-V1_0

XML Schema Definition: PoC – List Service

RFC 5875

An Extensible Markup Language (XML) Configuration Access Protocol (XCAP) Diff Event Package

 


HTTP Messages

HTTP Flow:

HTTP Messages

 

 

 

HTTP SCRIPT:

HTTP Supplementary Script  - Create HTTP tests using Scripts and Actions

HTTP Message Editor (Right pane)

  • HTTP Flow Editor (Left Pane)

  • HTTP Message Editor (Right Pane)

  • Actions (Right Pane) - select from a list of  actions

  • Built-ins (right pane) - Select from a list of pre-built scripts

 

 


CSC4 HTTP Messages

The HTTP tab | HTTP Messages pane displays two columns/panes. The left pane displays HTTP message flows line diagram and the right column/pane displays the relevant message header and message body content. When you click on a message (of a flow) in the left pane, the message is highlighted and on the right column/pane, displays the HTTP message headers and Body (HTTP message body, where applicable) for the highlighted message.

A default configuration is displayed as a template and allows you to modify HTTP headers and body (XML Body), where applicable. (A template is displayed for every HTTP message available to be modified).

Open a HTTP Flow Template

Click to open the HTTP Flow Template window and select a HTTP Flow from the available libraries.   

NOTE: The Save Template Dialog automatically uses the last opened/saved template name and you may edit it as required.

Save as Data Profile Template

Click to save the elected HTTP Flow as a template.

NOTE: Copy of Data Profile and HTTP Flow Templates prevent copy/move of system owned dependent items, e.g. {Basic}, {Scenario…} library items.

Pop-up HTTP Flow

Click to open the HTTP Flow in a larger re-sizable window.

HTTP Flow Line Diagram

Click on any HTTP Flow Message (left column) to enable HTTP Message editor (right column):

NOTE: If a HTTP message is not available for editing, the right column remains blank. (Headers and Body tab remain blank).

 


CSC HTTP Call Flow (Left Pane)

The HTTP Call Flow (Left Pane) shows a flow of messages expected for a current test configuration.  When you select a message in the flow control area, default HTTP templates are shown in the editing windows (Right Pane).

The line diagram illustrates standard representation of the selected message. Each message (represented by a horizontal line) includes a text string (Field) or a combination of a text string and predefined parameter type (Filler; shown in blue on the right pane).

Use Default

Selected by default. When selected, default content of HTTP headers and HTTP body are used in the test case.

When not selected, the template will be used to replace the default message content.

HTTP Flow Line Diagram

Click on any HTTP Flow Message (left column) to enable HTTP Message editor (right column)

NOTE: If a HTTP message is not available for editing, the right column remains blank. (Headers and Body tab remain blank).

 


HTTP Messages Editor (Right Pane)

Use Default

When selected, for all messages in the test case, Use Default is disabled for individual message (on the Right Pane).

When not selected, individual message editor will be enabled for configuration.

Reset, Field+ (list), and Filler+ (list)

Available when Use Default is not selected. The Reset, Field+ , and Filler+ buttons help you with the editing process. You may replace the original Fields and Fillers in the message Header/Body by any text.

See list of Message Header/Body.

Reset

Click to reset the modified content back to the default configuration

Field+

Click to display a list of text string. Select a text string to insert within your SIP message.  You may also right-click at the insertion point, select the Insert HTTP Field option from the context menu.

Options: Authorization, Content-Length, Content-Type, Host, MME-Version, User-Agent, X-3GPP-Intended-Identity

Filler+

Click to display a list of parameters/variables. Select a parameter to insert within your HTTP message, which is shown in blue.  You may also right-click at the insertion point and select the Insert Auto-Fill option from the context menu.

  • See Fillers:

Filler Name

Value

xcap-root-uri

CMS Root URI from GUI

auid

UE/User profile/Service Config AUID, depending on the script message type

Content-Type

IANA registered MIME type depending on the script message type

Content-Length

Calculated for the content on the XML Body sub-tab

domain

CMS Realm configured from GUI

sip-uri

{Public username from GUI}@{CMS realm from GUI}

access-token

Access Token received from IdMS

 

  • "XML Body” is present exclusively for the XML data that will be carried in a message. This will be applicable only for PUT Message operations which will be part of actions that have “Update Service Info”. For “Custom Service” Action for “Updating Service Info”, the XML Body tab will be enabled for editing but will be blank.

XML Body:

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

<MCPTT-Group-ID>my_group_id</MCPTT-Group-ID>

CRLF/CR/LF

Click to insert carriage return (CR) or line feed (LF) characters or both (CRLF) at the selected byte/offset or right-click at the insertion point and select the New Line Mode option from the context menu.

Right-Click context menu

You may also right-click at the insertion point and select the required option from the context menu: Insert Field, Insert Auto-Fill, or New Line Mode (CRLF, CR, LF).

 

Editing HTTP Message

  • Clear Use Default selected (both in the Left and the Right panes).
  • Select the required flow (represented by a line in the left pane), a pre configured template displays (where applicable) on the right pane.
  • Click the Header/Body tab to edit, insert, modify, delete information by using the Field + (list) or the Filler + (list) as required.

Example of what happens when editing

  • Text string (field) that is not followed by a parameter (filler):

User-Agent: XDM-Client/OMA2.1{CR}{LF}

Text string User-Agent: XDM-Client/OMA2.1 will always be included in the final message.

• Text string followed by a variable/parameter/filler:

  • Content-Type: <{Content-type}>{CR}{LF}

  • If {Content-type} exists in the original message then the final message will include string.

Content-type: <sip:[email protected];transport=udp>

  • If {Content-type} does not exist in the original message then the whole string will not be in the final message.

Conditional Parameters (used when parameters used in your template do not exist in the original message)

Since a configurable HTTP message is generated from an existing message, some parameters used in your template may not exist in the original message. You may use “…-if” parameter to take care of such cases.

-if

Parameters with -if at the end are applied to the text string that starts from the previous parameter (Filler). Parameter with –if be inserted to indicate that this text string should be skipped if it does not exist in the message.

Examples:

Content-Length:{content-length-if}{CR}{LF}

Text string Content-Length  will be included in the final message only if it exists in the original message.

Content-Length:{CR}{LF}

Attribute Content-Length will be always included into the final message regardless of whether it exists in the original message.

Example HTTP Header and Template

Retrieve UE Configuration

 

GET {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common/MCPTT-Group-Call/MCPTT-Group-ID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

{CR}{LF}

Example XML Body

Update UE Configuration

 

PUT {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common/MCPTT-Group-Call/MCPTT-Group-ID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

Content-Type: {Content-Type}{CR}{LF}

Content-Length: {Content-Length}{CR}{LF}{CR}{LF}

 

XML Body:

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

< MCPTT-Group-ID>my_group_id</MCPTT-Group-ID>

HTTP Supplementary Script

The HTTP Supplementary option provides users with a way for creating HTTP tests using scripts and actions.

The main advantage of using scripts and actions;  is to allow users creating different HTTP message flows tailored to their particular test environments.

A script (a sample is shown below) consists of one of more actions.

An action performs a particular small common task in HTTP tests such as Retrieve UE Configuration, Update User Profile Configuration, Delete Service Configuration, etc.  Actions are fixed and predefined by Landslide software; they cannot be created by users.  

      

Message

Example of MCPTT Basic Configuration Retrieve/Update/Delete Script. It's made up of six Actions:

Update UE Configuration, Retrieve UE Configuration, Update User Profile Configuration, Retrieve User Profile Configuration,

Update Service Configuration, Retrieve Service Configuration

 

CSC-4 Actions

See Complete list of Actions - CSC4 Built-in Actions

CSC-4 Built-ins

See Complete list of Built-in Scripts - CSC4 Built-in Scripts

^ Back to Top


XCAP HTTP 1.1 Methods  

XCAP HTTP 1.1 Methods:

GET METHOD

HTTP GET method can be used to fetch the xml data for a particular supplementary service. GET method can be challenged by the XCAP server.

PUT METHOD

HTTP PUT method can be used to update the xml data for a particular supplementary service. PUT method can be challenged by the XCAP server.

DELETE METHOD

HTTP DELETE method can be used to remove the xml data for a particular supplementary service or the entire document. DELETE method can be challenged by the XCAP server.

 

CSC4 Actions

No

Action name

Description

1

Retrieve UE Configuration

Retrieve UE Configuration Successfully

2

Retrieve UE Configuration (Fail)

Retrieve UE Configuration Failed

3

Update UE Configuration

Update UE Configuration Successfully

4

Update UE Configuration (Fail)

Update UE Configuration Failed

5

Delete UE Configuration

Delete UE Configuration Successfully

6

Delete UE Configuration (Fail)

Delete UE Configuration Failed

7

Retrieve User Profile Configuration

Retrieve User Profile Configuration Successfully

8

Retrieve User Profile Configuration (Fail)

Retrieve User Profile Configuration Failed

9

Update User Profile Configuration

Update User Profile Configuration Successfully

10

Update User Profile Configuration (Fail)

Update User Profile Configuration Failed

11

Delete User Profile Configuration

Delete User Profile Configuration Successfully

12

Delete User Profile Configuration (Fail)

Delete User Profile Configuration Failed

13

Retrieve Service Configuration

Retrieve Service Configuration Successfully

14

Retrieve Service Configuration (Fail)

Retrieve Service Configuration Failed

15

Update Service Configuration

Update Service Configuration Successfully

16

Update Service Configuration (Fail)

Update Service Configuration Failed

17

Delete Service Configuration

Delete Service Configuration Successfully

18

Delete Service Configuration (Fail)

Delete Service Configuration Failed

19

Custom Mission Critical Configuration

Custom Mission Critical Configuration Successfully

20

Custom Mission Critical Configuration

Custom Mission Critical Configuration Failed

21

Wait for Time

Halt a script for a specified time

CSC4 Built-ins Script

MCPTT Basic Configuration Retrieve/Update/Delete

Example of MCPTT Basic Configuration Retrieve/Update/Delete Script. It's made up of six Actions:

Update UE Configuration, Retrieve UE Configuration, Update User Profile Configuration, Retrieve User Profile Configuration,

Update Service Configuration, Retrieve Service Configuration

 

HTTP Message Header/Body

Retrieve UE Configuration

GET {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common/MCPTT-Group-Call/MCPTT-Group-ID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

{CR}{LF}

Update UE Configuration

PUT {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common/MCPTT-Group-Call/MCPTT-Group-ID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

Content-Type: {Content-Type}{CR}{LF}

Content-Length: {Content-Length}{CR}{LF}{CR}{LF}

 

XML Body:

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

< MCPTT-Group-ID>my_group_id</MCPTT-Group-ID>

Delete UE Configuration

DELETE {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common/MCPTT-Group-Call/MCPTT-Group-ID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

{CR}{LF}

Retrieve User Profile Configuration

GET {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common%5bindex=%221%22/MCPTTUserID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

{CR}{LF}

Update User Profile Configuration

 

PUT {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common%5bindex=%221%22/MCPTTUserID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

Content-Type: {Content-Type}{CR}{LF}

Content-Length: {Content-Length}{CR}{LF}{CR}{LF}

 

XML Body:

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

<MCPTTUserID><entry>mcptt_user_id</entry></MCPTTUserID>

Delete User Profile Configuration

DELETE {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/common%5bindex=%221%22/MCPTTUserID HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

{CR}{LF}

Retrieve Service Configuration

GET {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/on-network/group-time-limit HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

{CR}{LF}

Update Service Configuration

PUT {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/on-network/group-time-limit HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

Content-Type: {Content-Type}{CR}{LF}

Content-Length: {Content-Length}{CR}{LF}{CR}{LF}

 

XML Body:

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

  <group-time-limit>6000</group-time-limit>

Delete Service Configuration

DELETE {xcap-root-uri}/{auid}/users/{sip-uri}/index/~~/on-network/group-time-limit HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

Custom Mission Critical Configuration

GET {xcap-root-uri}/custom-auid/users/{sip-uri}/index/~~/nodeselector HTTP/1.1{CR}{LF}

Host: {host-ip}{CR}{LF}

User-Agent: XDM-client/OMA2.1{CR}{LF}

X-3GPP-Asserted-Identity: {sip-uri}{CR}{LF}

access_token: {access-token}{CR}{LF}

Content-Type: {Content-Type}{CR}{LF}

Content-Length: {Content-Length}{CR}{LF}{CR}{LF}

 

XML Body:

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

</mcptt-custom>

 

^ Back to Top