7 Device Status Query Troubleshooting API
This section describes how to use Service Capability Exposure Function (SCEF) Device Status Query Troubleshooting Application Program Interface (API) and access REST interface URLs.
Device Status Query Troubleshooting API Overview
Device Status Query Troubleshooting Application Program Interface (API) can retrieve and delete IP and non-IP data corresponding to a device from Service Capability Exposure Function (SCEF).
Understanding the APIs
You can access these APIs using any existing operator’s account that is used to log in to the Oracle Communications Service Gatekeeper (OCSG) Partner Relationship Management (PRM) portal. A new operator account can be created through the Weblogic Admin portal.
For creating users, refer to Create User Account.
NIDD Troubleshooting API
- externalId
- msisdn
- imsi
- tltrId
- tltrId
- externalId
- msisdn
- imsi
For example, if all the four query parameters are present in the request, the API considers the tltrId parameter first to process the request. If the tltrId parameter is not provided, then API considers the next available parameter according to the order of precedence.
This API supports GET and DELETE methods.
Retrieving and Deleting Data
URL Format
https://<APPServer IP>:9002/troubleshooting/oam/nidd?<parameter=input value>
where, <parameter=input value> indicates the parameter name and its value.
- https://<APPServer IP>:9002/troubleshooting/oam/nidd?tltrId=5e66ed330f3200470000000d
- https://<APPServer IP>:9002/troubleshooting/oam/nidd?externalId=extid1@oracle.com
- https://<APPServer IP>:9002/troubleshooting/oam/nidd?msisdn=7799383911
- https://<APPServer IP>:9002/troubleshooting/oam/nidd?imsi=123456789123456
GET Call Flow
This call flow explains different scenarios involved in retrieving non-IP delivery data corresponding to a device.
Figure 7-1 NIDD GET Call Flow
Sample Request
https://10.75.225.37:9002/troubleshooting/oam/nidd?msisdn=555555555
Sample Respose
{
"niddDeviceInfo": [
{
"tltrId": "5f081abb01ca00ce00000006",
"status": "Success",
"data": {
"version": 1,
"recordStatus": "Created",
"scsAsId": "SCSAS50",
"imsi": "1234512351",
"grantTime": "03/15/52 13:29:43",
"apn": "apn50.test.com",
"epsBearerId": "Not Set",
"msisdn": "555555555",
"mmeSgsnFqdn": "Not Set",
"plmnId:mcc": 0,
"plmnId:mnc": 0,
"imei": "Not Set",
"imeiSv": "Not Set",
"ratType": 4294967295,
"retransmissionTime": "Not Set",
"ueAvailability": false,
"servingPlmnRate": 0,
"currentDownlinkApnRate": 0,
"currentUplinkApnRate": 0,
"currentPlmnRate": 0,
"downlinkApnRateResetTime": "12/31/69 19:00:00",
"uplinkApnRateResetTime": "12/31/69 19:00:00",
"plmnRateResetTime": "12/31/69 19:00:00",
"notificationUri": "http://10.75.224.65:10001/scs/resources/t8",
"pdnEstablishmentOption": "WAIT_FOR_UE",
"pdnConnectionTime": "12/31/69 19:00:00",
"List of Pending Data": [
{
"ttrId": "1",
"data": "Hello from Network10",
"size": 20,
"priority": 1,
"maximumLatency": "08/12/20 14:00:00"
}
]
}
}
]
}
Note:
The following are some default values for the NIDD device information:"mmeSgsnFqdn": "Not Set",
"plmnId:mcc": 0,
"plmnId:mnc": 0,
"imei": "Not Set",
"imeiSv": "Not Set",
"ratType": 4294967295,
"retransmissionTime": "Not Set",
"ueAvailability": false,
"servingPlmnRate": 0,
"currentDownlinkApnRate": 0,
"currentUplinkApnRate": 0,
"currentPlmnRate": 0,
"downlinkApnRateResetTime": "12/31/69 19:00:00",
"uplinkApnRateResetTime": "12/31/69 19:00:00",
"plmnRateResetTime": "12/31/69 19:00:00",
"recordStatus" could have the following values - Pending, Created or DeleteInProgress
DELETE Call Flow
This call flow explains different scenarios involved in deleting the non-IP delivery data corresponding to a device.
Figure 7-2 NIDD DELETE Call Flow
Sample Request
https://10.75.225.37:9002/troubleshooting/oam/nidd?msisdn=555555555
{
"niddDeleteResult": [
{
"status": "200 OK",
"tltriId": "5f081abb01ca00ce00000006"
}
]
}
Note:
When several contexts exist for a given device, response is provided with all Tltrid’s and their operation status for each.MONTE Troubleshooting Non-IP API
- externalId
- msisdn
- tltrId
- tltrId
- externalId
- msisdn
For example, if all the three query parameters are present in the request, the API considers the tltrId parameter first to process the request. If the tltrId parameter is not provided, then API considers the next available parameter according to the order of precedence.
This API supports GET and DELETE methods.
Retrieving and Deleting Data
URL Format
https://<APPServer IP>:9002/troubleshooting/oam/me-nonip?<parameter=input value>
where, <parameter=input value> indicates the parameter name and its value.
- https://<APPServer IP>:9002/troubleshooting/oam/me-nonip?tltrId=5e66ed330f3200470000000d
- https://<APPServer IP>:9002/troubleshooting/oam/me-nonip?externalId=extid1@oracle.com
- https://<APPServer IP>:9002/troubleshooting/oam/me-nonip?msisdn=7799383911 3.2.2
GET Call Flow
This call flow explains different scenarios involved in retrieving non-IP delivery data corresponding to a device.
Figure 7-3 MONTE Non-IP GET Call Flow
Sample Request
https://10.75.225.37:9002/troubleshooting/oam/me-nonip?msisdn=1234567890
Sample Response
{
"monitoringDeviceInfo": [
{
"subscriptionId": "5f0822a801ca00ce0000000a",
"status": "Success",
"data": {
"version": 1,
"recordStatus": "Created",
"scefReferenceId": 10,
"scsAsId": "SCSAS50",
"notificationUri": "http://10.10.10.6:8787/configurations/notification",
"monitoringType": "UE_REACHABILITY",
"reachabilityType": "SMS",
"maxLatencyPresent": false,
"maxRespTimePresent": false,
"numDlPacketsPresent": false,
"monitorExpireTime": "Not Set",
"maxAllowedReportCount": 1,
"currentReportCount": 0,
"userIdentityInUse": "ExternalIdentifier",
"externalId": "56789112@StreetLight-BLR-22.com",
"msisdn": "988739322222",
"hssRealm": "oracle.com",
"hssFqdn": "peer1.oracle.com"
}
},
{
"subscriptionId": "5f08241501ca00ce0000000d",
"status": "Success",
"data": {
"version": 1,
"recordStatus": "Created",
"scefReferenceId": 13,
"scsAsId": "SCSAS70",
"notificationUri": "http://10.75.225.37:10001/configurations/notification",
"monitoringType": "AVAILABILITY_AFTER_DDN_FAILURE",
"idleStatusIndicationPresent": true,
"monitorExpireTime": "Not Set",
"maxAllowedReportCount": 100,
"currentReportCount": 10,
"userIdentityInUse": "ExternalIdentifier",
"externalId": "111111111111@StreetLight-BLR-10.com",
"hssRealm": "oracle.com",
"hssFqdn": "peer1.oracle.com"
}
}
]
}
DELETE Call Flow
This call flow explains different scenarios involved in deleting the non-IP delivery data corresponding to a device.
Figure 7-4 MONTE Non-IP DELETE Call Flow
Sample Request
https://10.75.225.37:9002/troubleshooting/oam/me-nonip?msisdn=1234567890
Sample Response
{
"monteDeleteResult": [
{
"status": "204 No Content",
"subscriptionId": "5f0822a801ca00ce0000000a"
},
{
"status": "204 No Content",
"subscriptionId": "5f08241501ca00ce0000000d"
}
]
}
Note:
When several contexts exist for a given device, response is provided with all Tltrid’s and their operation status for each.MONTE Troubleshooting IP API
- externalId
- msisdn
- imsi
- ip
- subscriptionid
- externalId
- msisdn
- imsi
- ip
- subscriptionid
For example, if all the five query parameters are present in the request, the API considers the externalId parameter first to process the request. If the externalId parameter is not provided, then API considers the next available parameter according to the order of precedence.
Note:
The subscriptionid parameter mentioned in the query parameter must be of only application subscriptions. Device SubscriptionId is not accepted.This API supports GET and DELETE methods.
Retrieving and Deleting Data
In MONTE IP GET, when subscriptionid is provided as an input query parameter, then the device of that subscription is searched, and subscriptions data, such as App subscriptions, Device subscriptions, and Buffered messages, are retrieved for the given device.
In MONTE IP DELETE, when subscriptionid is provided as an input query parameter, then the device of that subscription is searched, and subscriptions data, such as App subscriptions and Device subscriptions, are deleted for the given device.
URL Format
https://<APPServer IP>:9002/troubleshooting/oam/me-ip?<parameter=input value>
where <parameter=input value> indicates the parameter name and its value.
Examples of REST interface URLs
- https://<APPServer IP>:9002/troubleshooting/oam/me-ip?externalId=extid1@oracle.com
- https://<APPServer IP>:9002/troubleshooting/oam/me-ip?msisdn=7799383911
- https://<APPServer IP>:9002/troubleshooting/oam/me-ip?imsi=7799383911
- https://<APPServer IP>:9002/troubleshooting/oam/me-ip?ip=10.75.224.61
- https://<APPServer IP>:9002/troubleshooting/oam/me-ip?subscriptionid=046b6c7a-0b8b-43b9-b35c-6489e6daee92
GET Call Flow
Table 7-1 Device Status
Status | Description |
---|---|
Not Connected | Device is never connected to MQTT Broker |
Connected | Device is connected to MQTT Broker |
Disconnected | Device is not connected to MQTT Broker |
This call flow explains different scenarios involved in retrieving IP data corresponding to a device.
Figure 7-5 MONTE IP GET Call Flow
Sample Request
https://10.75.225.37:9002/troubleshooting/oam/me-ip?msisdn=7829139111
Sample Response
{
"ipDevices": [
{
"apn": "test.ashok3.com",
"applicationSubscription": [
{
"appId": "partner1-scefapp",
"deviceInfo": "7829139111",
"subscribedTopic": "tracking/batterylevel/#",
"subscriptionId": "b23a82eb-ef45-41fe-9004-e7c695731d92"
}
],
"bufferedMessages": [
{
"bufferedData": "ashok sent at 10:58ampm on 07102020",
"publishedTopic": "tracking/batterylevel/ashok",
"subscribedTopic": "tracking/batterylevel/ashok"
}
],
"deviceId": "Ashok3",
"deviceSubscription": [
{
"subscribedTopic": "tracking/batterylevel/ashok",
"subscriptionId": "72739d0d-b89b-4b4c-8a29-b66c0ef9b7e6"
}
],
"deviceType": "MQTT",
"externalId": "7829139111@StreetLight-BLR-5",
"imsi": 7829139111,
"msisdn": 7829139111,
"sessionId": ".;1096298392;1",
"status": "Disconnected"
}
]
}
DELETE Call Flow
This call flow explains different scenarios involved in deleting the IP data corresponding to a device.
MONTE IP DELETE deletes the device subscriptions and application subscriptions. If the device is connected to the Message Queuing Telemetry Transport (MQTT) broker, it remains in the connected state.
Figure 7-6 MONTE IP DELETE Call Flow
Sample Request
https://10.75.225.37:9002/troubleshooting/oam/me-ip?msisdn=7829139111
Sample Response
200 OK
Device Status Query Troubleshooting API Configuration
Device Troubleshooting Query APIs expose Management bean that can be accessed through the OCSG Admin portal.
- Navigate to the Management bean: The following screen appears:
Figure 7-7 Management Bean
.
- Change the default values as required.
- Click on Update Attributes.
Table 7-2 Attribute Description
Name | Description | Scope |
---|---|---|
ReadTimeOut | Read time out in
ms.
The default value is 2000 ms. |
Cluster, Shared across
AppServers.
Changes made on one AppServer reflects on all other AppServers. |
ConnectTimeOut | Connect time out in
ms.
The default value is 30000 ms. |
Cluster, Shared across
AppServers.
Changes made on one AppServer reflects on all other AppServers. |