{
	"info": {
		"_postman_id": "6d383dd9-1b2b-4092-8315-561ab3603ee2",
		"name": "iIDservice SPC - {{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",
			"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",
							"        },\r",
							"        \"required\": [\"portName\", \"portType\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchema);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/spc/interface/currentsettings",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"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/spc/interface/currentsettings?portName=&portType=4",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"interface",
						"currentsettings"
					],
					"query": [
						{
							"key": "portName",
							"value": ""
						},
						{
							"key": "portType",
							"value": "4"
						}
					]
				}
			},
			"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/spc/Initialize?spcDataPrefix&spcDataSuffix=%0D%0A&UseMssProtocol=false",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"Initialize"
					],
					"query": [
						{
							"key": "spcDataPrefix",
							"value": null
						},
						{
							"key": "spcDataSuffix",
							"value": "%0D%0A"
						},
						{
							"key": "UseMssProtocol",
							"value": "false"
						}
					]
				}
			},
			"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/spc/isInitialized",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"isInitialized"
					]
				}
			},
			"response": []
		},
		{
			"name": "GET LastHeartbeat",
			"event": [
				{
					"listen": "prerequest",
					"script": {
						"exec": [
							"setTimeout(function(){}, [5000]);"
						],
						"type": "text/javascript"
					}
				},
				{
					"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",
							"            \"timestamp\": {\"type\": \"string\"},\r",
							"            \"readerID\": {\"type\": \"integer\"},\r",
							"            \"batteryStatus\": {\"type\": \"string\"},\r",
							"            \"scriptName\": {\"type\": \"string\"},\r",
							"        },\r",
							"        \"required\": [\"timestamp\", \"readerID\", \"batteryStatus\", \"scriptName\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchema);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/spc/LastHeartbeat",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"LastHeartbeat"
					]
				}
			},
			"response": []
		},
		{
			"name": "POST SendSpcRequestASCII",
			"event": [
				{
					"listen": "test",
					"script": {
						"exec": [
							"pm.test(\"Status code is 200 + true\", function () {\r",
							"    pm.response.to.have.status(200);\r",
							"    setTimeout(function(){}, [500]);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "POST",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/spc/SendSpcRequestASCII?request=~T",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"SendSpcRequestASCII"
					],
					"query": [
						{
							"key": "request",
							"value": "~T"
						}
					]
				}
			},
			"response": []
		},
		{
			"name": "GET Receive",
			"event": [
				{
					"listen": "prerequest",
					"script": {
						"exec": [
							"//setTimeout(function(){}, [10000]);"
						],
						"type": "text/javascript"
					}
				},
				{
					"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",
							"            \"timestamp\": {\"type\": \"string\"},\r",
							"            \"readerID\": {\"type\": \"integer\"},\r",
							"            \"data\": {\"type\": \"string\"},\r",
							"        },\r",
							"        \"required\": [\"timestamp\", \"readerID\", \"data\"]\r",
							"    }\r",
							"    pm.response.to.have.jsonSchema(jsonSchema);\r",
							"});\r",
							""
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/spc/Receive",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"Receive"
					]
				}
			},
			"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/spc/Terminate",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"Terminate"
					]
				}
			},
			"response": []
		},
		{
			"name": "SSE ReceiveUpdates (not working because connection remains open)",
			"protocolProfileBehavior": {
				"disabledSystemHeaders": {}
			},
			"request": {
				"method": "GET",
				"header": [],
				"url": {
					"raw": "http://{{host}}:{{port}}/api/iidservice/spc/ReceiveUpdates",
					"protocol": "http",
					"host": [
						"{{host}}"
					],
					"port": "{{port}}",
					"path": [
						"api",
						"iidservice",
						"spc",
						"ReceiveUpdates"
					]
				}
			},
			"response": []
		}
	],
	"auth": {
		"type": "apikey",
		"apikey": [
			{
				"key": "key",
				"value": "ApiKey",
				"type": "string"
			},
			{
				"key": "value",
				"value": "hL4bA4nB4yI0vI0fC8fH7eT6",
				"type": "string"
			}
		]
	},
	"event": [
		{
			"listen": "prerequest",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		},
		{
			"listen": "test",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		}
	],
	"variable": [
		{
			"key": "host",
			"value": "localhost",
			"type": "default"
		},
		{
			"key": "port",
			"value": "19813",
			"type": "default"
		}
	]
}