DATA STREAMER GUIDE IOT EASY CONNECT - T-MOBILE ONDERNEMEN Netherlands

Page created by Joel Salazar
 
CONTINUE READING
DATA STREAMER GUIDE IOT EASY CONNECT - T-MOBILE ONDERNEMEN Netherlands
DATA
STREAMER GUIDE
IOT EASY CONNECT
T-MOBILE ONDERNEMEN
Netherlands

Version: 1.0
DATA STREAMER GUIDE IOT EASY CONNECT - T-MOBILE ONDERNEMEN Netherlands
VORIGE   INHOUD   VOLGENDE

TABLE OF CONTENTS
Introduction								3

1. Configurating data streams in Customer Portal              4
  1.1 Overview page								4
  1.2 Configuration in Customer Portal 5

2. Available event data                                       6
  2.1   Event properties							6
  2.2   Properties of details object 7
  2.3   Properties of PDP Context    7
  2.4   Properties of IMSI Object    8
  2.5   Properties of SIM Object     8

3. Available usage data                                       8

4. JSon Samples                                               9
  4.1 Event Data json sample                                 9
  4.2 Usage Data json sample                                10

5. Supported Cloud Services                                 11
  5.1 AWS Kinesis                                            11
  5.2 AWS S3                                                 11
  5.3 DataDog                                                11

                                                   DATA STREAMER GUIDE   IOT EASY CONNECT                          2
DATA STREAMER GUIDE IOT EASY CONNECT - T-MOBILE ONDERNEMEN Netherlands
VORIGE   INHOUD   VOLGENDE

INTRODUCTION
The data streamer interface of the IoT Easy Connect portal offers the possibility to become
directly informed about IoT Easy Connect SIM-card events or IoT Easy Connect Portal events.

Usage data and event data, such as API Activities, are available. Event subscription is managed
in the configuration panel, where the different streams can be set up separately or combined
(Usage Data, Events and Usage Data & Events).

Figure 1: Transfer of event- and usage data to customers’ systems

The used data format complies with the JSON standard requirements, thus making the
processing data in your own databases or reporting systems easier to implement.

The interface supports REST-API and cloud service such as AWS Kinesis, AWS S3 and DataDog.

                                                                                DATA STREAMER GUIDE   IOT EASY CONNECT                          3
DATA STREAMER GUIDE IOT EASY CONNECT - T-MOBILE ONDERNEMEN Netherlands
VORIGE   INHOUD    VOLGENDE

1. CONFIGURATING DATA STREAMS
IN CUSTOMER PORTAL
To manage your data streams, move your mouse over “Settings” in the main navigation and               B) Table with configured data streams
select the sub menu “Data Streamer”. You will get to the data streamer overview menu.                 The activated and configured streams are shown in tabular form, and the performance can
                                                                                                      be monitored.
Here you can configure a new stream and change the configuration of an existing data stream.
                                                                                                      Here you get further information about the data streams. These are listed as follows:

                                                                                                      API:
                                                                                                      Describes the API-method used for transferring data to the customer’s environment.

                                                                                                      Type:
                                                                                                      Type of data being transferred in the stream (usage data, events and usage data & events)

                                                                                                      URL:
Figure 2: Access to data stream configuration via the main navigation
                                                                                                      Shows the URL destination for Rest-API and Rest-API (bulk). The data stream acts as an HTTP
                                                                                                      Client and needs an HTTP Server to handle each message.
1.1 Overview page
You can create new data streams or manage already configured data streams through the data            Last data of connection:
stream over-view section.                                                                             The time stamp shows when data was last transferred, resp. when the last connection was
                                                                                                      successfully es-tablished.
STRUCTURE OF THE OVERVIEW PAGE
                                                                                                      Remote status:
                                                                                                      Remote status of the data stream; indicates whether the data stream is operating normally.
                                                                                                      The “active” http status code indicates that the stream is operating normally. On the other
                                                                                                      hand, the “deactivated” status code indicates that the configuration is invalid, or that the
                                                                                                      receiving end is not reachable.

                                                                                                      C) Delete, deactivate or activate data stream
                                                                                                      If you want to delete a data stream, please click the “Delete” button. This will open a
                                                                                                      confirmation dialog, where you will be asked if you really want to delete this data stream.
Figure 3: Access to data stream configuration via the main navigation                                 To delete the data stream, please click on “Delete” in the confirmation dialog.
A) Create new data stream
                                                                                                      The dialog window will be closed, and the data stream will be removed from the table.
Click the “New Data Stream” button if you want to create a new data stream. You will be
taken to another page where you can create a new data stream (see section configuration in
customer portal).

                                                                              DATA STREAMER GUIDE   IOT EASY CONNECT                                                                                     4
VORIGE   INHOUD   VOLGENDE

                                                                                                           Figure 5:  Configuration page for a data stream
Figure 4:  Confirmation window for deleting data stream

Should you decide to not delete the data stream, then click “Cancel” in the confirmation dialog.           Three stream types are available: Usage data, Event data or Usage & Event data combined.
The dialog window will be closed, without the stream being deleted.                                        Take note that if the transfer of historic data is chosen up to 7 days of historic data will be send,
                                                                                                           before live data is transferred.
If you want to pause the data stream, please click the “Deactivate” button. This action initiates
the deactiva-tion of the activated stream.                                                                 The interface supports REST-API and cloud service such as AWS Kinesis or DataDog.

If you want to resume the data stream, please click the “Activate” button. This action initiates           To set-up a data stream for a Rest-API or Rest-API in Bulk mode, the specification of an API
the activation of the paused stream.                                                                       Callback is re-quired. The data stream acts as an HTTP Client and needs an HTTP Server on
                                                                                                           your side to answer each message. Every sent message includes one or more objects.
1.2 Configuration in Customer Portal
On the data stream configuration page all configuration options are available. You can specify             After you have specified the configuration, please click “Store” to activate the stream.
the stream type as well as the API type, choose to transfer historic data.                                 If successful, the over-view page is automatically displayed, and the stream is activated.
                                                                                                           Here, you are shown the status of the con-nection resp. remote status.

                                                                                   DATA STREAMER GUIDE   IOT EASY CONNECT                                                                                      5
VORIGE   INHOUD   VOLGENDE

2. AVAILABLE EVENT DATA
Event data displays the current states of your SIMs and changes to the SIM card, like the                2.1 Event properties
creation of a new PDP-context or issue. This gives you the option to set-up a monitoring for             The following properties are included in all events sent:
certain events or an alarming, if needed.
                                                                                                          #           Property         Data Type        Description

This chapter provides an overview all possible event types and properties.                                1           Id               Numeric          Unique identifier of this event, if multiple events with
                                                                                                                                                        same id are received (e.g. due to transmission errors)
                                                                                                                                                        these should be treat-ed by the receiver as duplicates
OVERVIEW OF EVENT TYPES
                                                                                                          2           timestamp        Timestamp        Date⁄time when this event happened
For every event, which is being send by the Portal, an event ID and description provided:
                                                                                                          3           event_type       Nested Object Type of the event, see below for details
 ID          Description
                                                                                                          4           event_severity   Nested Object Severity of the event, see below for details
 0           Generic
                                                                                                          5           event_source     Nested Object Source of the event, see below for details
 1           Update location
                                                                                                          6           organisation     Nested Object Customer account associated with this event, see
 2           Update GPRS location                                                                                                                    below for details
 3           Create PDP Context                                                                           7           alert            Boolean          Event is a candidate to be alerted to a user
 4           Update PDP Context                                                                           8           description      String           Human readable description of the event
 5           Delete PDP Context
 6           User authentication failed                                                                  You can see additional properties for event types related to SIM cards or users:
 7           Application authentication failed                                                            #           Property         Data Type        Description
 8           SIM activation                                                                               1           imsi             Nested Object Details of IMSI, see below for details (in a multi-IMSI)
 9           SIM suspension                                                                               2           sim              Nested Object Details of SIM, see below for details (in case of
                                                                                                                                                     multi-IMSI config-uration multiple different IMSIs
 10          SIM deletion                                                                                                                            may be reported for the same SIM)
 11          Endpoint blocked                                                                             3           endpoint         Nested Object Details of Endpoint, see below for details
 12          Organisation blocked
 13          Support Access
 14          Multi-factor Authentication
 15          SMS API Callback

                                                                                 DATA STREAMER GUIDE   IOT EASY CONNECT                                                                                            6
VORIGE   INHOUD   VOLGENDE

2.2 Properties of details object                                                                       2.3 Properties of PDP Context
#         Property        Data Type      Description                                                    #           Property         Data Type      Description
1         id              Numeric        Unique identifier of the actual used mobile network            1           pdp_context_id   String         Unique identifier of this PDP context
                                         operator
                                                                                                        2           tunnel_created   Nested Object Date⁄time when this PDP context was created
2         name            String         Name of the mobile network operator
                                                                                                        3           gtp_version      String         GTP Version, 1 or 2
3         country         Nested Object Country of mobile network operator
                                                                                                        4           ggsn_control_    String         IP Address of GGSN⁄PGW Control Plane
4         country.id      Numeric        Unique identifier of the country                                           plane_ip_address
5         country.name    String         Name of country                                                5           ggsn_data_       String         IP Address of GGSN⁄PGW Data Plane
                                                                                                                    plane_ip_address
6         country.coun-   String         Country code
          try_code                                                                                      6           sgsn_control_    String         IP Address of SGSN⁄SGW Control Plane
                                                                                                                    plane_ip_address
7         country.mcc     String         Mobile Country Code (MCC)
                                                                                                        7           sgsn_data_       String         IP Address of SGSN⁄SGW Data Plane
8         country.        String         ISO code                                                                   plane_ip_address
          iso_code
                                                                                                        8           region           String         Region where Data Plane is located
9         pdp_context     Nested Object PDP Context Details
                                                                                                        9           breakout_ip      String         IP Address used for Internet Breakout
10        volume          Nested Object Volume consumed in PDP Context
                                                                                                        10          apn              String         Access Point Name (APN)
11        volume.rx       Number         Downstream Volume in MB
                          with up to                                                                    11          nsapi            Integer        Network Service Access Point Identifier (NSAPI)
                          6 decimal                                                                     12          ue_ip_address    String         IP address assigned to Endpoint
                          places
                                                                                                        13          imeisv           String         IMEISV
12        volume.tx       Number         Upstream Volume in MB.
                          with up to                                                                    14          mcc              String         Mobile Country Code (MCC)
                          6 decimal
                          places                                                                        15          mnc              String         Mobile Network Code (MNC)
13        volume.total    Number         Total volume                                                   16          lac              Integer        Location Area Code (LAC)
                          with up to                                                                    17          sac              Integer        Service Area code (SAC)
                          6 decimal
                          places                                                                        18          rac              Integer        Routing Area code (RAC)
                                                                                                        19          ci               Integer        Cell Identification (CI)
                                                                                                        20          rat_type         Integer        Radio Access Type (RAT) (1=3G, 2=2G,
                                                                                                                                                    3=WLAN, 4=GAN, 5=HSPA+, 6=4G)

                                                                               DATA STREAMER GUIDE   IOT EASY CONNECT                                                                                 7
VORIGE    INHOUD   VOLGENDE

                                                                                                3. AVAILABLE USAGE DATA
2.4 Properties of IMSI Object                                                                    Often the use of a SIM is tied to a specific location, a region and⁄or to the usage in a specific
                                                                                                 device. If SIM utilization deviates from intended usage, this could be an indication about an
#        Property      Data Type   Description
                                                                                                 unusual operating situation or even about the attempt at fraudulent use or misuse. Usage data
1        id            Numeric     Unique identifier of this IMSI                                allows you to monitor all SIM cards.
2        imsi          String      International mobile subscriber identity (IMSI)                #           Property             Data Type       Description
3        import_date   Timestamp   Date⁄Time this IMSI was provisioned                            1           imsi                 15 digits nu-   Currently used IMSI
                                                                                                                                   meric string
2.5 Properties of SIM Object                                                                      2           endpoint.id          Numeric         Unique identifier of endpoint
#        Property      Data Type   Description                                                    3           sim.id               Numeric         Unique identifier of SIM
1        id            Numeric     Unique identifier of this SIM                                  4           sim.iccid            19 digits nu-   ICCID of SIM
2        iccid         String      Integrated Circuit Card identifier (ICCID) without                                              mer-ic string
                                   checksum digit                                                 5           organisation.id      Numeric         Unique identifier of customer account
3        msisdn        String      MSISDN                                                         6           organisation.        String          Name of customer account
4        production_   Timestamp   Date⁄Time this SIM chip was produced                                       name
         date                                                                                     7           operator.id          Numeric         Unique identifier of visited operator
                                                                                                  8           operator.name        String          Name of that mobile operator
                                                                                                  9           operator.country.    Numeric         Unique identifier of visited country
                                                                                                              id
                                                                                                  10          opera-tor.country.   String          Name of visited country
                                                                                                              name
                                                                                                  11          tariff.id            Numeric         Unique identifier of applied tariff
                                                                                                  12          tariff.name          String          Name of Tariff
                                                                                                  13          tariff.ratezone.id   Numeric         Unique identifier of applied rate zone
                                                                                                  14          tariff.ratezone.     String          Name of Rate zone
                                                                                                              name
                                                                                                  15          tariff_type.id       Numeric         Unique identifier of traffic type
                                                                                                  16          tariff_type.name     String          Name of traffic type

                                                                         DATA STREAMER GUIDE   IOT EASY CONNECT                                                                                        8
VORIGE   INHOUD   VOLGENDE

4. JSON SAMPLES
4.1 Event Data json sample                                                                                          4.1.2 Delete PDP Context Event Sample
4.1.1 Update Location event sample                                                                                     {
                                                                                                                         “id”: 2013707XX,
                                                                                                                         “alert”: false,
  {                                                                                                                      “description”: “PDP Context deleted.”,
             “id”: 2013707XX,                                                                                            “timestamp”: “2019-07-12T17:04:59.000+0000”,
             “alert”: false,                                                                                             “event_type”: {
             “description”: “New location received from VLR for IMSI=’901405300000170XXXX’, now attached to            		“id”: 5,
  VLR=’ 491700160000’.”,                                                                                               		          “description”: “Delete PDP Context”
             “timestamp”: “2019-07-17T16:28:00.000+0000”,                                                                },
             “event_type”: {                                                                                             “event_source”: {
  		“id”: 1,                                                                                                           		“id”: 0,
  		                    “description”: “Update location”                                                               		“description”: “Network”
             },                                                                                                          },
             “event_source”: {                                                                                           “event_severity”: {
  		“id”: 0,                                                                                                           		“id”: 0,
  		“description”: “Network”                                                                                           		“description”: “Info”
             },                                                                                                          },
             “event_severity”: {                                                                                         “organisation”: {
  		“id”: 0,                                                                                                           		“id”: 80025,
  		“description”: “Info”                                                                                              		          “name”: “ WBV Tester “
             },                                                                                                          },
             “organisation”: {                                                                                           “endpoint”: {
  		“id”: 80025,                                                                                                       		“id”: 8427408,
  		                    “name”: “WBV Tester”                                                                           		          “name”: “GPS Tracker”,
             },                                                                                                        		“ip_address”: “100.122.44.249”,
             “endpoint”: {                                                                                             		“tags”: null,
  		“id”: 8638726,                                                                                                     		“imei”: “86278903989916XXX”
  		                    “name”: “GPS Tracker”,                                                                           },
  		“ip_address”: “100.122.44.249”,                                                                                      “imsi”: {
  		“tags”: null,                                                                                                      		“id”: 372566,
  		“imei”: “86278903989XXXX”                                                                                          		          “imsi”: “901405300000170XXXX “,
             },                                                                                                        		“import_date”: “2019-06-10T14:12:01.000+0000”
             “imsi”: {                                                                                                   },
  		“id”: 205672,                                                                                                        “sim”: {
  		“imsi”: “901405300000170XXXX”,                                                                                     		“id”: 319318,
  		“import_date”: “”2019-06-10T14:12:01.000+0000”                                                                     		“iccid”: “8898822806670000XXXX”,
             },                                                                                                        		“production_date”: “2019-06-17T11:11:11.000+0000”
             “sim”: {                                                                                                    },
  		“id”: 274887,                                                                                                        “detail”: {
  		“iccid”: “898822806670000XXXX”,                                                                                    		“id”: 48,
  		“production_date”: “2019-06-17T11:11:11.000+0000”                                                                  		          “name”: “SFR Cegetel”,
             },                                                                                                        		“volume”: {
             “detail”: {                                                                                               			“rx”: 0.012671,
  		“id”: 3,                                                                                                           			“tx”: 0.01148,
  		“name”: “T-Mobile”,                                                                                                			“total”: 0.024151
  		“country”: {                                                                                                       		},
  			“id”: 74,                                                                                                         		“pdp_context”: {
  			“name”: “Germany”,                                                                                                			“mcc”: “310”,
  			“country_code”: “49”,                                                                                             			“tunnel_created”: “2019-12-11T05:49:29”,
  			“mcc”: “262”,                                                                                                     			“ggsn_control_plane_ip_address”: “185.57.216.XX”,
  			“iso_code”: “de”                                                                                                  			“pdp_context_id”: “162094787”,
  		},                                                                                                                 			“imeisv”: “898830300123456XXXX”,
  		“tapcode”: [{                                                                                                      			“region”: “eu-west-1”,
  			“id”: 2,                                                                                                          			“lac”: 40484,
  			“tapcode”: “DEUD2”                                                                                                			“sac”: 61142,
  		}],                                                                                                                			“rat_type”: 1,
  		“mnc”: [{                                                                                                          			“gtp_version”: “1”,
  			“id”: 3,                                                                                                          			“ue_ip_address”: “100.105.197.XX”,
  			“mnc”: “02”                                                                                                       			“mnc”: “260”,
  		}]                                                                                                                 			“sgsn_data_plane_ip_address”: “216.155.166.XXX”,
             }                                                                                                         			“ci”: null,
  }                                                                                                                    			“apn”: null,

                                                                                            DATA STREAMER GUIDE   IOT EASY CONNECT                                                               9
VORIGE   INHOUD   VOLGENDE

  			“tx_teid_control_plane”: 2667756875,                                                                      4.2 Event Data json sample
  			“rx_teid”: 2720724,
  			“rac”: null,
  			“imsi”: “901405300000170XXXX “,                                                                              {
  			“sgsn_control_plane_ip_address”: “216.155.165.XXX”,                                                              “cost”: 0.00558275,
  			“nsapi”: 6,                                                                                                      “id”: 174321498,
  			“breakout_ip”: null,                                                                                             “operator”: {
  			“ggsn_data_plane_ip_address”: “185.57.216.XX”,                                                                 		           “id”: 4,
  			“tx_teid_data_plane”: 3095978                                                                                		“name”: “T-Mobile”,
  		},                                                                                                            		“country”: {
  		“country”: {                                                                                                  			“id”: 74,
  			“id”: 68,                                                                                                    			“name”: “Germany”
  			“name”: “France”,                                                                                            		}
  			“country_code”: “33”,                                                                                            },
  			“mcc”: “208”,                                                                                                    “organisation”: {
  			“iso_code”: “fr”                                                                                             		“id”: 80025,
  		}                                                                                                             		             “name”: “WBV Tester”
    }                                                                                                                 },
  }                                                                                                                   “tariff”: {
                                                                                                                  		“ratezone”: {
                                                                                                                  			“id”: 83,
                                                                                                                  			“name”: “Europe_I”
                                                                                                                  		},
4.1.3 User authentication failed Event Sample                                                                     		“id”: 64,
                                                                                                                  		             “name”: “Global Pro I”
                                                                                                                      },
  {                                                                                                                   “traffic_type”: {
            “id”: 201388127,                                                                                      		“id”: 5,
            “alert”: false,                                                                                       		“name”: “Data”
            “description”: “Failed authentication request from ‘user@beispiel.com’, Reason: Invalid                   },
  password from IP 9.9.9.9”,                                                                                          “endpoint”: {
            “timestamp”: “2019-05-10T05:42:00.000+0000”,                                                          		“id”: 8392037
            “event_type”: {                                                                                           },
  		“id”: 6,                                                                                                          “imsi”: “901405300000170XXXX “,
  		                  “description”: “User authentication failed”                                                     “volume”: {
            },                                                                                                    		“rx”: 0.0138,
            “event_source”: {                                                                                     		“tx”: 0.008531,
  		“id”: 2,                                                                                                      		“total”: 0.022331
  		“description”: “API”                                                                                              },
            },                                                                                                        “start_timestamp”: “2019-07-17 08:21:11”,
            “event_severity”: {                                                                                       “sim”: {
  		“id”: 1,                                                                                                      		“iccid”: “898822806670000XXXX”,
  		“description”: “Warn”                                                                                         		“id”: 233746
            },                                                                                                        },
            “organisation”: {                                                                                         “currency”: {
  		“id”: 839921,                                                                                                 		“symbol”: “n”,
  		                  “name”: “ WBV Tester”                                                                       		“code”: “EUR”,
            },                                                                                                    		“id”: 1
            “user”: {                                                                                                 },
  		“id”: 84993,                                                                                                      “end_timestamp”: “2019-07-17 08:22:00”
  		“username”: “user@company.com”,                                                                               }
  		                  “name”: “John Do”
            }
  }

                                                                                       DATA STREAMER GUIDE   IOT EASY CONNECT                                                            10
VORIGE   INHOUD   VOLGENDE

5. SUPPORTED CLOUD SERVICES
The interface supports REST-API and third-party cloud services such as AWS Kinesis or                      5.2 AWS S3
DataDog. In the select box “API-Type” you will find a list of all supported cloud services,                Messages from the Platform to AWS S3 are authenticated and authorized using your AWS
which can be integrated, as well as the necessary fields that need to be filled. There you can             Access Key and the secret key. As the keys are only known to you, you need to make sure that
select the cloud service in use by your company.                                                           the keys hold the neces-sary rights to write data to all S3 Buckets, or the desired bucket.

To integrate a cloud service, you are suggested to execute the following steps.

5.1 AWS Kinesis
Messages from the Platform to AWS Kinesis are authenticated and authorized using your AWS
Access Key and the secret key. As the keys are only known to you, you need to make sure
that the keys hold the necessary rights to write data to all kinesis data streams, or the desired
data stream.

                                                                                                           Figure 7: Integration of AWS S3

                                                                                                           Also, specify the name of the S3 Bucket you want to transfer your data to. Files are delivered as
                                                                                                           CSV-files to the S3 Bucket. The file names are delivered in a simple structure. Following format
                                                                                                           applies for:
                                                                                                           n Event data: format events_YYYYMMDD_HHmmss.csv
                                                                                                           n Usage data: cdr_YYYYMMDD_HHmmss.csv

Figure 6:  Integration of AWS Kinesis
                                                                                                           Finally, to reduce any issues, please use AWS Identity and Access Management (IAM) to create
                                                                                                           a dedicated IAM-user for each connection.
To reduce any issues, please use AWS Identity and Access Management (IAM) to create a
dedicated IAM-user for each connection.                                                                    5.3 DataDog
                                                                                                           The integration with DataDog enables you to monitor and analyze your SIM card usage, at any
Also make sure to specify the AWS region and the name of the stream where the data shall                   time. Once configured, data is sent automatically to DataDog, where it can be seen in the
be stored.                                                                                                 DataDog explorer or your cus-tomer individual dashboard. The data in form of measurements
                                                                                                           can be further managed or processed for alarming purposes.
Files are delivered in JSON-format to the AWS Kinesis stream.

                                                                                   DATA STREAMER GUIDE   IOT EASY CONNECT                                                                                   11
VORIGE   INHOUD   VOLGENDE

Figure 8:  Integration of DataDog

Messages from the Platform to Datadog are authenticated and authorized using your
application key and API key.

Files are delivered in JSON-format to the DataDog. The following usage data is sent:
n endpoint.volume
n endpoint.volume_tx      (tx = Transmit. So, tx volume counts data send from the device to   network)

n endpoint.volume_rx      (rx = Receive. So, rx volume counts data from network to device)
n endpoint.cost            (fictive value which is the total volume just with a € behind.

                                                                                   DATA STREAMER GUIDE   IOT EASY CONNECT                          12
You can also read