Commit 3af21a7a authored by Elian Kraja's avatar Elian Kraja Committed by Michele Carignani
Browse files

LocationAPI schemas update

parent 9983362d
{
"description": "A type containing list of access points.",
"type": "object",
"required": [
"zoneId",
"resourceURL"
],
"properties": {
"zoneId": {
"description": "Identifier of zone",
"type": "string",
"example": "zone01"
},
"accessPoint": {
"description": "Collection of the access point information list.",
"type": "array",
"items": {
"description": "A type containing access point information.",
"type": "object",
"required": [
"accessPointId",
"connectionType",
"operationStatus",
"numberOfUsers",
"resourceURL"
],
"properties": {
"accessPointId": {
"description": "Identifier of access point, <E-CGI><Cell Portion ID> (reference ETSI TS 129 171). Where the E-CGI is made up of the PLMN and Cell Identity (28 bit string). Then the PLMN is made up of the 3 digit MCC & 2 or 3 digit MNC. The Cell Portion is an optional element",
"type": "string",
"example": "001010000000000000000000000000001"
},
"locationInfo": {
"description": "A type containing location information with latitude, longitude and altitude, in addition the accuracy of the information are provided.",
"type": "object",
"required": [
"latitude",
"longitude",
"accuracy"
],
"properties": {
"latitude": {
"type": "number",
"format": "float",
"example": "80.123"
},
"longitude": {
"type": "number",
"format": "float",
"example": "70.123"
},
"altitude": {
"type": "number",
"format": "float",
"example": "10.0"
},
"accuracy": {
"type": "integer",
"format": "int32",
"example": "10"
}
}
},
"connectionType": {
"description": "The connection type for the access point",
"type": "string",
"enum": [
"Femto",
"LTE-femto",
"Smallcell",
"LTE-smallcell",
"Wifi",
"Pico",
"Micro",
"Macro",
"Wimax",
"Unknown"
],
"example": "Macro"
},
"operationStatus": {
"description": "The operation status of the access point",
"type": "string",
"enum": [
"Serviceable",
"Unserviceable",
"Unknown"
],
"example": "Serviceable"
},
"numberOfUsers": {
"description": "The number of users currently on the access point.",
"type": "integer",
"format": "uint32",
"example": "7"
},
"timezone": {
"description": "Time zone of access point",
"type": "string",
"format": "date-time",
"example": "2017-01-01T02:51:43Z"
},
"interestRealm": {
"description": "Interest realm of access point (e.g. geographical area, a type of industry etc.).",
"type": "string",
"example": "LA"
},
"resourceURL": {
"description": "Self referring URL.",
"type": "string",
"format": "uri",
"example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123"
}
}
}
},
"resourceURL": {
"description": "Self referring URL.",
"type": "string",
"format": "uri",
"example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123"
}
}
}
\ No newline at end of file
......@@ -25,7 +25,7 @@ TC_MEC_SRV_UEAREASUB_001_OK
[Tags] PIC_MEC_PLAT PIC_SERVICES
Create new subscription CircleNotificationSubscription
Check HTTP Response Status Code Is 201
Check HTTP Response Body Json Schema Is circleNotificationSubscription
Check HTTP Response Body Json Schema Is CircleNotificationSubscription
Check Result Contains ${response['body']['circleNotificationSubscription']} clientCorrelator ${UEAREASUB_CLIENT_ID}
Check Result Contains ${response['body']['circleNotificationSubscription']} callbackReference ${APP_UEAREASUB_CALLBACK_URI}
Check Result Contains ${response['body']['circleNotificationSubscription']} address ${IP_ADDRESS}
......
{
"circleNotificationSubscription": {
"address": "acr:10.0.0.1",
"callbackReference": {
"callbackData": "1234",
......@@ -13,5 +12,4 @@
"longitude": "41.277306",
"radius": "500",
"trackingAccuracy": "10"
}
}
\ No newline at end of file
{
"circleNotificationSubscription": {
"address": "acr:10.0.0.1",
"callback": {
"callbackData": "1234",
......@@ -13,5 +12,4 @@
"longitude": "41.277306",
"radius": "500",
"trackingAccuracy": "10"
}
}
\ No newline at end of file
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://example.com/root.json",
"type": "object",
"title": "The Root Schema",
"required": [
"address",
"callbackReference",
"checkImmediate",
"clientCorrelator",
"enteringLeavingCriteria",
"frequency",
"latitude",
"longitude",
"radius",
"trackingAccuracy"
],
"properties": {
"address": {
"$id": "#/properties/address",
"type": "string",
"title": "The Address Schema",
"default": "",
"examples": [
"acr:10.0.0.1"
],
"pattern": "^(.*)$"
},
"callbackReference": {
"$id": "#/properties/callbackReference",
"type": "object",
"title": "The Callbackreference Schema",
"required": [
"callbackData",
"notifyURL"
],
"properties": {
"callbackData": {
"$id": "#/properties/callbackReference/properties/callbackData",
"type": "string",
"title": "The Callbackdata Schema",
"default": "",
"examples": [
"1234"
],
"pattern": "^(.*)$"
},
"notifyURL": {
"$id": "#/properties/callbackReference/properties/notifyURL",
"type": "string",
"title": "The Notifyurl Schema",
"default": "",
"examples": [
"http://application.example.com/notifications/distance_notifications/123456"
],
"pattern": "^(.*)$"
}
}
},
"checkImmediate": {
"$id": "#/properties/checkImmediate",
"type": "string",
"title": "The Checkimmediate Schema",
"default": "",
"examples": [
"true"
],
"pattern": "^(.*)$"
},
"clientCorrelator": {
"$id": "#/properties/clientCorrelator",
"type": "string",
"title": "The Clientcorrelator Schema",
"default": "",
"examples": [
"0123"
],
"pattern": "^(.*)$"
},
"enteringLeavingCriteria": {
"$id": "#/properties/enteringLeavingCriteria",
"type": "string",
"title": "The Enteringleavingcriteria Schema",
"default": "",
"examples": [
"Entering"
],
"pattern": "^(.*)$"
},
"frequency": {
"$id": "#/properties/frequency",
"type": "string",
"title": "The Frequency Schema",
"default": "",
"examples": [
"10"
],
"pattern": "^(.*)$"
},
"latitude": {
"$id": "#/properties/latitude",
"type": "string",
"title": "The Latitude Schema",
"default": "",
"examples": [
"-80.86302"
],
"pattern": "^(.*)$"
},
"longitude": {
"$id": "#/properties/longitude",
"type": "string",
"title": "The Longitude Schema",
"default": "",
"examples": [
"41.277306"
],
"pattern": "^(.*)$"
},
"radius": {
"$id": "#/properties/radius",
"type": "string",
"title": "The Radius Schema",
"default": "",
"examples": [
"500"
],
"pattern": "^(.*)$"
},
"trackingAccuracy": {
"$id": "#/properties/trackingAccuracy",
"type": "string",
"title": "The Trackingaccuracy Schema",
"default": "",
"examples": [
"10"
],
"pattern": "^(.*)$"
}
}
}
\ No newline at end of file
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://example.com/root.json",
"type": "object",
"title": "The Root Schema",
"required": [
" terminalDistance"
],
"properties": {
" terminalDistance": {
"$id": "#/properties/ terminalDistance",
"type": "object",
"title": "The terminaldistance Schema",
"required": [
"distance"
],
"properties": {
"distance": {
"$id": "#/properties/ terminalDistance/properties/distance",
"type": "string",
"title": "The Distance Schema",
"default": "",
"examples": [
"123"
],
"pattern": "^(.*)$"
}
}
}
}
}
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://example.com/root.json",
"type": "object",
"title": "The Root Schema",
"required": [
"distanceNotificationSubscription"
],
"properties": {
"distanceNotificationSubscription": {
"$id": "#/properties/distanceNotificationSubscription",
"type": "object",
"title": "The Distancenotificationsubscription Schema",
"required": [
"callbackReference",
"checkImmediate",
"clientCorrelator",
"criteria",
"distance",
"frequency",
"monitoredAddress",
"referenceAddress",
"trackingAccuracy"
],
"properties": {
"callbackReference": {
"$id": "#/properties/distanceNotificationSubscription/properties/callbackReference",
"type": "object",
"title": "The Callbackreference Schema",
"required": [
"callbackData",
"notifyURL"
],
"properties": {
"callbackData": {
"$id": "#/properties/distanceNotificationSubscription/properties/callbackReference/properties/callbackData",
"type": "string",
"title": "The Callbackdata Schema",
"default": "",
"examples": [
"1234"
],
"pattern": "^(.*)$"
},
"notifyURL": {
"$id": "#/properties/distanceNotificationSubscription/properties/callbackReference/properties/notifyURL",
"type": "string",
"title": "The Notifyurl Schema",
"default": "",
"examples": [
"http://application.example.com/notifications/distance_notifications/123456"
],
"pattern": "^(.*)$"
}
}
},
"checkImmediate": {
"$id": "#/properties/distanceNotificationSubscription/properties/checkImmediate",
"type": "string",
"title": "The Checkimmediate Schema",
"default": "",
"examples": [
"true"
],
"pattern": "^(.*)$"
},
"clientCorrelator": {
"$id": "#/properties/distanceNotificationSubscription/properties/clientCorrelator",
"type": "string",
"title": "The Clientcorrelator Schema",
"default": "",
"examples": [
"0123"
],
"pattern": "^(.*)$"
},
"criteria": {
"$id": "#/properties/distanceNotificationSubscription/properties/criteria",
"type": "string",
"title": "The Criteria Schema",
"default": "",
"examples": [
"AllWithinDistance"
],
"pattern": "^(.*)$"
},
"distance": {
"$id": "#/properties/distanceNotificationSubscription/properties/distance",
"type": "string",
"title": "The Distance Schema",
"default": "",
"examples": [
"100"
],
"pattern": "^(.*)$"
},
"frequency": {
"$id": "#/properties/distanceNotificationSubscription/properties/frequency",
"type": "string",
"title": "The Frequency Schema",
"default": "",
"examples": [
"10"
],
"pattern": "^(.*)$"
},
"monitoredAddress": {
"$id": "#/properties/distanceNotificationSubscription/properties/monitoredAddress",
"type": "array",
"title": "The Monitoredaddress Schema",
"items": {
"$id": "#/properties/distanceNotificationSubscription/properties/monitoredAddress/items",
"type": "string",
"title": "The Items Schema",
"default": "",
"examples": [
"acr:10.0.0.1",
"acr:10.0.0.2"
],
"pattern": "^(.*)$"
}
},
"referenceAddress": {
"$id": "#/properties/distanceNotificationSubscription/properties/referenceAddress",
"type": "string",
"title": "The Referenceaddress Schema",
"default": "",
"examples": [
"acr:10.0.0.3"
],
"pattern": "^(.*)$"
},
"trackingAccuracy": {
"$id": "#/properties/distanceNotificationSubscription/properties/trackingAccuracy",
"type": "string",
"title": "The Trackingaccuracy Schema",
"default": "",
"examples": [
"10"
],
"pattern": "^(.*)$"
}
}
}
}
}
......@@ -24,7 +24,7 @@ TC_MEC_SRV_UEINFOLOOK_001_OK
[Tags] PIC_MEC_PLAT PIC_SERVICES
Get list of users with filter address ${ACR_ADDRESS}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is userList
Check HTTP Response Body Json Schema Is UserList
TC_MEC_SRV_UEINFOLOOK_001_BR
......
{
"user":[
{
"address":"acr:192.0.2.1",
"accessPointId":"",
"zoneId":"",
"resourceURL":"http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription1",
"locationInfo":{
"latitude":0.0,
"longitude":0.0,
"altitude":0.0,
"accuracy":0.0
},
"contextLocationInfo":"",
"ancillaryInfo":""
}
],
"resourceURL":"http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription1"
}
\ No newline at end of file
{
"description": "A type containing list of users.",
"type": "object",
"required": [
"resourceURL"
],
"properties": {
"user": {
"description": "Collection of the zone information list.",
"type": "array",
"items": {
"description": "A type containing user information.",
"type": "object",
"required": [
"address",
"accessPointId",
"zoneId",
"resourceURL"
],
"properties": {
"address": {
"description": "Address of user (e.g. \"sip\" URI, \"tel\" URI, \"acr\" URI).",
"type": "string",
"format": "uri",
"example": "acr:192.0.2.1"
},
"accessPointId": {
"description": "Identifier of access point, <E-CGI><Cell Portion ID> (reference ETSI TS 129 171). Where the E-CGI is made up of the PLMN and Cell Identity (28 bit string). Then the PLMN is made up of the 3 digit MCC & 2 or 3 digit MNC. The Cell Portion is an optional element",
"type": "string",
"example": "001010000000000000000000000000001"
},
"zoneId": {
"description": "Identifier of zone",
"type": "string",
"example": "zone01"
},
"resourceURL": {
"description": "Self referring URL.",
"type": "string",
"format": "uri",
"example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123"
},
"locationInfo": {
"description": "A type containing location information with latitude, longitude and altitude, in addition the accuracy of the information are provided.",
"type": "object",
"required": [
"latitude",
"longitude",
"accuracy"
],
"properties": {
"latitude": {
"type": "number",
"format": "float",
"example": "80.123"
},
"longitude": {
"type": "number",
"format": "float",
"example": "70.123"
},
"altitude": {
"type": "number",
"format": "float",
"example": "10.0"
},
"accuracy": {
"type": "integer",
"format": "int32",
"example": "10"
}