From 055dbca92b12c2046ac7b6eac463efb12e8c60ae Mon Sep 17 00:00:00 2001 From: oysta_admin Date: Wed, 2 Jul 2025 14:55:17 +0000 Subject: [PATCH] Added default Oysta number fallback if the ARC number is not set --- access-ps-app | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/access-ps-app b/access-ps-app index 334ee25..41174ef 100644 --- a/access-ps-app +++ b/access-ps-app @@ -1 +1 @@ -{"Id":256,"Name":null,"Description":null,"FirmwareVersion":"","InProgress":false,"MessageTypes":[{"Id":7877,"Code":"COMM-SET_SOSNUMBER","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;SET_SOSNUMBER=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;SET_SOSNUMBER=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7877,\"Code\":\"COMM-SET_SOSNUMBER\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;SET_SOSNUMBER=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;SET_SOSNUMBER=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741272718},{"Type":1,"NewValue":"{\"Id\":7877,\"Code\":\"COMM-SET_SOSNUMBER\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;SET_SOSNUMBER=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;SET_SOSNUMBER=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183702}],"Tags":[]},{"Id":7677,"Code":"COMM-IS_REGISTERED","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;IS_REGISTERED=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;IS_REGISTERED=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7677,\"Code\":\"COMM-IS_REGISTERED\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;mid=<>;IS_REGISTERED=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;mid=[^;;]*;IS_REGISTERED=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183670}],"Tags":[]},{"Id":7676,"Code":"COMM-SET_USERID","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;SET_USERID=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;SET_USERID=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7676,\"Code\":\"COMM-SET_USERID\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;mid=<>;SET_USERID=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;mid=[^;;]*;SET_USERID=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183739}],"Tags":[]},{"Id":7675,"Code":"COMM-REGISTER","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;REGISTER=<>,<>,<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;REGISTER=[^,;]*,[^,,]*,[^;,]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7675,\"Code\":\"COMM-REGISTER\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;mid=<>;REGISTER=<>,<>,<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;mid=[^;;]*;REGISTER=[^,;]*,[^,,]*,[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183686}],"Tags":[]},{"Id":7593,"Code":"ALSOS","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALSOS;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALSOS;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7593,\"Code\":\"ALSOS\",\"Name\":null,\"MessageCode\":\"ALSOS\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALSOS;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALSOS;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185984},{"Type":1,"NewValue":"{\"Id\":7593,\"Code\":\"ALSOS\",\"Name\":null,\"MessageCode\":\"ALSOS\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"APS-<>;<>;<>;mid=<>;ALSOS;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALSOS;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214104}],"Tags":[]},{"Id":7592,"Code":"CYC","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;CYC;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CYC;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7592,\"Code\":\"CYC\",\"Name\":null,\"MessageCode\":\"CYC\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;CYC;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CYC;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747186003}],"Tags":[]},{"Id":7898,"Code":"ZNI","Name":null,"MessageCode":"ZNI","NeedAck":false,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":1,"Template":"+RESP:ZIN,<>,<>,<>,<>,<>,<>,<>,<>$","HasTemplateGlobal":false,"ResponseTemplate":null,"TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":true,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"\\+RESP:ZIN,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\$,]*\\$","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7898,\"Code\":\"ZNI\",\"Name\":null,\"MessageCode\":\"ZNI\",\"NeedAck\":false,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"+RESP:ZIN,<>,<>,<>,<>,<>,<>,<>,<>$\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"\\\\+RESP:ZIN,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\\\$,]*\\\\$\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741959809}],"Tags":[]},{"Id":7899,"Code":"ZNI","Name":null,"MessageCode":"ZNI","NeedAck":false,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":1,"Template":"+RESP:ZOUT,<>,<>,<>,<>,<>,<>,<>,<>$","HasTemplateGlobal":false,"ResponseTemplate":null,"TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":true,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"\\+RESP:ZOUT,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\$,]*\\$","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7899,\"Code\":\"ZNI\",\"Name\":null,\"MessageCode\":\"ZNI\",\"NeedAck\":false,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"+RESP:ZOUT,<>,<>,<>,<>,<>,<>,<>,<>$\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"\\\\+RESP:ZOUT,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\\\$,]*\\\\$\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741959833},{"Type":1,"NewValue":"{\"Id\":7899,\"Code\":\"ZNO\",\"Name\":null,\"MessageCode\":\"ZNO\",\"NeedAck\":false,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"+RESP:ZOUT,<>,<>,<>,<>,<>,<>,<>,<>$\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"\\\\+RESP:ZOUT,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\\\$,]*\\\\$\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741959860}],"Tags":[]},{"Id":7915,"Code":"CON-LOGIN","Name":null,"MessageCode":"CON","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;CON-LOGIN;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CON-LOGIN;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;CON-LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CON-LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743666904},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667018},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183762},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749618551},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749618889},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749619299}],"Tags":[]},{"Id":7916,"Code":"DISCON-LOGOUT","Name":null,"MessageCode":"DISCON","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;LOGOUT;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGOUT;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7916,\"Code\":\"DISCON-LOGOUT\",\"Name\":null,\"MessageCode\":\"DISCON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGOUT;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGOUT;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743666992},{"Type":1,"NewValue":"{\"Id\":7916,\"Code\":\"DISCON-LOGOUT\",\"Name\":null,\"MessageCode\":\"DISCON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGOUT;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGOUT;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185848}],"Tags":[]},{"Id":7917,"Code":"RTL-LIVE_ENABLE","Name":null,"MessageCode":"RTL","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;LIVE_ENABLE;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLE;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7917,\"Code\":\"RTL-LIVE_ENABLE\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLE;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLE;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667282},{"Type":1,"NewValue":"{\"Id\":7917,\"Code\":\"RTL-LIVE_ENABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667395},{"Type":1,"NewValue":"{\"Id\":7917,\"Code\":\"RTL-LIVE_ENABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185913},{"Type":1,"NewValue":"{\"Id\":7917,\"Code\":\"LOCN-LIVE_ENABLED\",\"Name\":null,\"MessageCode\":\"LOCN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214018}],"Tags":[]},{"Id":7918,"Code":"RTL-LIVE_DISABLED","Name":null,"MessageCode":"RTL","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7918,\"Code\":\"RTL-LIVE_DISABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667342},{"Type":1,"NewValue":"{\"Id\":7918,\"Code\":\"RTL-LIVE_DISABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185899},{"Type":1,"NewValue":"{\"Id\":7918,\"Code\":\"LOCN-LIVE_DISABLED\",\"Name\":null,\"MessageCode\":\"LOCN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750213991}],"Tags":[]},{"Id":7919,"Code":"INFO-OS_VERSION","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^;]*;TIME=[^;,]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7919,\"Code\":\"INFO-OS_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743670604},{"Type":1,"NewValue":"{\"Id\":7919,\"Code\":\"INFO-OS_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743751411},{"Type":1,"NewValue":"{\"Id\":7919,\"Code\":\"INFO-OS_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185817}],"Tags":[]},{"Id":7920,"Code":"INFO-APP_VERSION","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;APP_VERSION;APP=<>,<>,<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;APP_VERSION;APP=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7920,\"Code\":\"INFO-APP_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;APP_VERSION;APP=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;APP_VERSION;APP=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743751375},{"Type":1,"NewValue":"{\"Id\":7920,\"Code\":\"INFO-APP_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;APP_VERSION;APP=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;APP_VERSION;APP=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183814}],"Tags":[]},{"Id":7921,"Code":"INFO-NETWORK_INFO","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;NETWORK_INFO;NETWORK=<>,<>,<>,<>,<>,<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;NETWORK_INFO;NETWORK=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7921,\"Code\":\"INFO-NETWORK_INFO\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;NETWORK_INFO;NETWORK=<>,<>,<>,<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;NETWORK_INFO;NETWORK=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743758028},{"Type":1,"NewValue":"{\"Id\":7921,\"Code\":\"INFO-NETWORK_INFO\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;NETWORK_INFO;NETWORK=<>,<>,<>,<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;NETWORK_INFO;NETWORK=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747186018}],"Tags":[]},{"Id":7927,"Code":"PWRN","Name":null,"MessageCode":"PWRN","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;POWER_ON;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_ON;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7927,\"Code\":\"PWRN\",\"Name\":null,\"MessageCode\":\"PWRN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_ON;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_ON;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183225},{"Type":1,"NewValue":"{\"Id\":7927,\"Code\":\"PWRN\",\"Name\":null,\"MessageCode\":\"PWRN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_ON;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_ON;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185881}],"Tags":[]},{"Id":7928,"Code":"PWRF","Name":null,"MessageCode":"PWRF","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;POWER_OFF;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_OFF;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7928,\"Code\":\"PWRF\",\"Name\":null,\"MessageCode\":\"PWRF\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_OFF;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_OFF;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183279},{"Type":1,"NewValue":"{\"Id\":7928,\"Code\":\"PWRF\",\"Name\":null,\"MessageCode\":\"PWRF\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_OFF;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_OFF;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185862}],"Tags":[]},{"Id":7929,"Code":"INFO-DEBUG","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;DEBUG;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":"","LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":"","ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;DEBUG;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7929,\"Code\":\"INFO-DEBUG\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;DEBUG;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":\"\",\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":\"\",\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;DEBUG;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183542},{"Type":1,"NewValue":"{\"Id\":7929,\"Code\":\"INFO-DEBUG\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;DEBUG;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":\"\",\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":\"\",\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;DEBUG;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185796}],"Tags":[]},{"Id":8013,"Code":"ACK-CMD","Name":null,"MessageCode":"ACK","NeedAck":false,"IsAck":true,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"ACK-CMD;<>;<>;OK;","HasTemplateGlobal":false,"ResponseTemplate":null,"TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^ACK-CMD;[^;]*;[^;;]*;OK;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8013,\"Code\":\"ACK-CMD\",\"Name\":null,\"MessageCode\":\"ACK\",\"NeedAck\":false,\"IsAck\":true,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"ACK-CMD;<>;<>;OK;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^ACK-CMD;[^;]*;[^;;]*;OK;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749537162}],"Tags":[]},{"Id":8020,"Code":"PBB","Name":null,"MessageCode":"PBB","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;PBB;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;PBB;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8020,\"Code\":\"PBB\",\"Name\":null,\"MessageCode\":\"PBB\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;PBB;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;PBB;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214085}],"Tags":[]},{"Id":8021,"Code":"ALA-O","Name":null,"MessageCode":"ALA-O","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA-O;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-O;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8021,\"Code\":\"ALA-O\",\"Name\":null,\"MessageCode\":\"ALA-O\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA-O;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-O;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214346}],"Tags":[]},{"Id":8022,"Code":"ALA-C","Name":null,"MessageCode":"ALA-C","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA-C;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-C;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8022,\"Code\":\"ALA-C\",\"Name\":null,\"MessageCode\":\"ALA-C\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA-C;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-C;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214419}],"Tags":[]},{"Id":8023,"Code":"ALA-S","Name":null,"MessageCode":"ALA-S","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA-S;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-S;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8023,\"Code\":\"ALA-S\",\"Name\":null,\"MessageCode\":\"ALA-S\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA-S;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-S;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214484}],"Tags":[]},{"Id":8024,"Code":"ALA","Name":null,"MessageCode":"ALA","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8024,\"Code\":\"ALA\",\"Name\":null,\"MessageCode\":\"ALA\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214619},{"Type":1,"NewValue":"{\"Id\":8024,\"Code\":\"ALA\",\"Name\":null,\"MessageCode\":\"ALA\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214680}],"Tags":[]}],"Commands":[{"Id":5719,"Name":"SOS Number","TemplateSMS":null,"Template":"APSCMD-001;<>;<>;[0a]","AckTemplate":null,"Operation":"var command = \"SOSN=\" + params.AlertSettings.SOSNumber.replace(\"(\", \"\").replace(\")\", \"\");\nvar configs = [];\nsequenceNumber = (new Date().getTime()).toString(36);\nvar part1 = \"update=\" + sequenceNumber;\nconst _crypto = require('crypto');\nvar password = params.Password.Password;\nif (password === \"\") {\n var part2 = command;\n} else {\n var part2 = \"enc=\" + encrypt(command, part1, password);\n}\nAddValue(\"part1\", part1);\nAddValue(\"part2\", part2);\nAddValue(\"sequenceNumber\", sequenceNumber);\nvar commandConfigs = {\n template: \"main\",\n configs: configs,\n};\nmsg.push(JSON.stringify(commandConfigs));\n\nfunction AddValue(p1, p2) {\n var cvpair = {\n code: p1,\n value: p2\n };\n configs.push(cvpair);\n}\n\nfunction encrypt(text, mid, password) {\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\n const iv = _crypto.randomBytes(16); // random initialization vector\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\n // set the cipher\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\n // encrypt text\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\n // generate output ( encrypted text )\n return Buffer.concat([iv, encrypted]).toString('base64');\n}","CommandToUpdate":null,"Parent":null,"AvoidResending":false,"FollowParentSentType":false,"SendingType":0,"HasAck":true,"HexString":false,"Order":null,"SendAttempts":8,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":5719,\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\nconst _crypto = require('crypto');\\nvar password = params.Password.Password;\\nif (password === \\\"\\\") {\\n var part2 = command;\\n} else {\\n var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n}\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n\\nfunction encrypt(text, mid, password) {\\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n const iv = _crypto.randomBytes(16); // random initialization vector\\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n // set the cipher\\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n // encrypt text\\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n // generate output ( encrypted text )\\n return Buffer.concat([iv, encrypted]).toString('base64');\\n}\",\"CommandToUpdate\":null,\"Parent\":null,\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":0,\"HasAck\":true,\"HexString\":false,\"Order\":null,\"SendAttempts\":8,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747192387},{"Type":1,"NewValue":"{\"Id\":5719,\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\nconst _crypto = require('crypto');\\nvar password = params.Password.Password;\\nif (password === \\\"\\\") {\\n var part2 = command;\\n} else {\\n var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n}\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n\\nfunction encrypt(text, mid, password) {\\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n const iv = _crypto.randomBytes(16); // random initialization vector\\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n // set the cipher\\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n // encrypt text\\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n // generate output ( encrypted text )\\n return Buffer.concat([iv, encrypted]).toString('base64');\\n}\",\"CommandToUpdate\":null,\"Parent\":null,\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":3,\"HasAck\":true,\"HexString\":false,\"Order\":null,\"SendAttempts\":8,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747192811},{"Type":1,"NewValue":"{\"Id\":5719,\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\n// const _crypto = require('crypto');\\n// var password = params.Password.Password;\\n// if (password === \\\"\\\") {\\nvar part2 = command;\\n// } else {\\n// var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n// }\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n// function encrypt(text, mid, password) {\\n// var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n// const iv = _crypto.randomBytes(16); // random initialization vector\\n// const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n// // set the cipher\\n// const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n// // encrypt text\\n// const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n// // generate output ( encrypted text )\\n// return Buffer.concat([iv, encrypted]).toString('base64');\\n// }\",\"CommandToUpdate\":null,\"Parent\":null,\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":3,\"HasAck\":true,\"HexString\":false,\"Order\":null,\"SendAttempts\":8,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1748942103}],"Tags":[]}],"Operations":[{"Id":367,"Name":"apsapp_ops","Operation":"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\n // ADD THE OPS CODE HERE\n let tasks = []; // array of tasks to be executed\n var deviceParams = [];\n var configsToUpdate = [];\n AddValue(\"imei\", params.imei);\n // evaluate messageTypLocalCOde \n if (messageTypeLocalCode == \"COMM-REGISTER\") { // Create message\n let userId = params.userId;\n let phoneId = params.phoneId;\n let phoneNumber = params.phonenumber;\n let message = \"APS-001;\" + phoneId + \";mid=\" + params.count_number + \";SET_USERID=\" + userId + \";\";\n // sendMessageToLocalhost(message); \n tasks = [{\n \"name\": \"Create\" + phoneId,\n \"option\": \"sync\",\n \"type\": \"createDevice\",\n \"payload\": JSON.stringify({\n \"name\": \"APS\" + phoneId,\n \"imei\": phoneId,\n \"abortOnError\": false,\n \"init\": true,\n \"phoneNumber\": phoneNumber,\n // \"entity\":\"import_test\",\n }),\n \"order\": 1\n }, {\n \"name\": \"SetUserId\" + userId,\n \"option\": \"async\",\n \"type\": \"sendMessage\",\n \"payload\": JSON.stringify({\n \"message\": message\n }),\n \"order\": 2\n }]\n } else if (messageTypeLocalCode == \"COMM-SET_USERID\") { // Set Device ID message\n let userId = params.userId;\n AddValue(\"userId\", userId);\n AddConfigToUpdate(configIds.Config.UserId, userId);\n } else if (messageTypeLocalCode == \"COMM-IS_REGISTERED\") { // Get Device ID message\n // is the input deviceid the same as the one registered?\n let currentUserId = configs.Config.UserId;\n let newUserId = params.userId;\n AddValue(\"currentUserId\", currentUserId);\n AddValue(\"oldUserId\", configs.Config.UserIdOld);\n if (currentUserId !== newUserId) {\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\n }\n }\n var msg = {\n 'values': deviceParams,\n };\n if (tasks.length > 0) {\n msg.tasks = tasks;\n }\n if (configsToUpdate.length > 0) {\n msg.configsToUpdate = configsToUpdate\n };\n // modify to return the object that contains your data\n console.log(msg);\n return msg;\n\n function AddValue(p1, p2) {\n var cvpair = {\n code: p1,\n value: p2\n };\n deviceParams.push(cvpair);\n }\n\n function AddConfigToUpdate(configName, newvalue) {\n if (newvalue !== undefined) { // don't add if newvalue is undefined\n var cvpair = {\n 'code': configName,\n 'value': newvalue,\n 'forced': true\n };\n configsToUpdate.push(cvpair);\n };\n }\n}\n// params is not defined locally -> export as module\nif (typeof(params) === 'undefined') {\n module.exports = {\n execute_ops\n }\n} else { // on server use local defined vars\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\n // define global returns\n msg = return_values;\n}","Type":0,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1741187532},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, configs.AlertSettings.SOSNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749537535},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, configs.AlertSettings.SOSNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749538759},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n // let sosNumber = configs.AlertSettings.SOSNumber;\\n let sosNumber = \\\"+441295530101\\\";\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749541147},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n // let sosNumber = configs.AlertSettings.SOSNumber;\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749541277},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n // let sosNumber = configs.AlertSettings.SOSNumber;\\n let sosNumber = \\\"+441295530101\\\";\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749541392},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749617741},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") {\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n if (sosNumber.startsWith(\\\"+\\\")) {\\n sosNumber = sosNumber.slice(1);\\n } else {\\n sosNumber = \\\"+\\\" + sosNumber;\\n }\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749628968},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n var configsToSend = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") {\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n if (sosNumber.startsWith(\\\"+\\\")) {\\n sosNumber = sosNumber.slice(1);\\n } else {\\n sosNumber = \\\"+\\\" + sosNumber;\\n }\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToSend(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n if (configsToSend.length > 0) {\\n msg.configsToSend = configsToSend\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n\\n function AddConfigToSend(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToSend.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749630769},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n var configsToSend = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") {\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n if (!sosNumber || sosNumber.trim() === \\\"\\\" || sosNumber.trim() === \\\"+\\\" || sosNumber.replace(/[\\\\s+]/g, \\\"\\\") === \\\"\\\") {\\n sosNumber = \\\"+441295530101\\\"; // DEFAULT OYSTA SUPPORT PHONE NUMBER\\n }\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToSend(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n if (configsToSend.length > 0) {\\n msg.configsToSend = configsToSend\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n\\n function AddConfigToSend(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToSend.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1751467922}]}],"Groups":[{"Id":7041,"Parent":null,"Name":"Admin","Json":"{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]}","DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"LanguageId":null,"ProtocolActionObjects":[]},{"Id":7043,"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Name":"Config","Json":"{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]}","DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"LanguageId":null,"ProtocolActionObjects":[]},{"Id":7310,"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Name":"Alert Settings","Json":"{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]}","DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"LanguageId":null,"ProtocolActionObjects":[]}],"GroupParams":[{"Id":11877,"Group":{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},"Name":"UserId","Json":"{\"name\":\"UserId\",\"default\":\"\",\"description\":\"The latest User ID using this device.\",\"type\":\"text\",\"suffix\":null,\"prefix\":null,\"min\":null,\"max\":null,\"futureOnly\":false,\"integerOnly\":false,\"isReadOnly\":false,\"isHidden\":false,\"minLength\":null,\"maxLength\":null,\"helpText\":null,\"options\":[],\"toTranslate\":[\"name\",\"description\",\"helpText\"]}","Default":"","Command":null,"ProtocolActionObjects":[],"LanguageId":null,"Tags":[]},{"Id":12270,"Group":{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},"Name":"SOS Number","Json":"{\"name\":\"SOS Number\",\"default\":\"\",\"description\":\"SOS number\",\"type\":\"phone\",\"suffix\":null,\"prefix\":null,\"min\":null,\"max\":null,\"futureOnly\":false,\"integerOnly\":false,\"isReadOnly\":true,\"isHidden\":false,\"minLength\":null,\"maxLength\":null,\"helpText\":\"The number called when the Alert button is pushed on the device (typically the ARC)\",\"options\":[],\"toTranslate\":[\"name\",\"description\",\"helpText\"]}","Default":"","Command":null,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":true,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":null,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741189055},{"Type":1,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":false,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":null,\"ProtocolActionObjects\":[],\"LanguageId\":null,\"Tags\":[]}","Timestamp":1748925810},{"Type":1,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":false,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":null,\"ProtocolActionObjects\":[],\"LanguageId\":null,\"Tags\":[]}","Timestamp":1748941964},{"Type":0,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":false,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":{\"Id\":5719,\"Protocol\":{\"Id\":256,\"Code\":\"Access PS App\",\"Version\":\"0.6\",\"FirmwareVersion\":\"\",\"Product\":null,\"AvailableVersions\":[],\"HistoryVersions\":[],\"IsChanged\":true},\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\nconst _crypto = require('crypto');\\nvar password = params.Password.Password;\\nif (password === \\\"\\\") {\\n var part2 = command;\\n} else {\\n var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n}\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n\\nfunction encrypt(text, mid, password) {\\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n const iv = _crypto.randomBytes(16); // random initialization vector\\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n // set the cipher\\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n // encrypt text\\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n // generate output ( encrypted text )\\n return Buffer.concat([iv, encrypted]).toString('base64');\\n}\",\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":3,\"CommandToUpdateId\":null,\"ParentId\":null,\"Parent\":null,\"HasAck\":true,\"HexString\":false,\"SendAttempts\":8,\"Order\":null},\"ProtocolActionObjects\":[],\"LanguageId\":null,\"Tags\":[]}","Timestamp":1748941969}],"LanguageId":null,"Tags":[]},{"Id":12270,"Group":{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},"Name":"SOS Number","Json":"{\"name\":\"SOS Number\",\"default\":\"\",\"description\":\"SOS number\",\"type\":\"text\",\"suffix\":null,\"prefix\":null,\"min\":null,\"max\":null,\"futureOnly\":false,\"integerOnly\":false,\"isReadOnly\":false,\"isHidden\":false,\"minLength\":null,\"maxLength\":null,\"helpText\":\"The number called when the Alert button is pushed on the device (typically the ARC)\",\"options\":[],\"toTranslate\":[\"name\",\"description\",\"helpText\"]}","Default":"","Command":{"Id":5719,"Protocol":{"Id":256,"Code":"Access PS App","Version":"0.6","FirmwareVersion":"","Product":null,"AvailableVersions":[],"HistoryVersions":[],"IsChanged":true},"Name":"SOS Number","TemplateSMS":null,"Template":"APSCMD-001;<>;<>;[0a]","AckTemplate":null,"Operation":"var command = \"SOSN=\" + params.AlertSettings.SOSNumber.replace(\"(\", \"\").replace(\")\", \"\");\nvar configs = [];\nsequenceNumber = (new Date().getTime()).toString(36);\nvar part1 = \"update=\" + sequenceNumber;\nconst _crypto = require('crypto');\nvar password = params.Password.Password;\nif (password === \"\") {\n var part2 = command;\n} else {\n var part2 = \"enc=\" + encrypt(command, part1, password);\n}\nAddValue(\"part1\", part1);\nAddValue(\"part2\", part2);\nAddValue(\"sequenceNumber\", sequenceNumber);\nvar commandConfigs = {\n template: \"main\",\n configs: configs,\n};\nmsg.push(JSON.stringify(commandConfigs));\n\nfunction AddValue(p1, p2) {\n var cvpair = {\n code: p1,\n value: p2\n };\n configs.push(cvpair);\n}\n\nfunction encrypt(text, mid, password) {\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\n const iv = _crypto.randomBytes(16); // random initialization vector\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\n // set the cipher\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\n // encrypt text\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\n // generate output ( encrypted text )\n return Buffer.concat([iv, encrypted]).toString('base64');\n}","AvoidResending":false,"FollowParentSentType":false,"SendingType":3,"CommandToUpdateId":null,"ParentId":null,"Parent":null,"HasAck":true,"HexString":false,"SendAttempts":8,"Order":null},"ProtocolActionObjects":[],"LanguageId":null,"Tags":[]}],"ProtocolChanges":[{"Version":"0.2","UserName":"IbrahimMeman","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) Added sos number","Timestamp":1741187532},{"Version":"0.2","UserName":"IbrahimMeman","Resource":"GroupParam","Name":"SOS Number","Message":"(Update) (SOS Number) Changed to read only text","Timestamp":1741189055},{"Version":"0.2","UserName":"IbrahimMeman","Resource":"MessageType","Name":"COMM-SET_SOSNUMBER","Message":"(Update) (COMM-SET_SOSNUMBER) updated template\n","Timestamp":1741272718},{"Version":"0.2","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"Set SOS Number added","Timestamp":1741327405},{"Version":"0.3","UserName":"David_Admin","Resource":"MessageType","Name":"ZNI","Message":"(Create) (ZNI) Zone in was missing","Timestamp":1741959809},{"Version":"0.3","UserName":"David_Admin","Resource":"MessageType","Name":"ZNI","Message":"(Create) (ZNI) Zone in was missing","Timestamp":1741959833},{"Version":"0.3","UserName":"David_Admin","Resource":"MessageType","Name":"ZNO","Message":"(Update) (ZNO) I put the wrong zone in.","Timestamp":1741959860},{"Version":"0.3","UserName":"Sean-Admin","Resource":"Protocol","Name":null,"Message":"Zone In and out messages added","Timestamp":1742826249},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Create) (CON-LOGIN) Added Login protocol","Timestamp":1743666904},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"DISCON-LOGOUT","Message":"(Create) (DISCON-LOGOUT) Added Logout protocol","Timestamp":1743666992},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) Modified Login protocol","Timestamp":1743667018},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_ENABLE","Message":"(Create) (RTL-LIVE_ENABLE) Added Live Enabled Protocol","Timestamp":1743667282},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_DISABLED","Message":"(Create) (RTL-LIVE_DISABLED) Added Live Disabled Protocol","Timestamp":1743667342},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_ENABLED","Message":"(Update) (RTL-LIVE_ENABLED) Changed Name for Live Enabled Protocol","Timestamp":1743667395},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-OS_VERSION","Message":"(Create) (INFO-OS_VERSION) Added OS Version protocol","Timestamp":1743670604},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-APP_VERSION","Message":"(Create) (INFO-APP_VERSION) Added App version Protocol","Timestamp":1743751375},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-OS_VERSION","Message":"(Update) (INFO-OS_VERSION) Modified OS version protocol to add device","Timestamp":1743751411},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-NETWORK_INFO","Message":"(Create) (INFO-NETWORK_INFO) Added Network Info protocol","Timestamp":1743758028},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"Added login, logout, rtl, app & os info, net info protocols","Timestamp":1745321781},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRN","Message":"(Create) (PWRN) add power on protocol","Timestamp":1747183225},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRF","Message":"(Create) (PWRF) add power off protocol","Timestamp":1747183279},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-DEBUG","Message":"(Create) (INFO-DEBUG) add debug protocol","Timestamp":1747183542},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-IS_REGISTERED","Message":"(Update) (COMM-IS_REGISTERED) is_registered no command","Timestamp":1747183670},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-REGISTER","Message":"(Update) (COMM-REGISTER) register no command","Timestamp":1747183686},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-SET_SOSNUMBER","Message":"(Update) (COMM-SET_SOSNUMBER) set_sosnumber no command","Timestamp":1747183702},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-SET_USERID","Message":"(Update) (COMM-SET_USERID) set_userid no command","Timestamp":1747183739},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) login no command","Timestamp":1747183762},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-APP_VERSION","Message":"(Update) (INFO-APP_VERSION) app_version no command","Timestamp":1747183814},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-DEBUG","Message":"(Update) (INFO-DEBUG) debug no command","Timestamp":1747185796},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-OS_VERSION","Message":"(Update) (INFO-OS_VERSION) os_version no command","Timestamp":1747185817},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"DISCON-LOGOUT","Message":"(Update) (DISCON-LOGOUT) logout no command","Timestamp":1747185848},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRF","Message":"(Update) (PWRF) power_off no command","Timestamp":1747185862},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRN","Message":"(Update) (PWRN) power_on no command","Timestamp":1747185881},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_DISABLED","Message":"(Update) (RTL-LIVE_DISABLED) live_disabled no command","Timestamp":1747185899},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_ENABLED","Message":"(Update) (RTL-LIVE_ENABLED) live_enabled no command","Timestamp":1747185913},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALSOS","Message":"(Update) (ALSOS) alsos ack first","Timestamp":1747185984},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CYC","Message":"(Update) (CYC) cyc ack first","Timestamp":1747186003},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-NETWORK_INFO","Message":"(Update) (INFO-NETWORK_INFO) network_info ack first","Timestamp":1747186018},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"Command","Name":"SOS Number","Message":"(Create) (SOS Number) send sos number command","Timestamp":1747192387},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"Command","Name":"SOS Number","Message":"(Update) (SOS Number) changed send to gprs only","Timestamp":1747192811},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"added pwrn, pwrf, debug protocols","Timestamp":1748491424},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"GroupParam","Name":"SOS Number","Message":"(Update) (SOS Number) Allow update of SOS Number","Timestamp":1748925810},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"GroupParam","Name":"SOS Number","Message":"(Update) (SOS Number) Added command to be executed","Timestamp":1748941964},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"GroupParam","Name":"SOS Number","Message":"Associate groupParam SOS Number to command SOS Number","Timestamp":1748941969},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Command","Name":"SOS Number","Message":"(Update) (SOS Number) removed encryption","Timestamp":1748942103},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ACK-CMD","Message":"(Create) (ACK-CMD) Ack for command from server","Timestamp":1749537162},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) Set SOS Number as forced when login is detected","Timestamp":1749537535},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) modified login script","Timestamp":1749538759},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) default sos number","Timestamp":1749541147},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) use current sos number but forced on login","Timestamp":1749541277},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) default number","Timestamp":1749541392},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) use current sos number","Timestamp":1749617741},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) send command for login\n","Timestamp":1749618551},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) remove command send from login","Timestamp":1749618889},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) allow command for login","Timestamp":1749619299},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) sosnumber testing","Timestamp":1749628968},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) added config to send","Timestamp":1749630769},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"LOCN-LIVE_DISABLED","Message":"(Update) (LOCN-LIVE_DISABLED) Changed RTL-DISABLED -> LOCN-DISABLED","Timestamp":1750213991},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"LOCN-LIVE_ENABLED","Message":"(Update) (LOCN-LIVE_ENABLED) Changed RTL-ENABLED -> LOCN-ENABLED","Timestamp":1750214018},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PBB","Message":"(Create) (PBB) Added PBB","Timestamp":1750214085},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALSOS","Message":"(Update) (ALSOS) Updated ALSOS to type Alarm","Timestamp":1750214104},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA-O","Message":"(Create) (ALA-O) added ALA-O","Timestamp":1750214346},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA-C","Message":"(Create) (ALA-C) added ALA-C","Timestamp":1750214419},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA-S","Message":"(Create) (ALA-S) added ALA-S","Timestamp":1750214484},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA","Message":"(Create) (ALA) added ALA","Timestamp":1750214619},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA","Message":"(Update) (ALA) changed ALA to Alarm","Timestamp":1750214680},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"Deploy 0.6","Timestamp":1751290674},{"Version":"0.7","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) added default Oysta number fallback if the ARC is not set","Timestamp":1751467922}],"ProtocolActionObjects":[],"Tags":[{"Id":2156,"Name":"PermitDuplicates","BackendAction":"PermitReceiverDublicates","Value":"True"},{"Id":2157,"Name":"OneCommandSender","BackendAction":"OneCommandSender","Value":"True"}],"MessageCodes":[{"Name":"Alarm - Movement","Description":"At alert on movement ( not fall)","Code":"ALMOV","CanLiveInsights":false},{"Name":"Alarm-Welfare Check","Description":"Welfare check alarm","Code":"ALW","CanLiveInsights":false},{"Name":"Cycle","Description":"Regular, cyclic, events from a device","Code":"CYC","CanLiveInsights":false},{"Name":"Location - other","Description":"Location - other","Code":"LOCN","CanLiveInsights":false},{"Name":"Acknowledge","Description":"Acknowledgment of a command sent to the device","Code":"ACK","CanLiveInsights":false},{"Name":"Battery Charging - On","Description":"Battery Charging - On","Code":"BATCN","CanLiveInsights":false},{"Name":"Check / keep alive / Heartbeat","Description":"Keep alive / heartbeat signal to maintain a connection ","Code":"CHK","CanLiveInsights":false},{"Name":"Alarm - Amber Alert","Description":"Alarm - Amber Alert","Code":"ALA","CanLiveInsights":false},{"Name":"Alarm – Fall","Description":"Alarm – Fall","Code":"ALF","CanLiveInsights":false},{"Name":"Alarm – Non movement","Description":"Alarm – Non movement","Code":"ALNM","CanLiveInsights":false},{"Name":"Alarm - Smoke","Description":"Alarm - Smoke","Code":"ALSM","CanLiveInsights":false},{"Name":"Alarm - Speed","Description":"Alarm - Speed","Code":"ALSP","CanLiveInsights":false},{"Name":"Alarm – Emergency Cancelled","Description":"Alarm – Emergency Cancelled by the user","Code":"ALSOS-C","CanLiveInsights":false},{"Name":"Battery Charging - off","Description":"Battery Charging - off","Code":"BATCF","CanLiveInsights":false},{"Name":"Battery empty","Description":"Battery empty","Code":"BATE","CanLiveInsights":false},{"Name":"Battery full","Description":"Battery full","Code":"BATF","CanLiveInsights":false},{"Name":"Battery low","Description":"Battery low","Code":"BATL","CanLiveInsights":false},{"Name":"Button Press","Description":"Button Press","Code":"BPRS","CanLiveInsights":false},{"Name":"Ebeacon zone in","Description":"Ebeacon zone in","Code":"EBZI","CanLiveInsights":false},{"Name":"Ebeacon zone out","Description":"Ebeacon zone out","Code":"EBZO","CanLiveInsights":false},{"Name":"Location check in","Description":"Location check in","Code":"LCI","CanLiveInsights":false},{"Name":"Location check out","Description":"Location check out","Code":"LCO","CanLiveInsights":false},{"Name":"Reminder not ok","Description":"Reminder not ok","Code":"MRME","CanLiveInsights":false},{"Name":"No Activity","Description":"No Activity","Code":"NACT","CanLiveInsights":false},{"Name":"Power Off","Description":"Power Off","Code":"PWRF","CanLiveInsights":false},{"Name":"Power On","Description":"Power On","Code":"PWRN","CanLiveInsights":false},{"Name":"Vehicle - Driving hours excess","Description":"Vehicle - Driving hours excess","Code":"VDE","CanLiveInsights":false},{"Name":"Vehicle – Fuel cap","Description":"Vehicle – Fuel cap","Code":"VFC","CanLiveInsights":false},{"Name":"Vehicle - Fuel level","Description":"Vehicle - Fuel level","Code":"VFL","CanLiveInsights":false},{"Name":"Vehicle – Harsh braking","Description":"Vehicle – Harsh braking","Code":"VHB","CanLiveInsights":false},{"Name":"Vehicle – Ignition off","Description":"Vehicle – Ignition off","Code":"VIGF","CanLiveInsights":false},{"Name":"Vehicle – Driver not authorized","Description":"Vehicle – Driver not authorized","Code":"VNA","CanLiveInsights":false},{"Name":"Vehicle – Night driving","Description":"Vehicle – Night driving","Code":"VND","CanLiveInsights":false},{"Name":"Vehicle – Ignition on","Description":"Vehicle – Ignition on","Code":"VIGN","CanLiveInsights":false},{"Name":"Vehicle – Seat belt","Description":"Vehicle – Seat belt","Code":"VSB","CanLiveInsights":false},{"Name":"Zone in","Description":"Zone in","Code":"ZNI","CanLiveInsights":false},{"Name":"Zone out","Description":"Zone out","Code":"ZNO","CanLiveInsights":false},{"Name":"Device Status","Description":"Device Status","Code":"STATUS","CanLiveInsights":false},{"Name":"Real time location ","Description":"Real time location ","Code":"RTL","CanLiveInsights":false},{"Name":"Encoded communication","Description":"Encoded communication","Code":"ENC","CanLiveInsights":false},{"Name":"Proximity","Description":"Proximity alert ","Code":"PROX","CanLiveInsights":false},{"Name":"Dummy - do NOT use ","Description":"Dummy template - should not be used","Code":"DUMMY","CanLiveInsights":false},{"Name":"Battery High","Description":"Battery High","Code":"BATH","CanLiveInsights":false},{"Name":"Location - Set Available","Description":"Location - Set Available","Code":"LSA","CanLiveInsights":false},{"Name":"Location - Set Busy","Description":"Location - Set Busy","Code":"LSB","CanLiveInsights":false},{"Name":"Device information","Description":"General Device Information from the device","Code":"INFO","CanLiveInsights":false},{"Name":"Alarm - Tamper","Description":"Alarm - Device Tamper","Code":"ALTAM","CanLiveInsights":false},{"Name":"Communication ","Description":"General communication, initialisation etc.","Code":"COMM","CanLiveInsights":false},{"Name":"Humidity","Description":"Relative humidity","Code":"RH","CanLiveInsights":false},{"Name":"Temperature","Description":"Temperature","Code":"TEMP","CanLiveInsights":false},{"Name":"Alarm - Temperature","Description":"Alarm - Temperature","Code":"ALTEMP","CanLiveInsights":false},{"Name":"Alarm - Humidity","Description":"Alarm - Relative Humidity","Code":"ALRH","CanLiveInsights":false},{"Name":"Proximity End","Description":"Proximity End","Code":"PROX-E","CanLiveInsights":false},{"Name":"Alarm - PIR","Description":"Alarm - PIR","Code":"ALPIR","CanLiveInsights":false},{"Name":"PIR - Movements","Description":"Number of PIR movements detected in reporting period","Code":"PIRM","CanLiveInsights":false},{"Name":"Battery Report","Description":"Battery Voltage Report","Code":"BATR","CanLiveInsights":false},{"Name":"Alarm - Sim Swap","Description":"Alarm - Sim Swap","Code":"ALSS","CanLiveInsights":false},{"Name":"Mileage","Description":"Mileage","Code":"MIL","CanLiveInsights":false},{"Name":"Intrusion","Description":"Intrusion","Code":"INT","CanLiveInsights":false},{"Name":"No Fix Report","Description":"No fix report","Code":"NFR","CanLiveInsights":false},{"Name":"Switched Off Report","Description":"Switched off report","Code":"SOR","CanLiveInsights":false},{"Name":"End - Shift","Description":"End - Shift","Code":"ENDSH","CanLiveInsights":false},{"Name":"Sleep Mode","Description":"Device comes to sleep mode","Code":"SPM","CanLiveInsights":false},{"Name":"Wake Up Device","Description":"Device Wake Up from SleepMode","Code":"WUD","CanLiveInsights":false},{"Name":"Door Closed","Description":"Door Closed","Code":"DRCL","CanLiveInsights":false},{"Name":"Door Open","Description":"Door Open","Code":"DRO","CanLiveInsights":false},{"Name":"Alarm Door Closed","Description":"Alarm Door Closed","Code":"ALDC","CanLiveInsights":false},{"Name":"Alarm Door Open","Description":"Alarm Door Open","Code":"ALDO","CanLiveInsights":false},{"Name":"Alarm - Amber Alert - Snooze","Description":"Amber Alert Alarm - snoozed by user","Code":"ALA-S","CanLiveInsights":false},{"Name":"Amber Alert - On","Description":"Amber Alert Alarm created by User","Code":"ALA-O","CanLiveInsights":false},{"Name":"Reminder OK","Description":"Reminder OK","Code":"MRMK","CanLiveInsights":false},{"Name":"Message - text","Description":"Message- text","Code":"MSG","CanLiveInsights":false},{"Name":"Start - Shift","Description":"Start- Shift","Code":"STSH","CanLiveInsights":false},{"Name":"Beacon","Description":"Beacon","Code":"BT","CanLiveInsights":false},{"Name":"Alarm - Amber Alert - Cancel","Description":"Amber alert alarm, cancelled by user","Code":"ALA-C","CanLiveInsights":false},{"Name":"Alarm-Impact","Description":"Alarm-Impact","Code":"ALI","CanLiveInsights":false},{"Name":"Reminder Snooze ","Description":"Reminder - snooze","Code":"MRM-S","CanLiveInsights":false},{"Name":"Blood Pressure","Description":"Blood Pressure","Code":"HBP","CanLiveInsights":false},{"Name":"Heart Rate","Description":"Heart Rate","Code":"HRT","CanLiveInsights":false},{"Name":"SELFTEST","Description":"Used for Testing Purposes","Code":"TEST","CanLiveInsights":false},{"Name":"Alarm - Fall Cancelled","Description":"Alarm - Fall Cancelled","Code":"ALF-C","CanLiveInsights":false},{"Name":"Alarm – Non Movement Cancelled","Description":"Alarm – Non movement Cancelled by the user","Code":"ALNM-C","CanLiveInsights":false},{"Name":"Insight","Description":"Insight","Code":"INSIGHT","CanLiveInsights":false},{"Name":"Quantity Drunk","Description":"Quantity of liquid drunk ","Code":"QDRNK","CanLiveInsights":false},{"Name":"Bed - in","Description":"Bed or seat sensor ","Code":"BEDIN","CanLiveInsights":false},{"Name":"Bed - Out","Description":"Bed / seat sensor","Code":"BEDOUT","CanLiveInsights":false},{"Name":"Leak sensor","Description":"Leak detected ","Code":"LEAK","CanLiveInsights":false},{"Name":"Light - Lux","Description":"Light levels - LUX ","Code":"LUX","CanLiveInsights":false},{"Name":"Exited","Description":"Exited","Code":"EXIT","CanLiveInsights":false},{"Name":"Entered","Description":"Entered","Code":"ENTER","CanLiveInsights":false},{"Name":"Answered Door","Description":"Answered Door","Code":"ANSWDR","CanLiveInsights":false},{"Name":"Alarm – Emergency","Description":"Alarm – Emergency","Code":"ALSOS","CanLiveInsights":true},{"Name":"Alarm – Gas","Description":"Alarm – Gas ( carbon monixide, carbon dioxide, propane, butane ) ","Code":"ALG","CanLiveInsights":false},{"Name":"Leak Off","Description":"Leak detection has stopped alerting","Code":"LEAK-OFF","CanLiveInsights":false},{"Name":"Question-Answer","Description":"Question - Answer response","Code":"Q-A","CanLiveInsights":false},{"Name":"Visitor Arrived","Description":"Visitor Arrived","Code":"VISARR","CanLiveInsights":true},{"Name":"Visitor Departed","Description":"Visitor Departed","Code":"VISDEP","CanLiveInsights":true},{"Name":"Docked","Description":"Device placed in docking station","Code":"DOCK-IN","CanLiveInsights":false},{"Name":"Undocked","Description":"Device removed from docking station","Code":"DOCK-OUT","CanLiveInsights":false},{"Name":"Gas concentrarion","Description":"Gas concentrarion (ppm)","Code":"GAS","CanLiveInsights":false},{"Name":"Distance ","Description":"Distance measurement, could be level, proximity etc ","Code":"DIST","CanLiveInsights":false},{"Name":"Alarm Distance","Description":"Alarm on distance measurement, could be level, proximity etc ","Code":"ALDIST","CanLiveInsights":false},{"Name":"Welfare OK","Description":"Welfare check has returned OK","Code":"WELFOK","CanLiveInsights":false},{"Name":"Steps","Description":"Step counter","Code":"STEPS","CanLiveInsights":true},{"Name":"Connection","Description":"Connection","Code":"CON","CanLiveInsights":false},{"Name":"Disconnection","Description":"Disconnect","Code":"DISCON","CanLiveInsights":false},{"Name":"Position By Button","Description":"Position By Button","Code":"PBB","CanLiveInsights":false},{"Name":"Alarm Welfare","Description":"Alert welfare not confirmed","Code":"ALA-W","CanLiveInsights":false},{"Name":"Welfare Timer Starts","Description":"Welfare Check in","Code":"WTS","CanLiveInsights":false},{"Name":"Welfare Stops","Description":"Welfare Check out","Code":"WSTP","CanLiveInsights":false},{"Name":"Alarm Ended","Description":"Alarm finished","Code":"ALA-F","CanLiveInsights":false},{"Name":"BRTH - Breath Rate","Description":"Rate of Breathing per minute","Code":"BRTH","CanLiveInsights":false},{"Name":"Sleep State","Description":"Sleep state ","Code":"SLPSTATE","CanLiveInsights":false},{"Name":"Alarm - Tilt","Description":"Alarm - Tilt Alert","Code":"ALTLT","CanLiveInsights":false},{"Name":"Alert – Fall Suspected","Description":"Alert – Fall Suspected","Code":"ALFS","CanLiveInsights":false}]} \ No newline at end of file +{"Id":256,"Name":null,"Description":null,"FirmwareVersion":"","InProgress":false,"MessageTypes":[{"Id":7877,"Code":"COMM-SET_SOSNUMBER","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;SET_SOSNUMBER=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;SET_SOSNUMBER=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7877,\"Code\":\"COMM-SET_SOSNUMBER\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;SET_SOSNUMBER=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;SET_SOSNUMBER=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741272718},{"Type":1,"NewValue":"{\"Id\":7877,\"Code\":\"COMM-SET_SOSNUMBER\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;SET_SOSNUMBER=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;SET_SOSNUMBER=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183702}],"Tags":[]},{"Id":7677,"Code":"COMM-IS_REGISTERED","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;IS_REGISTERED=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;IS_REGISTERED=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7677,\"Code\":\"COMM-IS_REGISTERED\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;mid=<>;IS_REGISTERED=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;mid=[^;;]*;IS_REGISTERED=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183670}],"Tags":[]},{"Id":7676,"Code":"COMM-SET_USERID","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;SET_USERID=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;SET_USERID=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7676,\"Code\":\"COMM-SET_USERID\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;mid=<>;SET_USERID=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;mid=[^;;]*;SET_USERID=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183739}],"Tags":[]},{"Id":7675,"Code":"COMM-REGISTER","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;mid=<>;REGISTER=<>,<>,<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;mid=[^;;]*;REGISTER=[^,;]*,[^,,]*,[^;,]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7675,\"Code\":\"COMM-REGISTER\",\"Name\":null,\"MessageCode\":\"COMM\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;mid=<>;REGISTER=<>,<>,<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;mid=[^;;]*;REGISTER=[^,;]*,[^,,]*,[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183686}],"Tags":[]},{"Id":7593,"Code":"ALSOS","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALSOS;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALSOS;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7593,\"Code\":\"ALSOS\",\"Name\":null,\"MessageCode\":\"ALSOS\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALSOS;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALSOS;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185984},{"Type":1,"NewValue":"{\"Id\":7593,\"Code\":\"ALSOS\",\"Name\":null,\"MessageCode\":\"ALSOS\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"APS-<>;<>;<>;mid=<>;ALSOS;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALSOS;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214104}],"Tags":[]},{"Id":7592,"Code":"CYC","Name":null,"MessageCode":null,"NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;CYC;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CYC;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":7592,\"Code\":\"CYC\",\"Name\":null,\"MessageCode\":\"CYC\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;CYC;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CYC;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747186003}],"Tags":[]},{"Id":7898,"Code":"ZNI","Name":null,"MessageCode":"ZNI","NeedAck":false,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":1,"Template":"+RESP:ZIN,<>,<>,<>,<>,<>,<>,<>,<>$","HasTemplateGlobal":false,"ResponseTemplate":null,"TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":true,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"\\+RESP:ZIN,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\$,]*\\$","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7898,\"Code\":\"ZNI\",\"Name\":null,\"MessageCode\":\"ZNI\",\"NeedAck\":false,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"+RESP:ZIN,<>,<>,<>,<>,<>,<>,<>,<>$\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"\\\\+RESP:ZIN,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\\\$,]*\\\\$\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741959809}],"Tags":[]},{"Id":7899,"Code":"ZNI","Name":null,"MessageCode":"ZNI","NeedAck":false,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":1,"Template":"+RESP:ZOUT,<>,<>,<>,<>,<>,<>,<>,<>$","HasTemplateGlobal":false,"ResponseTemplate":null,"TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":true,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"\\+RESP:ZOUT,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\$,]*\\$","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7899,\"Code\":\"ZNI\",\"Name\":null,\"MessageCode\":\"ZNI\",\"NeedAck\":false,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"+RESP:ZOUT,<>,<>,<>,<>,<>,<>,<>,<>$\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"\\\\+RESP:ZOUT,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\\\$,]*\\\\$\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741959833},{"Type":1,"NewValue":"{\"Id\":7899,\"Code\":\"ZNO\",\"Name\":null,\"MessageCode\":\"ZNO\",\"NeedAck\":false,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"+RESP:ZOUT,<>,<>,<>,<>,<>,<>,<>,<>$\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"\\\\+RESP:ZOUT,[^,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^\\\\$,]*\\\\$\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741959860}],"Tags":[]},{"Id":7915,"Code":"CON-LOGIN","Name":null,"MessageCode":"CON","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;CON-LOGIN;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CON-LOGIN;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;CON-LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;CON-LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743666904},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667018},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183762},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749618551},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749618889},{"Type":1,"NewValue":"{\"Id\":7915,\"Code\":\"CON-LOGIN\",\"Name\":null,\"MessageCode\":\"CON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGIN;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGIN;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749619299}],"Tags":[]},{"Id":7916,"Code":"DISCON-LOGOUT","Name":null,"MessageCode":"DISCON","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;LOGOUT;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGOUT;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7916,\"Code\":\"DISCON-LOGOUT\",\"Name\":null,\"MessageCode\":\"DISCON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGOUT;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGOUT;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743666992},{"Type":1,"NewValue":"{\"Id\":7916,\"Code\":\"DISCON-LOGOUT\",\"Name\":null,\"MessageCode\":\"DISCON\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LOGOUT;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LOGOUT;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185848}],"Tags":[]},{"Id":7917,"Code":"RTL-LIVE_ENABLE","Name":null,"MessageCode":"RTL","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;LIVE_ENABLE;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLE;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7917,\"Code\":\"RTL-LIVE_ENABLE\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLE;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLE;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667282},{"Type":1,"NewValue":"{\"Id\":7917,\"Code\":\"RTL-LIVE_ENABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667395},{"Type":1,"NewValue":"{\"Id\":7917,\"Code\":\"RTL-LIVE_ENABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185913},{"Type":1,"NewValue":"{\"Id\":7917,\"Code\":\"LOCN-LIVE_ENABLED\",\"Name\":null,\"MessageCode\":\"LOCN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_ENABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_ENABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214018}],"Tags":[]},{"Id":7918,"Code":"RTL-LIVE_DISABLED","Name":null,"MessageCode":"RTL","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7918,\"Code\":\"RTL-LIVE_DISABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743667342},{"Type":1,"NewValue":"{\"Id\":7918,\"Code\":\"RTL-LIVE_DISABLED\",\"Name\":null,\"MessageCode\":\"RTL\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185899},{"Type":1,"NewValue":"{\"Id\":7918,\"Code\":\"LOCN-LIVE_DISABLED\",\"Name\":null,\"MessageCode\":\"LOCN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;LIVE_DISABLED;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;LIVE_DISABLED;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750213991}],"Tags":[]},{"Id":7919,"Code":"INFO-OS_VERSION","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^;]*;TIME=[^;,]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7919,\"Code\":\"INFO-OS_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743670604},{"Type":1,"NewValue":"{\"Id\":7919,\"Code\":\"INFO-OS_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743751411},{"Type":1,"NewValue":"{\"Id\":7919,\"Code\":\"INFO-OS_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;OS_VERSION;OS=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;OS_VERSION;OS=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185817}],"Tags":[]},{"Id":7920,"Code":"INFO-APP_VERSION","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;APP_VERSION;APP=<>,<>,<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;APP_VERSION;APP=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7920,\"Code\":\"INFO-APP_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;APP_VERSION;APP=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;APP_VERSION;APP=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743751375},{"Type":1,"NewValue":"{\"Id\":7920,\"Code\":\"INFO-APP_VERSION\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;APP_VERSION;APP=<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;APP_VERSION;APP=[^,;]*,[^,,]*,[^;]*;TIME=[^;,]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183814}],"Tags":[]},{"Id":7921,"Code":"INFO-NETWORK_INFO","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;NETWORK_INFO;NETWORK=<>,<>,<>,<>,<>,<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;NETWORK_INFO;NETWORK=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7921,\"Code\":\"INFO-NETWORK_INFO\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;NETWORK_INFO;NETWORK=<>,<>,<>,<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;NETWORK_INFO;NETWORK=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1743758028},{"Type":1,"NewValue":"{\"Id\":7921,\"Code\":\"INFO-NETWORK_INFO\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;NETWORK_INFO;NETWORK=<>,<>,<>,<>,<>,<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;NETWORK_INFO;NETWORK=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747186018}],"Tags":[]},{"Id":7927,"Code":"PWRN","Name":null,"MessageCode":"PWRN","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;POWER_ON;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_ON;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7927,\"Code\":\"PWRN\",\"Name\":null,\"MessageCode\":\"PWRN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_ON;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_ON;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183225},{"Type":1,"NewValue":"{\"Id\":7927,\"Code\":\"PWRN\",\"Name\":null,\"MessageCode\":\"PWRN\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_ON;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_ON;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185881}],"Tags":[]},{"Id":7928,"Code":"PWRF","Name":null,"MessageCode":"PWRF","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;POWER_OFF;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_OFF;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7928,\"Code\":\"PWRF\",\"Name\":null,\"MessageCode\":\"PWRF\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_OFF;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_OFF;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183279},{"Type":1,"NewValue":"{\"Id\":7928,\"Code\":\"PWRF\",\"Name\":null,\"MessageCode\":\"PWRF\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;POWER_OFF;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;POWER_OFF;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185862}],"Tags":[]},{"Id":7929,"Code":"INFO-DEBUG","Name":null,"MessageCode":"INFO","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;DEBUG;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":"","LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":"","ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;DEBUG;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":7929,\"Code\":\"INFO-DEBUG\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;DEBUG;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":\"\",\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":\"\",\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;DEBUG;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747183542},{"Type":1,"NewValue":"{\"Id\":7929,\"Code\":\"INFO-DEBUG\",\"Name\":null,\"MessageCode\":\"INFO\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;DEBUG;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":\"\",\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":true,\"ProtocolsLibraryMethod\":\"\",\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;DEBUG;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747185796}],"Tags":[]},{"Id":8013,"Code":"ACK-CMD","Name":null,"MessageCode":"ACK","NeedAck":false,"IsAck":true,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"ACK-CMD;<>;<>;OK;","HasTemplateGlobal":false,"ResponseTemplate":null,"TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":false,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^ACK-CMD;[^;]*;[^;;]*;OK;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8013,\"Code\":\"ACK-CMD\",\"Name\":null,\"MessageCode\":\"ACK\",\"NeedAck\":false,\"IsAck\":true,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"ACK-CMD;<>;<>;OK;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":null,\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":false,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^ACK-CMD;[^;]*;[^;;]*;OK;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1749537162}],"Tags":[]},{"Id":8020,"Code":"PBB","Name":null,"MessageCode":"PBB","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;PBB;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;PBB;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8020,\"Code\":\"PBB\",\"Name\":null,\"MessageCode\":\"PBB\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;PBB;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;PBB;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214085}],"Tags":[]},{"Id":8021,"Code":"ALA-O","Name":null,"MessageCode":"ALA-O","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA-O;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-O;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8021,\"Code\":\"ALA-O\",\"Name\":null,\"MessageCode\":\"ALA-O\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA-O;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-O;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214346}],"Tags":[]},{"Id":8022,"Code":"ALA-C","Name":null,"MessageCode":"ALA-C","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA-C;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-C;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8022,\"Code\":\"ALA-C\",\"Name\":null,\"MessageCode\":\"ALA-C\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA-C;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-C;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214419}],"Tags":[]},{"Id":8023,"Code":"ALA-S","Name":null,"MessageCode":"ALA-S","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA-S;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-S;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8023,\"Code\":\"ALA-S\",\"Name\":null,\"MessageCode\":\"ALA-S\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA-S;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA-S;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214484}],"Tags":[]},{"Id":8024,"Code":"ALA","Name":null,"MessageCode":"ALA","NeedAck":true,"IsAck":false,"IsFailAck":false,"IsAckHexString":false,"NoOperation":false,"Type":0,"Template":"APS-<>;<>;<>;mid=<>;ALA;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;","HasTemplateGlobal":false,"ResponseTemplate":"ACK-MSG;<>;OK;","TemplateGlobal":null,"LongConnection":false,"HexString":false,"AckFirst":true,"ScaipH":false,"DoNotSendCommands":false,"ProtocolsLibraryMethod":null,"ProtocolsLibraryMethodArgs":null,"Command":null,"CacheImei":false,"RegEx":"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;","RegExGlobal":"","IsDeviceUpdate":false,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":8024,\"Code\":\"ALA\",\"Name\":null,\"MessageCode\":\"ALA\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":0,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214619},{"Type":1,"NewValue":"{\"Id\":8024,\"Code\":\"ALA\",\"Name\":null,\"MessageCode\":\"ALA\",\"NeedAck\":true,\"IsAck\":false,\"IsFailAck\":false,\"IsAckHexString\":false,\"NoOperation\":false,\"Type\":1,\"Template\":\"APS-<>;<>;<>;mid=<>;ALA;LOTH=<>,<>,<>,<>,<>;BATP=<>;TIME=<>;\",\"HasTemplateGlobal\":false,\"ResponseTemplate\":\"ACK-MSG;<>;OK;\",\"TemplateGlobal\":null,\"LongConnection\":false,\"HexString\":false,\"AckFirst\":true,\"ScaipH\":false,\"DoNotSendCommands\":false,\"ProtocolsLibraryMethod\":null,\"ProtocolsLibraryMethodArgs\":null,\"Command\":null,\"CacheImei\":false,\"RegEx\":\"^APS-[^;]*;[^;;]*;[^;;]*;mid=[^;;]*;ALA;LOTH=[^,;]*,[^,,]*,[^,,]*,[^,,]*,[^;,]*;BATP=[^;;]*;TIME=[^;;]*;\",\"RegExGlobal\":\"\",\"IsDeviceUpdate\":false,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1750214680}],"Tags":[]}],"Commands":[{"Id":5719,"Name":"SOS Number","TemplateSMS":null,"Template":"APSCMD-001;<>;<>;[0a]","AckTemplate":null,"Operation":"var command = \"SOSN=\" + params.AlertSettings.SOSNumber.replace(\"(\", \"\").replace(\")\", \"\");\nvar configs = [];\nsequenceNumber = (new Date().getTime()).toString(36);\nvar part1 = \"update=\" + sequenceNumber;\nconst _crypto = require('crypto');\nvar password = params.Password.Password;\nif (password === \"\") {\n var part2 = command;\n} else {\n var part2 = \"enc=\" + encrypt(command, part1, password);\n}\nAddValue(\"part1\", part1);\nAddValue(\"part2\", part2);\nAddValue(\"sequenceNumber\", sequenceNumber);\nvar commandConfigs = {\n template: \"main\",\n configs: configs,\n};\nmsg.push(JSON.stringify(commandConfigs));\n\nfunction AddValue(p1, p2) {\n var cvpair = {\n code: p1,\n value: p2\n };\n configs.push(cvpair);\n}\n\nfunction encrypt(text, mid, password) {\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\n const iv = _crypto.randomBytes(16); // random initialization vector\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\n // set the cipher\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\n // encrypt text\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\n // generate output ( encrypted text )\n return Buffer.concat([iv, encrypted]).toString('base64');\n}","CommandToUpdate":null,"Parent":null,"AvoidResending":false,"FollowParentSentType":false,"SendingType":0,"HasAck":true,"HexString":false,"Order":null,"SendAttempts":8,"ProtocolActionObjects":[{"Type":0,"NewValue":"{\"Id\":5719,\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\nconst _crypto = require('crypto');\\nvar password = params.Password.Password;\\nif (password === \\\"\\\") {\\n var part2 = command;\\n} else {\\n var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n}\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n\\nfunction encrypt(text, mid, password) {\\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n const iv = _crypto.randomBytes(16); // random initialization vector\\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n // set the cipher\\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n // encrypt text\\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n // generate output ( encrypted text )\\n return Buffer.concat([iv, encrypted]).toString('base64');\\n}\",\"CommandToUpdate\":null,\"Parent\":null,\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":0,\"HasAck\":true,\"HexString\":false,\"Order\":null,\"SendAttempts\":8,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747192387},{"Type":1,"NewValue":"{\"Id\":5719,\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\nconst _crypto = require('crypto');\\nvar password = params.Password.Password;\\nif (password === \\\"\\\") {\\n var part2 = command;\\n} else {\\n var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n}\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n\\nfunction encrypt(text, mid, password) {\\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n const iv = _crypto.randomBytes(16); // random initialization vector\\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n // set the cipher\\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n // encrypt text\\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n // generate output ( encrypted text )\\n return Buffer.concat([iv, encrypted]).toString('base64');\\n}\",\"CommandToUpdate\":null,\"Parent\":null,\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":3,\"HasAck\":true,\"HexString\":false,\"Order\":null,\"SendAttempts\":8,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1747192811},{"Type":1,"NewValue":"{\"Id\":5719,\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\n// const _crypto = require('crypto');\\n// var password = params.Password.Password;\\n// if (password === \\\"\\\") {\\nvar part2 = command;\\n// } else {\\n// var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n// }\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n// function encrypt(text, mid, password) {\\n// var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n// const iv = _crypto.randomBytes(16); // random initialization vector\\n// const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n// // set the cipher\\n// const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n// // encrypt text\\n// const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n// // generate output ( encrypted text )\\n// return Buffer.concat([iv, encrypted]).toString('base64');\\n// }\",\"CommandToUpdate\":null,\"Parent\":null,\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":3,\"HasAck\":true,\"HexString\":false,\"Order\":null,\"SendAttempts\":8,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1748942103}],"Tags":[]}],"Operations":[{"Id":367,"Name":"apsapp_ops","Operation":"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\n // ADD THE OPS CODE HERE\n let tasks = []; // array of tasks to be executed\n var deviceParams = [];\n var configsToUpdate = [];\n AddValue(\"imei\", params.imei);\n // evaluate messageTypLocalCOde \n if (messageTypeLocalCode == \"COMM-REGISTER\") { // Create message\n let userId = params.userId;\n let phoneId = params.phoneId;\n let phoneNumber = params.phonenumber;\n let message = \"APS-001;\" + phoneId + \";mid=\" + params.count_number + \";SET_USERID=\" + userId + \";\";\n // sendMessageToLocalhost(message); \n tasks = [{\n \"name\": \"Create\" + phoneId,\n \"option\": \"sync\",\n \"type\": \"createDevice\",\n \"payload\": JSON.stringify({\n \"name\": \"APS\" + phoneId,\n \"imei\": phoneId,\n \"abortOnError\": false,\n \"init\": true,\n \"phoneNumber\": phoneNumber,\n // \"entity\":\"import_test\",\n }),\n \"order\": 1\n }, {\n \"name\": \"SetUserId\" + userId,\n \"option\": \"async\",\n \"type\": \"sendMessage\",\n \"payload\": JSON.stringify({\n \"message\": message\n }),\n \"order\": 2\n }]\n } else if (messageTypeLocalCode == \"COMM-SET_USERID\") { // Set Device ID message\n let userId = params.userId;\n AddValue(\"userId\", userId);\n AddConfigToUpdate(configIds.Config.UserId, userId);\n } else if (messageTypeLocalCode == \"COMM-IS_REGISTERED\") { // Get Device ID message\n // is the input deviceid the same as the one registered?\n let currentUserId = configs.Config.UserId;\n let newUserId = params.userId;\n AddValue(\"currentUserId\", currentUserId);\n AddValue(\"oldUserId\", configs.Config.UserIdOld);\n if (currentUserId !== newUserId) {\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\n }\n }\n var msg = {\n 'values': deviceParams,\n };\n if (tasks.length > 0) {\n msg.tasks = tasks;\n }\n if (configsToUpdate.length > 0) {\n msg.configsToUpdate = configsToUpdate\n };\n // modify to return the object that contains your data\n console.log(msg);\n return msg;\n\n function AddValue(p1, p2) {\n var cvpair = {\n code: p1,\n value: p2\n };\n deviceParams.push(cvpair);\n }\n\n function AddConfigToUpdate(configName, newvalue) {\n if (newvalue !== undefined) { // don't add if newvalue is undefined\n var cvpair = {\n 'code': configName,\n 'value': newvalue,\n 'forced': true\n };\n configsToUpdate.push(cvpair);\n };\n }\n}\n// params is not defined locally -> export as module\nif (typeof(params) === 'undefined') {\n module.exports = {\n execute_ops\n }\n} else { // on server use local defined vars\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\n // define global returns\n msg = return_values;\n}","Type":0,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1741187532},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, configs.AlertSettings.SOSNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749537535},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, configs.AlertSettings.SOSNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749538759},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n // let sosNumber = configs.AlertSettings.SOSNumber;\\n let sosNumber = \\\"+441295530101\\\";\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749541147},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n // let sosNumber = configs.AlertSettings.SOSNumber;\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749541277},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n // let sosNumber = configs.AlertSettings.SOSNumber;\\n let sosNumber = \\\"+441295530101\\\";\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749541392},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") { // Set SOS Number as forced when login is detected\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749617741},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") {\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n if (sosNumber.startsWith(\\\"+\\\")) {\\n sosNumber = sosNumber.slice(1);\\n } else {\\n sosNumber = \\\"+\\\" + sosNumber;\\n }\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749628968},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n var configsToSend = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") {\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n if (sosNumber.startsWith(\\\"+\\\")) {\\n sosNumber = sosNumber.slice(1);\\n } else {\\n sosNumber = \\\"+\\\" + sosNumber;\\n }\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToSend(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n if (configsToSend.length > 0) {\\n msg.configsToSend = configsToSend\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n\\n function AddConfigToSend(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToSend.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1749630769},{"Type":1,"NewValue":"{\"Id\":367,\"Name\":\"apsapp_ops\",\"Operation\":\"function execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, localTesting) {\\n // ADD THE OPS CODE HERE\\n let tasks = []; // array of tasks to be executed\\n var deviceParams = [];\\n var configsToUpdate = [];\\n var configsToSend = [];\\n AddValue(\\\"imei\\\", params.imei);\\n // evaluate messageTypLocalCOde \\n if (messageTypeLocalCode == \\\"COMM-REGISTER\\\") { // Create message\\n let userId = params.userId;\\n let phoneId = params.phoneId;\\n let phoneNumber = params.phonenumber;\\n let message = \\\"APS-001;\\\" + phoneId + \\\";mid=\\\" + params.count_number + \\\";SET_USERID=\\\" + userId + \\\";\\\";\\n // sendMessageToLocalhost(message); \\n tasks = [{\\n \\\"name\\\": \\\"Create\\\" + phoneId,\\n \\\"option\\\": \\\"sync\\\",\\n \\\"type\\\": \\\"createDevice\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"name\\\": \\\"APS\\\" + phoneId,\\n \\\"imei\\\": phoneId,\\n \\\"abortOnError\\\": false,\\n \\\"init\\\": true,\\n \\\"phoneNumber\\\": phoneNumber,\\n // \\\"entity\\\":\\\"import_test\\\",\\n }),\\n \\\"order\\\": 1\\n }, {\\n \\\"name\\\": \\\"SetUserId\\\" + userId,\\n \\\"option\\\": \\\"async\\\",\\n \\\"type\\\": \\\"sendMessage\\\",\\n \\\"payload\\\": JSON.stringify({\\n \\\"message\\\": message\\n }),\\n \\\"order\\\": 2\\n }]\\n } else if (messageTypeLocalCode == \\\"COMM-SET_USERID\\\") { // Set Device ID message\\n let userId = params.userId;\\n AddValue(\\\"userId\\\", userId);\\n AddConfigToUpdate(configIds.Config.UserId, userId);\\n } else if (messageTypeLocalCode == \\\"COMM-SET_SOSNUMBER\\\") { // Set SOS NUMBER message\\n let sosNumber = params.sosnumber;\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToUpdate(configIds.AlertSettings.SOSNumber, sosNumber);\\n } else if (messageTypeLocalCode == \\\"COMM-IS_REGISTERED\\\") { // Get Device ID message\\n // is the input deviceid the same as the one registered?\\n let currentUserId = configs.Config.UserId;\\n let newUserId = params.userId;\\n AddValue(\\\"currentUserId\\\", currentUserId);\\n AddValue(\\\"oldUserId\\\", configs.Config.UserIdOld);\\n if (currentUserId !== newUserId) {\\n AddConfigToUpdate(configIds.Config.UserId, newUserId);\\n }\\n } else if (messageTypeLocalCode == \\\"CON-LOGIN\\\") {\\n let sosNumber = configs.AlertSettings.SOSNumber;\\n if (!sosNumber || sosNumber.trim() === \\\"\\\" || sosNumber.trim() === \\\"+\\\" || sosNumber.replace(/[\\\\s+]/g, \\\"\\\") === \\\"\\\") {\\n sosNumber = \\\"+441295530101\\\"; // DEFAULT OYSTA SUPPORT PHONE NUMBER\\n }\\n AddValue(\\\"sosNumber\\\", sosNumber);\\n AddConfigToSend(configIds.AlertSettings.SOSNumber, sosNumber);\\n }\\n var msg = {\\n 'values': deviceParams,\\n };\\n if (tasks.length > 0) {\\n msg.tasks = tasks;\\n }\\n if (configsToUpdate.length > 0) {\\n msg.configsToUpdate = configsToUpdate\\n };\\n if (configsToSend.length > 0) {\\n msg.configsToSend = configsToSend\\n };\\n // modify to return the object that contains your data\\n console.log(msg);\\n return msg;\\n\\n function AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n deviceParams.push(cvpair);\\n }\\n\\n function AddConfigToUpdate(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToUpdate.push(cvpair);\\n };\\n }\\n\\n function AddConfigToSend(configName, newvalue) {\\n if (newvalue !== undefined) { // don't add if newvalue is undefined\\n var cvpair = {\\n 'code': configName,\\n 'value': newvalue,\\n 'forced': true\\n };\\n configsToSend.push(cvpair);\\n };\\n }\\n}\\n// params is not defined locally -> export as module\\nif (typeof(params) === 'undefined') {\\n module.exports = {\\n execute_ops\\n }\\n} else { // on server use local defined vars\\n let return_values = execute_ops(moment, msg, net, params, rawFromBytes, raw, oystaTemplate, globalTemplate, arrays, commandsToExecute, serverParams, messageTypeCode, messageTypeLocalCode, messageTypeName, configs, configIds, commandsWaiting, false)\\n // define global returns\\n msg = return_values;\\n}\",\"Type\":0,\"ProtocolActionObjects\":[]}","Timestamp":1751467922}]}],"Groups":[{"Id":7041,"Parent":null,"Name":"Admin","Json":"{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]}","DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"LanguageId":null,"ProtocolActionObjects":[]},{"Id":7043,"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Name":"Config","Json":"{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]}","DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"LanguageId":null,"ProtocolActionObjects":[]},{"Id":7310,"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Name":"Alert Settings","Json":"{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]}","DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"LanguageId":null,"ProtocolActionObjects":[]}],"GroupParams":[{"Id":11877,"Group":{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},"Name":"UserId","Json":"{\"name\":\"UserId\",\"default\":\"\",\"description\":\"The latest User ID using this device.\",\"type\":\"text\",\"suffix\":null,\"prefix\":null,\"min\":null,\"max\":null,\"futureOnly\":false,\"integerOnly\":false,\"isReadOnly\":false,\"isHidden\":false,\"minLength\":null,\"maxLength\":null,\"helpText\":null,\"options\":[],\"toTranslate\":[\"name\",\"description\",\"helpText\"]}","Default":"","Command":null,"ProtocolActionObjects":[],"LanguageId":null,"Tags":[]},{"Id":12270,"Group":{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":{"Id":7041,"Name":"Admin","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[{"Id":7043,"Name":"Config","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]}]},"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},"Name":"SOS Number","Json":"{\"name\":\"SOS Number\",\"default\":\"\",\"description\":\"SOS number\",\"type\":\"phone\",\"suffix\":null,\"prefix\":null,\"min\":null,\"max\":null,\"futureOnly\":false,\"integerOnly\":false,\"isReadOnly\":true,\"isHidden\":false,\"minLength\":null,\"maxLength\":null,\"helpText\":\"The number called when the Alert button is pushed on the device (typically the ARC)\",\"options\":[],\"toTranslate\":[\"name\",\"description\",\"helpText\"]}","Default":"","Command":null,"ProtocolActionObjects":[{"Type":1,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":true,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":null,\"ProtocolActionObjects\":[],\"Tags\":[]}","Timestamp":1741189055},{"Type":1,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":false,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":null,\"ProtocolActionObjects\":[],\"LanguageId\":null,\"Tags\":[]}","Timestamp":1748925810},{"Type":1,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":false,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":null,\"ProtocolActionObjects\":[],\"LanguageId\":null,\"Tags\":[]}","Timestamp":1748941964},{"Type":0,"NewValue":"{\"Id\":12270,\"Group\":{\"Id\":7310,\"Name\":\"Alert Settings\",\"Json\":{\"description\":null,\"columns\":1,\"order\":1,\"listSize\":1,\"toTranslate\":[\"name\",\"description\"]},\"Parent\":null,\"Device\":null,\"DeviceRelated\":false,\"IsList\":false,\"IsAdminOnly\":false,\"Deleted\":false,\"Children\":[]},\"Name\":\"SOS Number\",\"Json\":\"{\\\"name\\\":\\\"SOS Number\\\",\\\"default\\\":\\\"\\\",\\\"description\\\":\\\"SOS number\\\",\\\"type\\\":\\\"text\\\",\\\"suffix\\\":null,\\\"prefix\\\":null,\\\"min\\\":null,\\\"max\\\":null,\\\"futureOnly\\\":false,\\\"integerOnly\\\":false,\\\"isReadOnly\\\":false,\\\"isHidden\\\":false,\\\"minLength\\\":null,\\\"maxLength\\\":null,\\\"helpText\\\":\\\"The number called when the Alert button is pushed on the device (typically the ARC)\\\",\\\"options\\\":[],\\\"toTranslate\\\":[\\\"name\\\",\\\"description\\\",\\\"helpText\\\"]}\",\"Default\":\"\",\"Command\":{\"Id\":5719,\"Protocol\":{\"Id\":256,\"Code\":\"Access PS App\",\"Version\":\"0.6\",\"FirmwareVersion\":\"\",\"Product\":null,\"AvailableVersions\":[],\"HistoryVersions\":[],\"IsChanged\":true},\"Name\":\"SOS Number\",\"TemplateSMS\":null,\"Template\":\"APSCMD-001;<>;<>;[0a]\",\"AckTemplate\":null,\"Operation\":\"var command = \\\"SOSN=\\\" + params.AlertSettings.SOSNumber.replace(\\\"(\\\", \\\"\\\").replace(\\\")\\\", \\\"\\\");\\nvar configs = [];\\nsequenceNumber = (new Date().getTime()).toString(36);\\nvar part1 = \\\"update=\\\" + sequenceNumber;\\nconst _crypto = require('crypto');\\nvar password = params.Password.Password;\\nif (password === \\\"\\\") {\\n var part2 = command;\\n} else {\\n var part2 = \\\"enc=\\\" + encrypt(command, part1, password);\\n}\\nAddValue(\\\"part1\\\", part1);\\nAddValue(\\\"part2\\\", part2);\\nAddValue(\\\"sequenceNumber\\\", sequenceNumber);\\nvar commandConfigs = {\\n template: \\\"main\\\",\\n configs: configs,\\n};\\nmsg.push(JSON.stringify(commandConfigs));\\n\\nfunction AddValue(p1, p2) {\\n var cvpair = {\\n code: p1,\\n value: p2\\n };\\n configs.push(cvpair);\\n}\\n\\nfunction encrypt(text, mid, password) {\\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\\n const iv = _crypto.randomBytes(16); // random initialization vector\\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\\n // set the cipher\\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\\n // encrypt text\\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\\n // generate output ( encrypted text )\\n return Buffer.concat([iv, encrypted]).toString('base64');\\n}\",\"AvoidResending\":false,\"FollowParentSentType\":false,\"SendingType\":3,\"CommandToUpdateId\":null,\"ParentId\":null,\"Parent\":null,\"HasAck\":true,\"HexString\":false,\"SendAttempts\":8,\"Order\":null},\"ProtocolActionObjects\":[],\"LanguageId\":null,\"Tags\":[]}","Timestamp":1748941969}],"LanguageId":null,"Tags":[]},{"Id":12270,"Group":{"Id":7310,"Name":"Alert Settings","Json":{"description":null,"columns":1,"order":1,"listSize":1,"toTranslate":["name","description"]},"Parent":null,"Device":null,"DeviceRelated":false,"IsList":false,"IsAdminOnly":false,"Deleted":false,"Children":[]},"Name":"SOS Number","Json":"{\"name\":\"SOS Number\",\"default\":\"\",\"description\":\"SOS number\",\"type\":\"text\",\"suffix\":null,\"prefix\":null,\"min\":null,\"max\":null,\"futureOnly\":false,\"integerOnly\":false,\"isReadOnly\":false,\"isHidden\":false,\"minLength\":null,\"maxLength\":null,\"helpText\":\"The number called when the Alert button is pushed on the device (typically the ARC)\",\"options\":[],\"toTranslate\":[\"name\",\"description\",\"helpText\"]}","Default":"","Command":{"Id":5719,"Protocol":{"Id":256,"Code":"Access PS App","Version":"0.6","FirmwareVersion":"","Product":null,"AvailableVersions":[],"HistoryVersions":[],"IsChanged":true},"Name":"SOS Number","TemplateSMS":null,"Template":"APSCMD-001;<>;<>;[0a]","AckTemplate":null,"Operation":"var command = \"SOSN=\" + params.AlertSettings.SOSNumber.replace(\"(\", \"\").replace(\")\", \"\");\nvar configs = [];\nsequenceNumber = (new Date().getTime()).toString(36);\nvar part1 = \"update=\" + sequenceNumber;\nconst _crypto = require('crypto');\nvar password = params.Password.Password;\nif (password === \"\") {\n var part2 = command;\n} else {\n var part2 = \"enc=\" + encrypt(command, part1, password);\n}\nAddValue(\"part1\", part1);\nAddValue(\"part2\", part2);\nAddValue(\"sequenceNumber\", sequenceNumber);\nvar commandConfigs = {\n template: \"main\",\n configs: configs,\n};\nmsg.push(JSON.stringify(commandConfigs));\n\nfunction AddValue(p1, p2) {\n var cvpair = {\n code: p1,\n value: p2\n };\n configs.push(cvpair);\n}\n\nfunction encrypt(text, mid, password) {\n var salt = _crypto.pbkdf2Sync(mid, 'salt', 1000, 64, 'sha1');\n const iv = _crypto.randomBytes(16); // random initialization vector\n const key = _crypto.pbkdf2Sync(password, salt, 3145, 32, 'sha1');\n // set the cipher\n const cipher = _crypto.createCipheriv('aes-256-cbc', key, iv);\n // encrypt text\n const encrypted = Buffer.concat([cipher.update(text, 'utf8'), cipher.final()]);\n // generate output ( encrypted text )\n return Buffer.concat([iv, encrypted]).toString('base64');\n}","AvoidResending":false,"FollowParentSentType":false,"SendingType":3,"CommandToUpdateId":null,"ParentId":null,"Parent":null,"HasAck":true,"HexString":false,"SendAttempts":8,"Order":null},"ProtocolActionObjects":[],"LanguageId":null,"Tags":[]}],"ProtocolChanges":[{"Version":"0.2","UserName":"IbrahimMeman","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) Added sos number","Timestamp":1741187532},{"Version":"0.2","UserName":"IbrahimMeman","Resource":"GroupParam","Name":"SOS Number","Message":"(Update) (SOS Number) Changed to read only text","Timestamp":1741189055},{"Version":"0.2","UserName":"IbrahimMeman","Resource":"MessageType","Name":"COMM-SET_SOSNUMBER","Message":"(Update) (COMM-SET_SOSNUMBER) updated template\n","Timestamp":1741272718},{"Version":"0.2","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"Set SOS Number added","Timestamp":1741327405},{"Version":"0.3","UserName":"David_Admin","Resource":"MessageType","Name":"ZNI","Message":"(Create) (ZNI) Zone in was missing","Timestamp":1741959809},{"Version":"0.3","UserName":"David_Admin","Resource":"MessageType","Name":"ZNI","Message":"(Create) (ZNI) Zone in was missing","Timestamp":1741959833},{"Version":"0.3","UserName":"David_Admin","Resource":"MessageType","Name":"ZNO","Message":"(Update) (ZNO) I put the wrong zone in.","Timestamp":1741959860},{"Version":"0.3","UserName":"Sean-Admin","Resource":"Protocol","Name":null,"Message":"Zone In and out messages added","Timestamp":1742826249},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Create) (CON-LOGIN) Added Login protocol","Timestamp":1743666904},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"DISCON-LOGOUT","Message":"(Create) (DISCON-LOGOUT) Added Logout protocol","Timestamp":1743666992},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) Modified Login protocol","Timestamp":1743667018},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_ENABLE","Message":"(Create) (RTL-LIVE_ENABLE) Added Live Enabled Protocol","Timestamp":1743667282},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_DISABLED","Message":"(Create) (RTL-LIVE_DISABLED) Added Live Disabled Protocol","Timestamp":1743667342},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_ENABLED","Message":"(Update) (RTL-LIVE_ENABLED) Changed Name for Live Enabled Protocol","Timestamp":1743667395},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-OS_VERSION","Message":"(Create) (INFO-OS_VERSION) Added OS Version protocol","Timestamp":1743670604},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-APP_VERSION","Message":"(Create) (INFO-APP_VERSION) Added App version Protocol","Timestamp":1743751375},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-OS_VERSION","Message":"(Update) (INFO-OS_VERSION) Modified OS version protocol to add device","Timestamp":1743751411},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-NETWORK_INFO","Message":"(Create) (INFO-NETWORK_INFO) Added Network Info protocol","Timestamp":1743758028},{"Version":"0.4","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"Added login, logout, rtl, app & os info, net info protocols","Timestamp":1745321781},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRN","Message":"(Create) (PWRN) add power on protocol","Timestamp":1747183225},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRF","Message":"(Create) (PWRF) add power off protocol","Timestamp":1747183279},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-DEBUG","Message":"(Create) (INFO-DEBUG) add debug protocol","Timestamp":1747183542},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-IS_REGISTERED","Message":"(Update) (COMM-IS_REGISTERED) is_registered no command","Timestamp":1747183670},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-REGISTER","Message":"(Update) (COMM-REGISTER) register no command","Timestamp":1747183686},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-SET_SOSNUMBER","Message":"(Update) (COMM-SET_SOSNUMBER) set_sosnumber no command","Timestamp":1747183702},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"COMM-SET_USERID","Message":"(Update) (COMM-SET_USERID) set_userid no command","Timestamp":1747183739},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) login no command","Timestamp":1747183762},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-APP_VERSION","Message":"(Update) (INFO-APP_VERSION) app_version no command","Timestamp":1747183814},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-DEBUG","Message":"(Update) (INFO-DEBUG) debug no command","Timestamp":1747185796},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-OS_VERSION","Message":"(Update) (INFO-OS_VERSION) os_version no command","Timestamp":1747185817},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"DISCON-LOGOUT","Message":"(Update) (DISCON-LOGOUT) logout no command","Timestamp":1747185848},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRF","Message":"(Update) (PWRF) power_off no command","Timestamp":1747185862},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PWRN","Message":"(Update) (PWRN) power_on no command","Timestamp":1747185881},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_DISABLED","Message":"(Update) (RTL-LIVE_DISABLED) live_disabled no command","Timestamp":1747185899},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"RTL-LIVE_ENABLED","Message":"(Update) (RTL-LIVE_ENABLED) live_enabled no command","Timestamp":1747185913},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALSOS","Message":"(Update) (ALSOS) alsos ack first","Timestamp":1747185984},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CYC","Message":"(Update) (CYC) cyc ack first","Timestamp":1747186003},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"INFO-NETWORK_INFO","Message":"(Update) (INFO-NETWORK_INFO) network_info ack first","Timestamp":1747186018},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"Command","Name":"SOS Number","Message":"(Create) (SOS Number) send sos number command","Timestamp":1747192387},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"Command","Name":"SOS Number","Message":"(Update) (SOS Number) changed send to gprs only","Timestamp":1747192811},{"Version":"0.5","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"added pwrn, pwrf, debug protocols","Timestamp":1748491424},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"GroupParam","Name":"SOS Number","Message":"(Update) (SOS Number) Allow update of SOS Number","Timestamp":1748925810},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"GroupParam","Name":"SOS Number","Message":"(Update) (SOS Number) Added command to be executed","Timestamp":1748941964},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"GroupParam","Name":"SOS Number","Message":"Associate groupParam SOS Number to command SOS Number","Timestamp":1748941969},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Command","Name":"SOS Number","Message":"(Update) (SOS Number) removed encryption","Timestamp":1748942103},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ACK-CMD","Message":"(Create) (ACK-CMD) Ack for command from server","Timestamp":1749537162},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) Set SOS Number as forced when login is detected","Timestamp":1749537535},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) modified login script","Timestamp":1749538759},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) default sos number","Timestamp":1749541147},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) use current sos number but forced on login","Timestamp":1749541277},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) default number","Timestamp":1749541392},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) use current sos number","Timestamp":1749617741},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) send command for login\n","Timestamp":1749618551},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) remove command send from login","Timestamp":1749618889},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"CON-LOGIN","Message":"(Update) (CON-LOGIN) allow command for login","Timestamp":1749619299},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) sosnumber testing","Timestamp":1749628968},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) added config to send","Timestamp":1749630769},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"LOCN-LIVE_DISABLED","Message":"(Update) (LOCN-LIVE_DISABLED) Changed RTL-DISABLED -> LOCN-DISABLED","Timestamp":1750213991},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"LOCN-LIVE_ENABLED","Message":"(Update) (LOCN-LIVE_ENABLED) Changed RTL-ENABLED -> LOCN-ENABLED","Timestamp":1750214018},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"PBB","Message":"(Create) (PBB) Added PBB","Timestamp":1750214085},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALSOS","Message":"(Update) (ALSOS) Updated ALSOS to type Alarm","Timestamp":1750214104},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA-O","Message":"(Create) (ALA-O) added ALA-O","Timestamp":1750214346},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA-C","Message":"(Create) (ALA-C) added ALA-C","Timestamp":1750214419},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA-S","Message":"(Create) (ALA-S) added ALA-S","Timestamp":1750214484},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA","Message":"(Create) (ALA) added ALA","Timestamp":1750214619},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"MessageType","Name":"ALA","Message":"(Update) (ALA) changed ALA to Alarm","Timestamp":1750214680},{"Version":"0.6","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"Deploy 0.6","Timestamp":1751290674},{"Version":"0.7","UserName":"Shadhees_Thinakaran","Resource":"Operation","Name":"apsapp_ops","Message":"(Update) (apsapp_ops) added default Oysta number fallback if the ARC is not set","Timestamp":1751467922},{"Version":"0.7","UserName":"Shadhees_Thinakaran","Resource":"Protocol","Name":null,"Message":"Added default Oysta number fallback if the ARC number is not set","Timestamp":1751468116}],"ProtocolActionObjects":[],"Tags":[{"Id":2156,"Name":"PermitDuplicates","BackendAction":"PermitReceiverDublicates","Value":"True"},{"Id":2157,"Name":"OneCommandSender","BackendAction":"OneCommandSender","Value":"True"}],"MessageCodes":[{"Name":"Alarm - Movement","Description":"At alert on movement ( not fall)","Code":"ALMOV","CanLiveInsights":false},{"Name":"Alarm-Welfare Check","Description":"Welfare check alarm","Code":"ALW","CanLiveInsights":false},{"Name":"Cycle","Description":"Regular, cyclic, events from a device","Code":"CYC","CanLiveInsights":false},{"Name":"Location - other","Description":"Location - other","Code":"LOCN","CanLiveInsights":false},{"Name":"Acknowledge","Description":"Acknowledgment of a command sent to the device","Code":"ACK","CanLiveInsights":false},{"Name":"Battery Charging - On","Description":"Battery Charging - On","Code":"BATCN","CanLiveInsights":false},{"Name":"Check / keep alive / Heartbeat","Description":"Keep alive / heartbeat signal to maintain a connection ","Code":"CHK","CanLiveInsights":false},{"Name":"Alarm - Amber Alert","Description":"Alarm - Amber Alert","Code":"ALA","CanLiveInsights":false},{"Name":"Alarm – Fall","Description":"Alarm – Fall","Code":"ALF","CanLiveInsights":false},{"Name":"Alarm – Non movement","Description":"Alarm – Non movement","Code":"ALNM","CanLiveInsights":false},{"Name":"Alarm - Smoke","Description":"Alarm - Smoke","Code":"ALSM","CanLiveInsights":false},{"Name":"Alarm - Speed","Description":"Alarm - Speed","Code":"ALSP","CanLiveInsights":false},{"Name":"Alarm – Emergency Cancelled","Description":"Alarm – Emergency Cancelled by the user","Code":"ALSOS-C","CanLiveInsights":false},{"Name":"Battery Charging - off","Description":"Battery Charging - off","Code":"BATCF","CanLiveInsights":false},{"Name":"Battery empty","Description":"Battery empty","Code":"BATE","CanLiveInsights":false},{"Name":"Battery full","Description":"Battery full","Code":"BATF","CanLiveInsights":false},{"Name":"Battery low","Description":"Battery low","Code":"BATL","CanLiveInsights":false},{"Name":"Button Press","Description":"Button Press","Code":"BPRS","CanLiveInsights":false},{"Name":"Ebeacon zone in","Description":"Ebeacon zone in","Code":"EBZI","CanLiveInsights":false},{"Name":"Ebeacon zone out","Description":"Ebeacon zone out","Code":"EBZO","CanLiveInsights":false},{"Name":"Location check in","Description":"Location check in","Code":"LCI","CanLiveInsights":false},{"Name":"Location check out","Description":"Location check out","Code":"LCO","CanLiveInsights":false},{"Name":"Reminder not ok","Description":"Reminder not ok","Code":"MRME","CanLiveInsights":false},{"Name":"No Activity","Description":"No Activity","Code":"NACT","CanLiveInsights":false},{"Name":"Power Off","Description":"Power Off","Code":"PWRF","CanLiveInsights":false},{"Name":"Power On","Description":"Power On","Code":"PWRN","CanLiveInsights":false},{"Name":"Vehicle - Driving hours excess","Description":"Vehicle - Driving hours excess","Code":"VDE","CanLiveInsights":false},{"Name":"Vehicle – Fuel cap","Description":"Vehicle – Fuel cap","Code":"VFC","CanLiveInsights":false},{"Name":"Vehicle - Fuel level","Description":"Vehicle - Fuel level","Code":"VFL","CanLiveInsights":false},{"Name":"Vehicle – Harsh braking","Description":"Vehicle – Harsh braking","Code":"VHB","CanLiveInsights":false},{"Name":"Vehicle – Ignition off","Description":"Vehicle – Ignition off","Code":"VIGF","CanLiveInsights":false},{"Name":"Vehicle – Driver not authorized","Description":"Vehicle – Driver not authorized","Code":"VNA","CanLiveInsights":false},{"Name":"Vehicle – Night driving","Description":"Vehicle – Night driving","Code":"VND","CanLiveInsights":false},{"Name":"Vehicle – Ignition on","Description":"Vehicle – Ignition on","Code":"VIGN","CanLiveInsights":false},{"Name":"Vehicle – Seat belt","Description":"Vehicle – Seat belt","Code":"VSB","CanLiveInsights":false},{"Name":"Zone in","Description":"Zone in","Code":"ZNI","CanLiveInsights":false},{"Name":"Zone out","Description":"Zone out","Code":"ZNO","CanLiveInsights":false},{"Name":"Device Status","Description":"Device Status","Code":"STATUS","CanLiveInsights":false},{"Name":"Real time location ","Description":"Real time location ","Code":"RTL","CanLiveInsights":false},{"Name":"Encoded communication","Description":"Encoded communication","Code":"ENC","CanLiveInsights":false},{"Name":"Proximity","Description":"Proximity alert ","Code":"PROX","CanLiveInsights":false},{"Name":"Dummy - do NOT use ","Description":"Dummy template - should not be used","Code":"DUMMY","CanLiveInsights":false},{"Name":"Battery High","Description":"Battery High","Code":"BATH","CanLiveInsights":false},{"Name":"Location - Set Available","Description":"Location - Set Available","Code":"LSA","CanLiveInsights":false},{"Name":"Location - Set Busy","Description":"Location - Set Busy","Code":"LSB","CanLiveInsights":false},{"Name":"Device information","Description":"General Device Information from the device","Code":"INFO","CanLiveInsights":false},{"Name":"Alarm - Tamper","Description":"Alarm - Device Tamper","Code":"ALTAM","CanLiveInsights":false},{"Name":"Communication ","Description":"General communication, initialisation etc.","Code":"COMM","CanLiveInsights":false},{"Name":"Humidity","Description":"Relative humidity","Code":"RH","CanLiveInsights":false},{"Name":"Temperature","Description":"Temperature","Code":"TEMP","CanLiveInsights":false},{"Name":"Alarm - Temperature","Description":"Alarm - Temperature","Code":"ALTEMP","CanLiveInsights":false},{"Name":"Alarm - Humidity","Description":"Alarm - Relative Humidity","Code":"ALRH","CanLiveInsights":false},{"Name":"Proximity End","Description":"Proximity End","Code":"PROX-E","CanLiveInsights":false},{"Name":"Alarm - PIR","Description":"Alarm - PIR","Code":"ALPIR","CanLiveInsights":false},{"Name":"PIR - Movements","Description":"Number of PIR movements detected in reporting period","Code":"PIRM","CanLiveInsights":false},{"Name":"Battery Report","Description":"Battery Voltage Report","Code":"BATR","CanLiveInsights":false},{"Name":"Alarm - Sim Swap","Description":"Alarm - Sim Swap","Code":"ALSS","CanLiveInsights":false},{"Name":"Mileage","Description":"Mileage","Code":"MIL","CanLiveInsights":false},{"Name":"Intrusion","Description":"Intrusion","Code":"INT","CanLiveInsights":false},{"Name":"No Fix Report","Description":"No fix report","Code":"NFR","CanLiveInsights":false},{"Name":"Switched Off Report","Description":"Switched off report","Code":"SOR","CanLiveInsights":false},{"Name":"End - Shift","Description":"End - Shift","Code":"ENDSH","CanLiveInsights":false},{"Name":"Sleep Mode","Description":"Device comes to sleep mode","Code":"SPM","CanLiveInsights":false},{"Name":"Wake Up Device","Description":"Device Wake Up from SleepMode","Code":"WUD","CanLiveInsights":false},{"Name":"Door Closed","Description":"Door Closed","Code":"DRCL","CanLiveInsights":false},{"Name":"Door Open","Description":"Door Open","Code":"DRO","CanLiveInsights":false},{"Name":"Alarm Door Closed","Description":"Alarm Door Closed","Code":"ALDC","CanLiveInsights":false},{"Name":"Alarm Door Open","Description":"Alarm Door Open","Code":"ALDO","CanLiveInsights":false},{"Name":"Alarm - Amber Alert - Snooze","Description":"Amber Alert Alarm - snoozed by user","Code":"ALA-S","CanLiveInsights":false},{"Name":"Amber Alert - On","Description":"Amber Alert Alarm created by User","Code":"ALA-O","CanLiveInsights":false},{"Name":"Reminder OK","Description":"Reminder OK","Code":"MRMK","CanLiveInsights":false},{"Name":"Message - text","Description":"Message- text","Code":"MSG","CanLiveInsights":false},{"Name":"Start - Shift","Description":"Start- Shift","Code":"STSH","CanLiveInsights":false},{"Name":"Beacon","Description":"Beacon","Code":"BT","CanLiveInsights":false},{"Name":"Alarm - Amber Alert - Cancel","Description":"Amber alert alarm, cancelled by user","Code":"ALA-C","CanLiveInsights":false},{"Name":"Alarm-Impact","Description":"Alarm-Impact","Code":"ALI","CanLiveInsights":false},{"Name":"Reminder Snooze ","Description":"Reminder - snooze","Code":"MRM-S","CanLiveInsights":false},{"Name":"Blood Pressure","Description":"Blood Pressure","Code":"HBP","CanLiveInsights":false},{"Name":"Heart Rate","Description":"Heart Rate","Code":"HRT","CanLiveInsights":false},{"Name":"SELFTEST","Description":"Used for Testing Purposes","Code":"TEST","CanLiveInsights":false},{"Name":"Alarm - Fall Cancelled","Description":"Alarm - Fall Cancelled","Code":"ALF-C","CanLiveInsights":false},{"Name":"Alarm – Non Movement Cancelled","Description":"Alarm – Non movement Cancelled by the user","Code":"ALNM-C","CanLiveInsights":false},{"Name":"Insight","Description":"Insight","Code":"INSIGHT","CanLiveInsights":false},{"Name":"Quantity Drunk","Description":"Quantity of liquid drunk ","Code":"QDRNK","CanLiveInsights":false},{"Name":"Bed - in","Description":"Bed or seat sensor ","Code":"BEDIN","CanLiveInsights":false},{"Name":"Bed - Out","Description":"Bed / seat sensor","Code":"BEDOUT","CanLiveInsights":false},{"Name":"Leak sensor","Description":"Leak detected ","Code":"LEAK","CanLiveInsights":false},{"Name":"Light - Lux","Description":"Light levels - LUX ","Code":"LUX","CanLiveInsights":false},{"Name":"Exited","Description":"Exited","Code":"EXIT","CanLiveInsights":false},{"Name":"Entered","Description":"Entered","Code":"ENTER","CanLiveInsights":false},{"Name":"Answered Door","Description":"Answered Door","Code":"ANSWDR","CanLiveInsights":false},{"Name":"Alarm – Emergency","Description":"Alarm – Emergency","Code":"ALSOS","CanLiveInsights":true},{"Name":"Alarm – Gas","Description":"Alarm – Gas ( carbon monixide, carbon dioxide, propane, butane ) ","Code":"ALG","CanLiveInsights":false},{"Name":"Leak Off","Description":"Leak detection has stopped alerting","Code":"LEAK-OFF","CanLiveInsights":false},{"Name":"Question-Answer","Description":"Question - Answer response","Code":"Q-A","CanLiveInsights":false},{"Name":"Visitor Arrived","Description":"Visitor Arrived","Code":"VISARR","CanLiveInsights":true},{"Name":"Visitor Departed","Description":"Visitor Departed","Code":"VISDEP","CanLiveInsights":true},{"Name":"Docked","Description":"Device placed in docking station","Code":"DOCK-IN","CanLiveInsights":false},{"Name":"Undocked","Description":"Device removed from docking station","Code":"DOCK-OUT","CanLiveInsights":false},{"Name":"Gas concentrarion","Description":"Gas concentrarion (ppm)","Code":"GAS","CanLiveInsights":false},{"Name":"Distance ","Description":"Distance measurement, could be level, proximity etc ","Code":"DIST","CanLiveInsights":false},{"Name":"Alarm Distance","Description":"Alarm on distance measurement, could be level, proximity etc ","Code":"ALDIST","CanLiveInsights":false},{"Name":"Welfare OK","Description":"Welfare check has returned OK","Code":"WELFOK","CanLiveInsights":false},{"Name":"Steps","Description":"Step counter","Code":"STEPS","CanLiveInsights":true},{"Name":"Connection","Description":"Connection","Code":"CON","CanLiveInsights":false},{"Name":"Disconnection","Description":"Disconnect","Code":"DISCON","CanLiveInsights":false},{"Name":"Position By Button","Description":"Position By Button","Code":"PBB","CanLiveInsights":false},{"Name":"Alarm Welfare","Description":"Alert welfare not confirmed","Code":"ALA-W","CanLiveInsights":false},{"Name":"Welfare Timer Starts","Description":"Welfare Check in","Code":"WTS","CanLiveInsights":false},{"Name":"Welfare Stops","Description":"Welfare Check out","Code":"WSTP","CanLiveInsights":false},{"Name":"Alarm Ended","Description":"Alarm finished","Code":"ALA-F","CanLiveInsights":false},{"Name":"BRTH - Breath Rate","Description":"Rate of Breathing per minute","Code":"BRTH","CanLiveInsights":false},{"Name":"Sleep State","Description":"Sleep state ","Code":"SLPSTATE","CanLiveInsights":false},{"Name":"Alarm - Tilt","Description":"Alarm - Tilt Alert","Code":"ALTLT","CanLiveInsights":false},{"Name":"Alert – Fall Suspected","Description":"Alert – Fall Suspected","Code":"ALFS","CanLiveInsights":false}]} \ No newline at end of file