{
	"info": {
		"_postman_id": "c9cddcb5-7194-4b89-9d9d-c1cec64d8607",
		"name": "iIDservice DOC - {{host}}:{{port}}",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
	},
	"item": [
		{
			"name": "GET version",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200. Schema OK\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    const jsonSchema = {\r",
							"        \"type\": \"object\",\r",
							"        \"properties\": {\r",
							"            \"libraryVersion\": {\"type\": \"string\"},\r",
							"            \"serviceVersion\": {\"type\": \"string\"},\r",
							"            \"serviceReleaseDate\": {\"type\": \"string\"},\r",
							"        },\r",
							"        \"required\": [\"libraryVersion\", \"serviceVersion\", \"serviceReleaseDate\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchema);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/version",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"version"
					]
				}
			},
			"response": []
		},
		{
			"name": "GET interface/CurrentSettings Copy",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200. Schema OK\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    const jsonSchema = {\r",
							"        \"type\": \"object\",\r",
							"        \"properties\": {\r",
							"            \"portName\": {\"type\": \"string\"},\r",
							"            \"portType\": {\"type\": \"integer\"},\r",
							"            \"interfaceType\": {\"type\": \"integer\"},\r",
							"            \"protocolType\": {\"type\": \"integer\"},\r",
							"        },\r",
							"        \"required\": [\"portName\", \"portType\", \"interfaceType\", \"protocolType\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchema);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/interface/currentsettings",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"interface",
						"currentsettings"
					]
				}
			},
			"response": []
		},
		{
			"name": "POST interface/CurrentSettings",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test('Check status code 200 or 400. Schema OK', () => {\r",
							"    pm.expect(pm.response.code).to.be.oneOf([200, 400])\r",
							"    if (pm.status == 200){\r",
							"        const jsonSchema = {\r",
							"            \"type\": \"object\",\r",
							"            \"properties\": {\r",
							"                \"portName\": {\"type\": \"string\"},\r",
							"                \"portType\": {\"type\": \"integer\"},\r",
							"                \"interfaceType\": {\"type\": \"integer\"},\r",
							"                \"protocolType\": {\"type\": \"integer\"},\r",
							"            },\r",
							"            \"required\": [\"portName\", \"portType\", \"interfaceType\", \"protocolType\"]\r",
							"        }\r",
							"        pm.response.to.have.jsonSchema(jsonSchema);\r",
							"    }\r",
							"    if (pm.status == 400){\r",
							"        const jsonSchema = {\r",
							"            \"type\": \"object\",\r",
							"            \"properties\": {\r",
							"                \"portName\": {\"type\": \"string\"},\r",
							"                \"portType\": {\"type\": \"string\"},\r",
							"                \"interfaceType\": {\"type\": \"string\"},\r",
							"                \"protocolType\": {\"type\": \"string\"},\r",
							"            },\r",
							"            \"required\": [\"portName\", \"portType\", \"interfaceType\", \"protocolType\"]\r",
							"        }\r",
							"        pm.response.to.have.jsonSchema(jsonSchema);\r",
							"    }\r",
							"})\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/interface/currentsettings?portName=&portType=4&interfaceType=868",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"interface",
						"currentsettings"
					],
					"query": [
						{
							"key": "portName",
							"value": ""
						},
						{
							"key": "portType",
							"value": "4"
						},
						{
							"key": "interfaceType",
							"value": "868"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "POST Initialize",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200 + true\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.have.body(\"true\");\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/Initialize",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"Initialize"
					]
				}
			},
			"response": []
		},
		{
			"name": "GET IsInitialized",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200 + true\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.have.body(\"true\");\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/isconnected",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"isconnected"
					]
				}
			},
			"response": []
		},
		{
			"name": "GET ReaderInformation",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200. Schema OK\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    const jsonSchema = {\r",
							"        \"type\": \"object\",\r",
							"        \"properties\": {\r",
							"            \"readerID\": {\"type\": \"integer\"},\r",
							"            \"hwInfo\": {\"type\": \"string\"},\r",
							"            \"fwInfo\": {\"type\": \"string\"},\r",
							"            \"hexString\": {\"type\": \"string\"},\r",
							"            \"hwInfoDetails\": {\"type\": \"object\"}\r",
							"        },\r",
							"        \"required\": [\"readerID\", \"hwInfo\", \"fwInfo\", \"hexString\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchema);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/ReaderInfo",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"ReaderInfo"
					]
				}
			},
			"response": []
		},
		{
			"name": "GET Identify",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200. Schema OK\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    const jsonSchemaBody = {\r",
							"        \"type\": \"object\",\r",
							"        \"properties\": {\r",
							"            \"interfaceType\": {\"type\": \"integer\"},\r",
							"        },\r",
							"        \"required\": [\"interfaceType\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchemaBody);\r",
							"    var bodyJson = pm.response.json();\r",
							"    var intType = bodyJson.interfaceType;\r",
							"    var scanResult = pm.response.json().scanResult\r",
							"    if (intType == 868){\r",
							"        var jsonSchemaUhf = {\r",
							"            \"type\": \"object\",\r",
							"            \"properties\": {\r",
							"                \"interfaceType\": {\"type\": \"integer\"},\r",
							"                \"scanResult\": {\r",
							"                    \"type\": \"array\",\r",
							"                    \"items\": { \r",
							"                        \"type\": \"object\",\r",
							"                        \"properties\": {\r",
							"                            \"TagID\": {\"type\": \"object\"},\r",
							"                            \"antennaNumber\": {\"type\": \"integer\"},\r",
							"                            \"RSSI\": {\"type\": \"number\"}\r",
							"                        },\r",
							"                        \"required\": [\"TagID\", \"antennaNumber\"]\r",
							"                    }\r",
							"                }\r",
							"            },\r",
							"            \"required\": [\"interfaceType\", \"scanResult\"]\r",
							"        }\r",
							"        pm.response.to.have.jsonSchema(jsonSchemaUhf);\r",
							"        var uii = scanResult[0].TagID.UII;\r",
							"        uii = uii.replaceAll(\" \", \"\");\r",
							"        pm.collectionVariables.set(\"tagID\", uii);\r",
							"    } else{\r",
							"        var jsonSchemaHf = {\r",
							"            \"type\": \"object\",\r",
							"            \"properties\": {\r",
							"                \"interfaceType\": {\"type\": \"integer\"},\r",
							"                \"scanResult\": {\r",
							"                    \"type\": \"object\",\r",
							"                    \"properties\": {\r",
							"                        \"TagID\": {\"type\": \"string\"}\r",
							"                    },\r",
							"                    \"required\":[\"TagID\"]\r",
							"                }\r",
							"            },\r",
							"            \"required\": [\"interfaceType\", \"scanResult\"]\r",
							"        }\r",
							"        pm.response.to.have.jsonSchema(jsonSchemaHf);\r",
							"        pm.collectionVariables.set(\"tagID\", scanResult.TagID.replaceAll(\" \",\"\"));\r",
							"    }\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/Identify",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"Identify"
					]
				}
			},
			"response": []
		},
		{
			"name": "SSE IdentifyCycle",
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/IdentifyCycle",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"IdentifyCycle"
					],
					"query": [
						{
							"key": "intervalMs",
							"value": "100",
							"disabled": true
						},
						{
							"key": "numTries",
							"value": "50",
							"disabled": true
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "GET ReadBytes",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200, 400 or 404. Schema OK\", function () {\r",
							"    pm.expect(pm.response.code).to.be.oneOf([200, 404])\r",
							"    if (pm.status == 200){\r",
							"        const jsonSchema = {\r",
							"            \"type\": \"object\",\r",
							"            \"properties\": {\r",
							"                \"tagID\": {\"type\": \"string\"},\r",
							"                \"pageNum\": {\"type\": \"integer\"},\r",
							"                \"fromByte\": {\"type\": \"integer\"},\r",
							"                \"data\": {\"type\": \"string\"},\r",
							"            },\r",
							"            \"required\": [\"tagID\", \"pageNum\", \"fromByte\", \"data\"]\r",
							"        }\r",
							"        pm.response.to.have.jsonSchema(jsonSchema);\r",
							"    }\r",
							"    /*if (pm.status == 400){\r",
							"        const jsonSchema = {\r",
							"            \"type\": \"object\",\r",
							"            \"properties\": {\r",
							"                \"tagID\": {\"type\": \"string\"},\r",
							"                \"pageNum\": {\"type\": \"string\"},\r",
							"                \"fromByte\": {\"type\": \"string\"},\r",
							"                \"lengthBytes\": {\"type\": \"string\"},\r",
							"            },\r",
							"            \"required\": [\"tagID\", \"pageNum\", \"fromByte\", \"lengthBytes\"]\r",
							"        }\r",
							"        pm.response.to.have.jsonSchema(jsonSchema);\r",
							"    }*/\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/ReadBytes?tagID={{tagID}}&pageNum=0&fromByte=0&lengthBytes=2",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"ReadBytes"
					],
					"query": [
						{
							"key": "tagID",
							"value": "{{tagID}}"
						},
						{
							"key": "pageNum",
							"value": "0"
						},
						{
							"key": "fromByte",
							"value": "0"
						},
						{
							"key": "lengthBytes",
							"value": "2"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "POST WriteBytes",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test('Check status code 200 or 404. Schema OK', () => {\r",
							"    pm.expect(pm.response.code).to.be.oneOf([200, 404])\r",
							"    if (pm.status == 200){\r",
							"        const jsonSchema = {\r",
							"            \"type\": \"object\",\r",
							"            \"properties\": {\r",
							"                \"tagID\": {\"type\": \"string\"},\r",
							"                \"pageNum\": {\"type\": \"integer\"},\r",
							"                \"fromByte\": {\"type\": \"integer\"},\r",
							"                \"data\": {\"type\": \"string\"},\r",
							"            },\r",
							"            \"required\": [\"tagID\", \"pageNum\", \"fromByte\", \"data\"]\r",
							"        }\r",
							"        pm.response.to.have.jsonSchema(jsonSchema);\r",
							"    }\r",
							"})\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/WriteBytes?tagID={{tagID}}&pageNum=0&fromByte=0&data=3031",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"WriteBytes"
					],
					"query": [
						{
							"key": "tagID",
							"value": "{{tagID}}"
						},
						{
							"key": "pageNum",
							"value": "0"
						},
						{
							"key": "fromByte",
							"value": "0"
						},
						{
							"key": "data",
							"value": "3031"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "GET GetSensorData",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200. Schema OK\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    const jsonSchema = {\r",
							"        \"type\": \"object\",\r",
							"        \"properties\": {\r",
							"            \"serialNumber\": {\"type\": \"integer\"},\r",
							"            \"serialNumberHex\": {\"type\": \"string\"},\r",
							"            \"measurements\": {\r",
							"                \"type\": \"array\",\r",
							"                \"items\": {\r",
							"                    \"type\": \"object\",\r",
							"                    \"properties\": {\r",
							"                        \"timestamp\": {\"type\": \"string\"},\r",
							"                        \"values\": {\r",
							"                            \"type\": \"array\",\r",
							"                            \"items\": {\r",
							"                                \"type\": \"object\",\r",
							"                                \"properties\": {\r",
							"                                    \"magnitude\": { \"type\": \"number\"},\r",
							"                                    \"unit\": { \"type\": \"string\"},\r",
							"                                    \"valueType\": { \"type\": \"integer\"},\r",
							"                                    \"symbol\": { \"type\": \"string\"}\r",
							"                                },\r",
							"                                \"required\": [\"magnitude\", \"unit\", \"valueType\", \"symbol\"]\r",
							"                            }\r",
							"                        }\r",
							"                    },\r",
							"                    \"required\": [\"timestamp\", \"values\"]\r",
							"                }\r",
							"            },\r",
							"            \"description\": {\"type\": \"string\"},\r",
							"        },\r",
							"        \"required\": [\"serialNumber\", \"serialNumberHex\", \"measurements\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchema);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/telidtransponder/GetSensorData",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"telidtransponder",
						"GetSensorData"
					]
				}
			},
			"response": []
		},
		{
			"name": "SSE GetSensorDataCycle",
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/telidtransponder/GetSensorDataCycle",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"telidtransponder",
						"GetSensorDataCycle"
					]
				}
			},
			"response": []
		},
		{
			"name": "POST Terminate",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200 + true\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    pm.response.to.have.body(\"true\");\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/doc/Terminate",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"doc",
						"Terminate"
					]
				}
			},
			"response": []
		}
	],
	"auth": {
		"type": "apikey",
		"apikey": [
			{
				"key": "value",
				"value": "hL4bA4nB4yI0vI0fC8fH7eT6",
				"type": "string"
			},
			{
				"key": "key",
				"value": "ApiKey",
				"type": "string"
			}
		]
	},
	"event": [
		{
			"listen": "prerequest",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		},
		{
			"listen": "test",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		}
	],
	"variable": [
		{
			"key": "tagID",
			"value": ""
		},
		{
			"key": "host",
			"value": "localhost",
			"type": "default"
		},
		{
			"key": "port",
			"value": "19813",
			"type": "default"
		}
	]
}