{"info":{"_postman_id":"7b0a9003-0a08-e00f-133d-ef0a269ebfa4","name":"Envoy API","description":"<html><head></head><body><p>Welcome to the ENVOY REST API reference. You can use the ENVOY REST API to build add-ons for ENVOY, develop integrations between ENVOY and other applications. This page documents the REST resources available in ENVOY, along with HTTP sample requests and responses.<br><br>\nAPI Version: <b>1.4.1</b><br>\nMinimum Supported Envoy Firmware Version: <b>4.2.0</b><br><br></p>\n<div>\n  <p>\n    The ENVOY provides a web service for managing all the services and operations running on the ENVOY.\n\n</p><pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>This document describes the EWI (Envoy Web Service Interface) used for advanced integration with the ENVOY; the EWI and related interactions described by this document define the externally-visible (black box view) perspective of the services provided by the ENVOY. It is the intent of this specification and interface architecture to shield you from the details of the operations within the ENVOY.\n</code></pre>  <p></p>\n</div>\n\n<br>\n\n<div>\n  <h3>INTERFACE PROTOCOL</h3>\n  <p>\n    The Protocol used to communicate between the ENVOY and other applications is based on REST (Representational State Transfer) over HTTP.\n\n</p><pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>The REST API provide access to resources (data entities) via URI paths. To use a REST API, your application will make an HTTP request and parse the response. Your methods will be the standard HTTP methods like GET, PUT, POST and DELETE. REST API operate over HTTP making it easy to use with any programming language or framework.\n</code></pre>  <p></p>  \n  <div>\n    <p>By default the REST API port operates on: <b>80</b></p>\n  </div>\n  \n</div>\n\n<br>\n\n<div>\n  <h1 id=\"authentication\">Authentication</h1>\n\n<p>  The REST API supports basic authentication and cookie-based (session) authentication. See the examples of basic authentication, cookie-based authentication.\n  ENVOY’s REST API is protected by the same restrictions which are provided via ENVOY’s standard web interface. This means that you can use the same username and password as if you are accessing the ENVOY web interface.\n  In most cases, the first step in using the ENVOY REST API is to authenticate a user account with your ENVOY server. Any authentication that works against ENVOY will work against the REST API.\n  </p><div>\n    <h3>Default Username and Password</h3>\n    <p>\n      Username: envoy<br>\n      Password: envoy<br>\n    </p>\n  </div><p></p>\n</div>\n\n<br>\n\n<div>\n  <h2>SECRET KEY GENERATION STEPS</h2>\n  1.  Your static SALT suffix string is “QGFjdGl2ZQ==” <br>\n  2.  Hash (With SHA 256) the password concatenated with the salt.<br>\n  <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>sha256 ([Password] + SALT)</b><br><br></p>\n\n<p>  <i>Java Code Example:</i><br><br>\n  \n    </p><div>\n      <pre>private static String hashMessage(String message) throws NoSuchAlgorithmException {\n    MessageDigest md = MessageDigest.getInstance(\"SHA-256\");\n    md.reset();\n    byte[] buffer = message.getBytes();\n    md.update(buffer);\n    byte[] digest = md.digest();</pre></div><p></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>String hexStr = &amp;quot;&amp;quot;;\nfor (byte aDigest : digest) {\n    hexStr += Integer.toString((aDigest &lt;span style=\"color: #FF0000; background-color: #FFAAAA\"&gt;&amp;amp;&lt;/span&gt; 0xff) + 0x100, 16).substring(1);\n}\nreturn hexStr;\n</code></pre><p>} \nprivate static String makeSecret(String key) throws NoSuchAlgorithmException {\n    final String salt = \"QGFjdGl2ZQ==\";\n    return hashMessage(key + salt);\n}\n//This will be the secret key\nfinal String secretKey = makeSecret(\"envoy\");\n      \n    </p></div>\n  <p></p>\n\n\n<br>\n\n<div>\n  <h2>Basic Authentication</h2>\n\n<p>  This section shows you how to allow REST clients to authenticate themselves using basic authentication (user name and password). This is one of two methods that you can use for authentication against the ENVOY REST API; the other one being cookie-based authentication.\n  In this section, we will show you a simple example of basic authentication.<br></p>\n  <h3><i>Simple example</i></h3>\n\n<p>  Most client software provides a simple mechanism for supplying a user name and password and will build the required authentication headers automatically. For example you can specify the -u argument with curl as follows:<br><br></p>\n  <div>\n  <pre>curl -D- -u envoy:d4de3dbdb2cff44f39741a6f8adbba74feccdc7cc02d1bb6ed27b37354687c25 -X \nGET -H \"Content-Type: application/json\"\nhttp://{{host}}:{{port}}/ALE/api/logical-device?fields=name\n  </pre>\n  </div>\n</div>\n\n<br>\n\n<div>\n  <h3><i>Supplying Basic Authentication Headers</i></h3>\n\n<p>  If you need to you may construct and send basic authentication headers yourself. <br>To do this you need to perform the following steps:<br><br></p>\n<ol>\n<li>Generate a secret key for a specific user following the <b>Secret Key Generation Steps</b> above.<br></li>\n<li>Build a string of the form username:secret<br></li>\n<li>Base64 encode the string<br></li>\n<li>Supply an \"Authorization\" header with content \"Basic \" followed by the encoded string. For example, you would make the request as follows:<br><br></li>\n</ol>\n  <div>\n    <pre>curl –D- -X GET -H \"Authorization: Basic {Base64 Encoded String}\" -H \n\"Content-Type: application/json\" http://{{host}}:{{port}}/ALE/api/ping\n    </pre>\n  </div>\n\n<p>e.g:</p><br>\n  <div>\n    <pre>curl –D- -X GET -H \"Authorization: Basic ZW52b3k6ZDRkZTNkYmRiMmNmZjQ0ZjM5NzQxYTZmOGFkYmJhNzRmZWNjZGM3Y2MwMmQxYmI2ZWQyN2IzNzM1NDY4N2MyNQ== \" \n-H \"Content-Type: application/json\" http://{{host}}:{{port}}/ALE/\n    </pre>\n  </div>\n</div>\n\n<br>\n\n<div>\n  <h2>Cookie-based Authentication</h2>\n\n<p>  This section shows you how to allow REST clients to authenticate themselves using cookies.<br>\n  This is one of two methods that you can use for authentication against the ENVOY REST API; the other method being basic authentication.<br>\n  This is how cookie-based authentication works in ENVOY at a high level:<br></p>\n<ol>\n<li>The client generates a secret key for a specific user following the Secret Key Generation Steps.<br>  </li>\n<li>The client posts to http://{{host}}:{{port}}/ALE/api/auth the username and the secret key generated in step 1 as the password.<br></li>\n</ol>\n<p>  After that you've created a session, it's just a matter of setting the cookie in all subsequent requests to the server.<br>\n  3.  Store the session object on the client. The way that you do this will depend on how your client is implemented.<br>\n  4.  When you want to make a request, take cookie name and value from the session and use them to set the 'cookie' field in the header of your request. This will be used as client session identification.</p>\n</div>\n\n<br>\n\n<div>\n<h3><i>Authentication Request Body Template</i></h3>\n<br>\n<b>POST</b> http://{{host}}:{{port}}/ALE/api/auth<br>\nContent-Type=<b>application/json</b> <br><br>\n<div><pre>{\n \"username\":\"envoy\",\n \"password\":\"d4de3dbdb2cff44f39741a6f8adbba74feccdc7cc02d1bb6ed27b37354687c25 \"\n}\n</pre></div>\nBefore you begin, please be aware that although cookie-based authentication has many benefits, such as performance (not having to make multiple authentication calls), it also has security risks. For example, your session cookies can be hijacked if handled improperly. This document does not go into the security implications of cookies, but you should make yourself aware of the risks, before considering this approach.\n\n<p><i>Java Code Example:</i><br><br></p>\n<div>\n<pre>//Cookie holder\nprivate static String cookie;\nprivate static void authenticate() throws IOException, NoSuchAlgorithmException {\n    final String secretKey = makeSecret(\"envoy\");\n    final byte[] rawData = (\"{\\n\" +\n            \"\\t\\\"username\\\":\\\"envoy\\\",\\n\" +\n            \"\\t\\\"password\\\":\\\"\" + secretKey + \"\\\"\\n\" +\n            \"}\").getBytes(StandardCharsets.UTF_8);\n\n\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>//Set connection properties\nHttpURLConnection conn = (HttpURLConnection) new URL(&amp;quot;http://{{host}}:{{port}}/ALE/api/auth&amp;quot;).openConnection();\nconn.setDoOutput(true);\nconn.setRequestMethod(&amp;quot;POST&amp;quot;);\nconn.setRequestProperty(&amp;quot;Content-Type&amp;quot;, &amp;quot;application/json&amp;quot;);\nconn.setRequestProperty(&amp;quot;Content-Length&amp;quot;, String.valueOf(rawData.length));\n//Write body\ntry (OutputStream os = conn.getOutputStream()) {\n    os.write(rawData);\n    os.flush();\n}\n//Connect and publish data\nconn.connect();\n\nfinal int responseCode = conn.getResponseCode();\n\nif (responseCode == HTTP_OK) {\n    //Authentication successful\n    final String headerField = conn.getHeaderField(&amp;quot;Set-Cookie&amp;quot;);\n    if (headerField != null) {\n        //A cookie was received\n        cookie = headerField;\n    }\n} else {\n    //TODO: Handle error\n}\n</code></pre><p>}\npublic static void main(String[] args) throws IOException, NoSuchAlgorithmException {\n    //Check if the user was authenticated\"&gt;\n    //Authenticate the user\n    authenticate();\n    if (cookie == null) {\n        //The user is not authenticated\n        System.err.println(\"User not authenticated\");\n        return;\n    }</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>//Set connection properties\n</code></pre><p>   //Request example to test authentication\n    HttpURLConnection newConn = (HttpURLConnection) new URL(\"http://{{host}}:{{port}}/ALE/api/activity?fields=name\").openConnection();\n    newConn.setRequestProperty(\"Cookie\", cookie);\n    newConn.setDoOutput(true);\n    newConn.setRequestMethod(\"GET\");</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>//Connect and publish data\nnewConn.connect();\nfinal int responseCode = newConn.getResponseCode();\n\n//Read the response body (If any)\nStringBuilder body = new StringBuilder(&amp;quot;&amp;quot;);\ntry (BufferedReader inputStream = new BufferedReader(new InputStreamReader(newConn.getInputStream()))) {\n    String line = null;\n    while ((line = inputStream.readLine()) != null) {\n        body.append(line);\n    }\n}\nif (responseCode == HTTP_OK) {\n    //TODO: Do stuff here\n\n    //Print the data received\n    System.out.println(body.toString());\n} else {\n    //TODO: Handle error\n    System.err.println(body.toString());\n}\n</code></pre><p>}\n</p></pre><p></p>\n</div>\n</div></body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Authentication","slug":"authentication"}],"owner":"2306872","collectionId":"7b0a9003-0a08-e00f-133d-ef0a269ebfa4","publishedId":"6fU1ksh","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"00609C"},"publishDate":"2018-01-12T12:43:29.000Z"},"item":[{"name":"Activity","item":[{"name":"Define an Activity","id":"5851b34e-c4ec-7b04-44e4-692d3288fb84","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"name\":\"Test\",\n\t\"returnType\":\"String\",\n\t\"category\":\"Test\",\n\t\"list\":[\n\t\t{\n\t\t\t\"name\":\"WorkflowName\",\n\t\t\t\"type\":\"String\",\n\t\t\t\"editor\":\"Text\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"WorkflowName2\",\n\t\t\t\"type\":\"String\",\n\t\t\t\"editor\":\"Text\"\n\t\t}\n\t],\n\t\"code\":\"@envoy.declare{name:WorkflowName,type:String,editor:Text};\\n\\n@envoy.declare{name:WorkflowName2,type:String,editor:Text};\\n\\nObject coreInterface = null;\\n{\\nMethod m=proxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface=m.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response=null;\\n{\\nMethod m=coreInterface.getClass().getMethod(\\\"stopWorkflow\\\",new Class[]{String.class});\\nresponse=(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n}\\nreturn response;\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/","description":"<p>Create/ Update an activity.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"4bf71230-8000-c336-5559-63f8ee5412e9","name":"define-activity-example","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"name\":\"Test\",\n\t\"returnType\":\"String\",\n\t\"category\":\"Test\",\n\t\"list\":[\n\t\t{\n\t\t\t\"name\":\"WorkflowName\",\n\t\t\t\"type\":\"String\",\n\t\t\t\"editor\":\"Text\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"WorkflowName2\",\n\t\t\t\"type\":\"String\",\n\t\t\t\"editor\":\"Text\"\n\t\t}\n\t],\n\t\"code\":\"@envoy.declare{name:WorkflowName,type:String,editor:Text};\\n\\n@envoy.declare{name:WorkflowName2,type:String,editor:Text};\\n\\nObject coreInterface = null;\\n{\\nMethod m=proxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface=m.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response=null;\\n{\\nMethod m=coreInterface.getClass().getMethod(\\\"stopWorkflow\\\",new Class[]{String.class});\\nresponse=(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n}\\nreturn response;\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/"},"status":"Created","code":201,"_postman_previewlanguage":"plainText","header":[{"name":"Content-Length","key":"Content-Length","value":"0","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 03:10:57 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"49","body":""}],"_postman_id":"5851b34e-c4ec-7b04-44e4-692d3288fb84"},{"name":"Build activity code","id":"ca28c8f1-6504-1264-64ea-a48cea8fbfc5","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"code\":\"@envoy.declare{name:WorkflowName,type:String,editor:Text};\\n\\nObject coreInterface = null;\\n{\\nMethod m=proxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface=m.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString respons=enull;\\n{\\nMethod m=coreInterface.getClass().getMethod(\\\"stopWorkflow\\\",new Class[]{String.class});\\nresponse=(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n}\\nreturn response;\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/build","description":"<p>Build the activity code</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity","build"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"14d713b1-e42f-ceb5-d114-06c3b1b0c678","name":"error-response-compile","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"code\":\"@envoy.declare{name:WorkflowName,type:String,editor:Text};\\n\\nObject coreInterface = null;\\n{\\nMethod m=proxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface=m.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString respons=enull;\\n{\\nMethod m=coreInterface.getClass().getMethod(\\\"stopWorkflow\\\",new Class[]{String.class});\\nresponse=(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n}\\nreturn response;\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/build"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"536","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 02:40:00 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"212","body":"{\"response\":\"/tmp/wfs/gen/a7707/b3592/c9770.java:24: error: cannot find symbol\\nString respons=enull;\\n               ^\\n  symbol:   variable enull\\n  location: class c9770\\n/tmp/wfs/gen/a7707/b3592/c9770.java:27: error: cannot find symbol\\nresponse=(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n^\\n  symbol:   variable response\\n  location: class c9770\\n/tmp/wfs/gen/a7707/b3592/c9770.java:29: error: cannot find symbol\\nreturn response;}\\n       ^\\n  symbol:   variable response\\n  location: class c9770\\n3 errors\\n\"}"},{"id":"3242e830-f207-b25d-bb31-b90ad58b3d9c","name":"success-response-compilation","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"code\":\"int a = 1;\\r\\nreturn a;\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/build"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"15","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 02:41:45 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"153","body":"{\"response\":\"\"}"}],"_postman_id":"ca28c8f1-6504-1264-64ea-a48cea8fbfc5"},{"name":"Delete an Activity","id":"a98746d5-df2b-8bc2-0ffb-86e172a54b67","request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity/{activityName}","description":"<p>Delete an activity by name.</p>\n<p><b>Replace {activityName} by the name of the activity.</b></p>\n<pre>Example: http://{{host}}:{{port}}/ALE/api/activity/Sleep</pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity","{activityName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"fcd15988-71c3-a74d-3fdd-ffc7fb7c654d","name":"delete-activity-example","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity/Test"},"status":"No Content","code":204,"_postman_previewlanguage":"plainText","header":[{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 03:11:58 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"42","body":""}],"_postman_id":"a98746d5-df2b-8bc2-0ffb-86e172a54b67"},{"name":"Delete activities","id":"b596ab85-eab0-711f-f25b-febc37a4a219","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{Activity name 1}\",\n  \"{Activity name 2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/activity/delete","description":"<p>Delete a bundle of activities by name.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"09f95d92-d9f6-4f84-6c05-55a6264fcc6c","name":"delete-multi-activities-example","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n\t\"Activity name 1\",\n\t\"Activity name 2\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/activity/delete"},"status":"No Content","code":204,"_postman_previewlanguage":"plainText","header":[{"name":"Date","key":"Date","value":"Fri, 23 Jun 2017 12:33:07 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"145","body":""}],"_postman_id":"b596ab85-eab0-711f-f25b-febc37a4a219"},{"name":"List all activities","id":"963124ee-378e-0f08-a856-d6dfa0ff2004","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity","description":"<p>List all activities.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://{{host}}:{{port}}/ALE/api/activity?fields=name\n<i>This retrieves only the name of all activities.</i></pre>\n\n<pre>Example: http://{{host}}:{{port}}/ALE/api/activity?fields=name;code\n<i>This retrieves only the name and code of all activities.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"de64ec7a-5864-dcf6-fc69-0c8c22028037","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:45:59 GMT","description":"The date and time that the message was sent"},{"name":"Transfer-Encoding","key":"Transfer-Encoding","value":"chunked","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[],"responseTime":"576","body":"[\n  {\n    \"name\": \"AM_AggregateTags\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Tags\",\n        \"editor\": \"Text\",\n        \"type\": \"ArrayList\\u003cProperties\\u003e\",\n        \"activity\": null,\n        \"id\": \"6.934214371165425E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"@envoy.declare{name:\\\"Tags\\\",type:\\\"ArrayList\\u003cProperties\\u003e\\\",editor:\\\"Text\\\"};\\r\\n\\r\\nBoolean DEBUG \\u003d false;\\r\\n@envoy.GetGS{name:\\\"DEBUG\\\"} \\u003e gsDEBUG;\\r\\nif (gsDEBUG !\\u003d null) {\\r\\n    if((Integer)gsDEBUG \\u003d\\u003d 1)\\r\\n    {\\r\\n        DEBUG \\u003d true;\\r\\n    }\\r\\n}\\r\\n\\r\\nArrayList\\u003cProperties\\u003e finalTags \\u003d new ArrayList\\u003c\\u003e();\\r\\nHashMap\\u003cString, HashMap\\u003cString, Properties\\u003e\\u003e lds \\u003d new HashMap\\u003c\\u003e();\\r\\nHashMap\\u003cString, Properties\\u003e currLD;\\r\\n\\r\\nString ref_num, ref, num, epc, logicaldevice;\\r\\n\\r\\nProperties tag, c;\\r\\n\\r\\nFloat currRSSI, oldAvgRSSI, newAvgRSSI, oldPeakRSSI, newPeakRSSI, oldCount;\\r\\n\\r\\nfor (java.util.Iterator\\u003cProperties\\u003e iterator \\u003d Tags.iterator(); iterator.hasNext();)\\r\\n{\\r\\n    tag \\u003d (Properties)iterator.next();\\r\\n    epc \\u003d tag.getProperty(\\\"epc\\\");\\r\\n    logicaldevice \\u003d tag.getProperty(\\\"logicaldevice\\\");\\r\\n\\r\\n    if (epc\\u003d\\u003dnull || logicaldevice\\u003d\\u003dnull) {\\r\\n        continue;\\r\\n    }\\r\\n\\r\\n    if (tag.getProperty(\\\"@rssi\\\")\\u003d\\u003dnull) {\\r\\n        tag.setProperty(\\\"@rssi\\\",\\\"0\\\");\\r\\n    }\\r\\n\\r\\n    try {\\r\\n        Float.parseFloat(tag.getProperty(\\\"@rssi\\\"));\\r\\n    }\\r\\n\\r\\n    catch (Exception e) {\\r\\n        tag.setProperty(\\\"@rssi\\\",\\\"0\\\");\\r\\n    }\\r\\n\\r\\n    currRSSI \\u003d Float.parseFloat(tag.getProperty(\\\"@rssi\\\"));\\r\\n    \\r\\n    if (!lds.containsKey(logicaldevice)) {\\r\\n        lds.put(logicaldevice, new HashMap\\u003cString, Properties\\u003e());\\r\\n    }\\r\\n    currLD \\u003d lds.get(logicaldevice);\\r\\n    \\r\\n    if (!currLD.containsKey(epc))\\r\\n    {\\r\\n        @envoy.AM_GetRefAndNum{EPC:epc} \\u003e vref_num;\\r\\n        ///\\r\\n        if (vref_num \\u003d\\u003d null) {\\r\\n            continue;\\r\\n        }\\r\\n\\r\\n\\r\\n        try\\r\\n        {\\r\\n            ref_num \\u003d (String)vref_num;\\r\\n            ref \\u003d ref_num.split(\\\"\\\\\\\\,\\\")[0];\\r\\n            num \\u003d ref_num.split(\\\"\\\\\\\\,\\\")[1];\\r\\n        }\\r\\n        catch(Exception exp){ref\\u003dnum\\u003d\\\"\\\";}\\r\\n\\r\\n        c \\u003d new Properties();\\r\\n        //These will be set once\\r\\n        c.setProperty(\\\"epc\\\", epc);\\r\\n        c.setProperty(\\\"logicaldevice\\\", logicaldevice);\\r\\n        c.setProperty(\\\"ref\\\", ref);\\r\\n        c.setProperty(\\\"num\\\", num);\\r\\n\\r\\n        //Get Ref\\r\\n        //Get Num\\r\\n\\r\\n        \\r\\n        //These will be set again\\r\\n        c.setProperty(\\\"avg_rssi\\\",Float.toString(currRSSI));\\r\\n        c.setProperty(\\\"peak_rssi\\\",Float.toString(currRSSI));\\r\\n        c.setProperty(\\\"count\\\", \\\"1\\\");\\r\\n        \\r\\n        currLD.put(epc, c);\\r\\n    }\\r\\n    else {\\r\\n        c \\u003d currLD.get(epc);\\r\\n        oldAvgRSSI \\u003d Float.parseFloat(c.getProperty(\\\"avg_rssi\\\"));\\r\\n        oldCount \\u003d Float.parseFloat(c.getProperty(\\\"count\\\"));\\r\\n        newAvgRSSI \\u003d (oldAvgRSSI*oldCount+currRSSI)/(oldCount+1);\\r\\n        oldPeakRSSI \\u003d Float.parseFloat(c.getProperty(\\\"peak_rssi\\\"));\\r\\n        \\r\\n        // set the new peak rssi\\r\\n        if (currRSSI \\u003e oldPeakRSSI) {\\r\\n            newPeakRSSI \\u003d currRSSI;\\r\\n            c.setProperty(\\\"peak_rssi\\\", Float.toString(newPeakRSSI));\\r\\n        }\\r\\n\\r\\n        c.setProperty(\\\"avg_rssi\\\", Float.toString(newAvgRSSI));\\r\\n        c.setProperty(\\\"count\\\", Integer.toString((int)Math.floor(oldCount+1)));\\r\\n    }\\r\\n}\\r\\nfor (java.util.Iterator\\u003cjava.util.Map.Entry\\u003cString, HashMap\\u003cString, Properties\\u003e\\u003e\\u003e it \\u003d lds.entrySet().iterator(); it.hasNext();) {\\r\\n    for (java.util.Iterator\\u003cjava.util.Map.Entry\\u003cString, Properties\\u003e\\u003e it2 \\u003d it.next().getValue().entrySet().iterator(); it2.hasNext();) {\\r\\n        finalTags.add(it2.next().getValue());\\r\\n    }\\r\\n}\\r\\n\\r\\nif (DEBUG) {\\r\\n\\r\\n    @envoy.Log{level:\\\"trace\\\",text:finalTags.toString()};\\r\\n}\\r\\nreturn finalTags;\\r\\n\"\n  },\n  {\n    \"name\": \"AM_GetRefAndNum\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"EPC\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5845077788866768E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"EPC\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n//res \\u003d [ref],[Num]\\r\\nBoolean DEBUG \\u003d false;\\r\\n@envoy.GetGS{name:\\\"DEBUG\\\"} \\u003e gsDEBUG;\\r\\nif (gsDEBUG !\\u003d null) {\\r\\n    if((Integer)gsDEBUG \\u003d\\u003d 1)\\r\\n    {\\r\\n        DEBUG \\u003d true;\\r\\n    }\\r\\n}\\r\\n\\r\\nString res \\u003d null; \\r\\nString GRAI_PREFIX \\u003d \\\"33\\\";\\r\\nString ref\\u003d\\\"\\\",num\\u003d\\\"\\\";\\r\\n\\r\\n if (EPC.startsWith(GRAI_PREFIX)) {\\r\\n    try {\\r\\n         @envoy.GetEPCTagURI{EPC:EPC} \\u003e vTagURI;\\r\\n\\r\\n         if (vTagURI !\\u003d null) { \\r\\n            String legacy \\u003d (String) vTagURI;\\r\\n            if (legacy !\\u003d null \\u0026\\u0026 !legacy.isEmpty()) {\\r\\n                String[] fs \\u003d legacy.split(\\\"\\\\\\\\.\\\");\\r\\n                ref\\u003dfs[3];\\r\\n                num\\u003dref.substring(ref.length()-1, ref.length());\\r\\n                ref \\u003d ref.substring(0, ref.length()-1);\\r\\n                res \\u003d ref+\\\",\\\"+num;\\r\\n                if (DEBUG) {\\r\\n                    @envoy.Log{level:\\\"trace\\\",text:\\\"res_num: \\\" + res};\\r\\n                }\\r\\n\\r\\n            }\\r\\n            return res;\\r\\n\\r\\n         }\\r\\n\\r\\n    }\\r\\n    catch (Exception e) {\\r\\n       @envoy.Log{level:\\\"error\\\",text:e.getMessage()};\\r\\n    }\\r\\n }\\r\\n\\r\\nreturn res;\"\n  },\n  {\n    \"name\": \"AM_HTTPPostWithDetails\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"URI\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0431505653944685E9\"\n      },\n      {\n        \"name\": \"Data\",\n        \"editor\": \"Text\",\n        \"type\": \"Object\",\n        \"activity\": null,\n        \"id\": \"1.2828649784126508E9\"\n      },\n      {\n        \"name\": \"Headers\",\n        \"editor\": \"Text\",\n        \"type\": \"Properties\",\n        \"activity\": null,\n        \"id\": \"1.086252002465373E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"@envoy.declare{name:\\\"URI\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"Data\\\",type:\\\"Object\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"Headers\\\",type:\\\"Properties\\\",editor:\\\"Text\\\"};\\r\\n\\r\\njava.util.Properties responseData \\u003d new java.util.Properties();\\r\\ntry {\\r\\n\\tjava.net.URL url \\u003d new java.net.URL(URI);\\r\\n\\tjava.net.HttpURLConnection urlConn \\u003d (java.net.HttpURLConnection) url.openConnection();\\r\\n\\turlConn.setDoInput (true);\\r\\n\\t// Let the RTS know that we want to do output.\\r\\n\\turlConn.setDoOutput (true);\\r\\n\\t// No caching, we want the real thing.\\r\\n\\turlConn.setUseCaches (false);\\r\\n\\t\\r\\n\\turlConn.setRequestMethod(\\\"POST\\\");\\r\\n\\t\\r\\n\\tProperties props \\u003d (Properties) Headers;\\r\\n\\tfor (String key: props.stringPropertyNames()) {\\r\\n\\t\\tString val \\u003d props.getProperty(key);\\r\\n\\t\\turlConn.setRequestProperty(key,val);\\r\\n\\t}\\r\\n\\r\\n\\turlConn.connect();\\r\\n\\ttry(java.io.BufferedOutputStream stream \\u003d new java.io.BufferedOutputStream(urlConn.getOutputStream())){\\r\\n\\t\\tstream.write((byte[])Data);\\r\\n\\t\\tstream.flush();\\r\\n\\t}\\r\\n\\r\\n\\tresponseData.put(\\\"code\\\", urlConn.getResponseCode());\\r\\n\\r\\n\\tString response \\u003d \\\"\\\";\\r\\n\\ttry(java.io.DataInputStream  input \\u003d new java.io.DataInputStream (urlConn.getInputStream())){\\r\\n\\t\\tString str \\u003d null;\\r\\n\\t\\twhile (null !\\u003d ((str \\u003d input.readLine()))) {\\r\\n       \\t\\tresponse +\\u003d str + \\\"\\\\n\\\";\\r\\n\\t\\t}\\r\\n\\t}\\r\\n\\tresponseData.put(\\\"body\\\", response);\\r\\n} catch(Exception exp) {\\r\\n\\tresponseData.put(\\\"error\\\",exp.getMessage());\\r\\n}\\r\\nreturn responseData;\\r\\n\"\n  },\n  {\n    \"name\": \"AM_InitDB\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"localDsHost\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.203403187142988E9\"\n      },\n      {\n        \"name\": \"localDsPort\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.8285025870503795E8\"\n      },\n      {\n        \"name\": \"localDsName\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.2647880478272572E8\"\n      },\n      {\n        \"name\": \"localDsUsername\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.011901027759699E8\"\n      },\n      {\n        \"name\": \"localDsPassword\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.1554546847687895E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"@envoy.declare{name:\\\"localDsHost\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\n@envoy.declare{name:\\\"localDsPort\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\n@envoy.declare{name:\\\"localDsName\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\n@envoy.declare{name:\\\"localDsUsername\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\n@envoy.declare{name:\\\"localDsPassword\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\nString vname \\u003d \\\"DEBUG\\\";\\r\\n@envoy.GetGS{name:vname} \\u003e GetGSReturnValue;\\n\\r\\nfinal boolean isDebug \\u003d ((Integer)GetGSReturnValue) \\u003d\\u003d 1;\\r\\r\\nString vIPAddress \\u003d localDsHost;\\r\\nString vPort \\u003d localDsPort;\\r\\nString vDatabaseName \\u003d localDsName;\\r\\nString vUsername \\u003d localDsUsername;\\r\\nString vPassword \\u003d localDsPassword;\\r\\nString vSQLStatement \\u003d \\\"CREATE DATABASE IF NOT EXISTS `\\\"+vDatabaseName+\\\"` DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;\\\";\\r\\n@envoy.MYSQLExecuteCommand{IPAddress:vIPAddress,Port:vPort,DatabaseName:vDatabaseName,Username:vUsername,Password:vPassword,SQLStatement:vSQLStatement} \\u003e MYSQLExecuteCommandReturnValue;\\r\\r\\nString vlocalDsHost \\u003d localDsHost;\\r\\nString vlocalDsPort \\u003d localDsPort;\\r\\nString vlocalDsUsername \\u003d localDsUsername;\\r\\nString vlocalDsPassword \\u003d localDsPassword;\\r\\nString vlocalDsName \\u003d localDsName;\\r\\n@envoy.AM_InitTables{localDsHost:vlocalDsHost,localDsPort:vlocalDsPort,localDsUsername:vlocalDsUsername,localDsPassword:vlocalDsPassword,localDsName:vlocalDsName,debug:isDebug} \\u003e MetatechInitTablesReturnValue;\\n\\r\\rreturn 1;\"\n  },\n  {\n    \"name\": \"AM_InitTables\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"localDsHost\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.45033959853053E8\"\n      },\n      {\n        \"name\": \"localDsPort\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.6576877708674796E7\"\n      },\n      {\n        \"name\": \"localDsUsername\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.7126650887482274E8\"\n      },\n      {\n        \"name\": \"localDsPassword\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.9141771843743104E8\"\n      },\n      {\n        \"name\": \"localDsName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.738984663282197E8\"\n      },\n      {\n        \"name\": \"debug\",\n        \"editor\": \"Text\",\n        \"type\": \"Boolean\",\n        \"activity\": null,\n        \"id\": \"4.6296879524734594E7\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"@envoy.declare{name:\\\"localDsHost\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsPort\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsUsername\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsPassword\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"debug\\\",type:\\\"Boolean\\\",editor:\\\"Text\\\"};\\r\\nfinal String TAG \\u003d \\\"MetatechInitTables - \\\";\\r\\nfinal boolean isDebug \\u003d debug;\\r\\n@envoy.Log{level:\\\"debug\\\",text:TAG+\\\"Init tables\\\"};\\r\\nString vIPAddress \\u003d localDsHost;\\r\\nString vPort \\u003d localDsPort;\\r\\nString vDatabaseName \\u003d localDsName;\\r\\nString vUsername \\u003d localDsUsername;\\r\\nString vPassword \\u003d localDsPassword;\\r\\nString vSQLStatement \\u003d \\\"CREATE TABLE IF NOT EXISTS `transaction` (\\\\n\\\" +\\r\\n                \\\"  `ID` varchar(36) NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `Date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,\\\\n\\\" +\\r\\n                \\\"  `TransactionID` varchar(36) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Location` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Operation` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `EPC` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Ref` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Num` int(11) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Ant` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Count` int(11) unsigned DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `RSSI_Avg` float NOT NULL DEFAULT \\u00270\\u0027,\\\\n\\\" +\\r\\n                \\\"  `RSSI_Peak` float NOT NULL DEFAULT \\u00270\\u0027,\\\\n\\\" +\\r\\n                \\\"  `ClientID` varchar(50)  DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `EnvoyID` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `GPS` text DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Status` int(2) NOT NULL DEFAULT \\u00271\\u0027 COMMENT \\u0027Indicates the current state of this record, it\\u0027\\u0027s either 1 \\u003d Pending or 2 \\u003d Synced\\u0027,\\\\n\\\" +\\r\\n                \\\"  PRIMARY KEY (`ID`)\\\\n\\\" +\\r\\n                \\\") ENGINE\\u003dInnoDB DEFAULT CHARSET\\u003dutf8;\\\";;\\r\\n@envoy.MYSQLExecuteCommand{IPAddress:vIPAddress,Port:vPort,DatabaseName:vDatabaseName,Username:vUsername,Password:vPassword,SQLStatement:vSQLStatement} \\u003e MYSQLExecuteCommandReturnValue;\\nif(isDebug){\\r\\tString vlevelT \\u003d \\\"info\\\";\\r\\n\\tString vtextT \\u003d TAG + (String)MYSQLExecuteCommandReturnValue;\\r\\n\\t@envoy.Log{level:vlevelT,text:vtextT};;\\r}\\rreturn 1;\"\n  },\n  {\n    \"name\": \"AM_InitTables_bk\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"localDsHost\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.40222045558295E8\"\n      },\n      {\n        \"name\": \"localDsPort\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.381476291547527E8\"\n      },\n      {\n        \"name\": \"localDsUsername\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.554485170130856E9\"\n      },\n      {\n        \"name\": \"localDsPassword\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.001968884300845E9\"\n      },\n      {\n        \"name\": \"localDsName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.763045124322813E8\"\n      },\n      {\n        \"name\": \"debug\",\n        \"editor\": \"Text\",\n        \"type\": \"Boolean\",\n        \"activity\": null,\n        \"id\": \"2.0613438222696497E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"@envoy.declare{name:\\\"localDsHost\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsPort\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsUsername\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsPassword\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"localDsName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"debug\\\",type:\\\"Boolean\\\",editor:\\\"Text\\\"};\\r\\nfinal String TAG \\u003d \\\"MetatechInitTables - \\\";\\r\\nfinal boolean isDebug \\u003d debug;\\r\\n@envoy.Log{level:\\\"debug\\\",text:TAG+\\\"Init tables\\\"};\\r\\nString vIPAddress \\u003d localDsHost;\\r\\nString vPort \\u003d localDsPort;\\r\\nString vDatabaseName \\u003d localDsName;\\r\\nString vUsername \\u003d localDsUsername;\\r\\nString vPassword \\u003d localDsPassword;\\r\\nString vSQLStatement \\u003d \\\"CREATE TABLE IF NOT EXISTS `transaction` (\\\\n\\\" +\\r\\n                \\\"  `ID` varchar(36) NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `Date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,\\\\n\\\" +\\r\\n                \\\"  `TransactionID` varchar(36) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Location` varchar(50) NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `Operation` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `EPC` varchar(50) NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `Ref` varchar(50) NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `Num` int(11) NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `Ant` varchar(50) DEFAULT NULL,\\\\n\\\" +\\r\\n                \\\"  `Count` int(11) unsigned NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `RSSI_Avg` float NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `RSSI_Peak` float NOT NULL,\\\\n\\\" +\\r\\n                \\\"  `ClientID` varchar(50) NOT NULL DEFAULT \\u00270\\u0027,\\\\n\\\" +\\r\\n                \\\"  `EnvoyID` varchar(50) NOT NULL DEFAULT \\u00270\\u0027,\\\\n\\\" +\\r\\n                \\\"  `GPS` text,\\\\n\\\" +\\r\\n                \\\"  `Status` int(2) NOT NULL DEFAULT \\u00271\\u0027 COMMENT \\u0027Indicates the current state of this record, it\\u0027\\u0027s either 1 \\u003d Pending or 2 \\u003d Synced\\u0027,\\\\n\\\" +\\r\\n                \\\"  PRIMARY KEY (`ID`)\\\\n\\\" +\\r\\n                \\\") ENGINE\\u003dInnoDB DEFAULT CHARSET\\u003dutf8;\\\";;\\r\\n@envoy.MYSQLExecuteCommand{IPAddress:vIPAddress,Port:vPort,DatabaseName:vDatabaseName,Username:vUsername,Password:vPassword,SQLStatement:vSQLStatement} \\u003e MYSQLExecuteCommandReturnValue;\\nif(isDebug){\\r\\tString vlevelT \\u003d \\\"info\\\";\\r\\n\\tString vtextT \\u003d TAG + (String)MYSQLExecuteCommandReturnValue;\\r\\n\\t@envoy.Log{level:vlevelT,text:vtextT};;\\r}\\rreturn 1;\"\n  },\n  {\n    \"name\": \"AM_Read\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.649247043147842E9\"\n      },\n      {\n        \"name\": \"PauseDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.4396097247815118E9\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"7.954385881920388E8\"\n      },\n      {\n        \"name\": \"Operation\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.6052481154163086E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\r\\n@envoy.declare{name:\\\"PauseDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"Operation\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n\\r\\n\\r\\nArrayList\\u003cProperties\\u003e tags \\u003d null;\\r\\n\\r\\nif (PauseDuration \\u003e 0) {\\r\\n\\t@envoy.Sleep{Milliseconds:PauseDuration};\\r\\n}\\r\\r\\n@envoy.StreamTagsPersist{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e streamedTags;\\r\\n\\r\\n\\r\\nif (streamedTags!\\u003dnull) {\\r\\n\\r\\n\\ttags \\u003d (ArrayList\\u003cProperties\\u003e)streamedTags;\\r\\n\\r\\n\\t@envoy.AM_AggregateTags{Tags:tags} \\u003e aggTags;\\r\\n\\r\\n\\tif (aggTags!\\u003dnull) {\\r\\n\\r\\n\\t\\ttags \\u003d (ArrayList\\u003cProperties\\u003e)aggTags;\\r\\n\\t\\t@envoy.AM_SaveLocal{tags:tags,operation:Operation,isbutton:0,location:\\\"\\\"} \\u003e AM_SaveLocalReturnValue;\\r\\n\\t\\t\\r\\n\\t\\tif (AM_SaveLocalReturnValue!\\u003d null) {\\r\\n\\t\\t\\treturn (Integer)AM_SaveLocalReturnValue;\\r\\n\\t\\t}\\r\\n\\t}\\r\\n}\\r\\n\\r\\ntags\\u003d null;\\r\\n\\r\\nreturn 0;\\r\\n\"\n  },\n  {\n    \"name\": \"AM_SaveLocal\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"tags\",\n        \"editor\": \"Text\",\n        \"type\": \"ArrayList\\u003cProperties\\u003e\",\n        \"activity\": null,\n        \"id\": \"8.342141871944455E8\"\n      },\n      {\n        \"name\": \"operation\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.1358916891795337E9\"\n      },\n      {\n        \"name\": \"isbutton\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"3.298440799754713E8\"\n      },\n      {\n        \"name\": \"location\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.327417462071001E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"\\t@envoy.declare{name:\\\"tags\\\",type:\\\"ArrayList\\u003cProperties\\u003e\\\",editor:\\\"Text\\\"};\\r\\n\\t@envoy.declare{name:\\\"operation\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n\\t@envoy.declare{name:\\\"isbutton\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\r\\n\\t@envoy.declare{name:\\\"location\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\r\\n\\t//return result description\\r\\n\\t//0:no tags\\r\\n\\t//1:Success\\r\\n\\t//2:Error\\r\\n\\r\\n\\tBoolean DEBUG \\u003d true;\\r\\n\\t@envoy.GetGS{name:\\\"DEBUG\\\"} \\u003e gsDEBUG;\\r\\n\\tif (gsDEBUG !\\u003d null) {\\r\\n\\t\\tif((Integer)gsDEBUG \\u003d\\u003d 1)\\r\\n\\t\\t{\\r\\n\\t\\t\\tDEBUG \\u003d true;\\r\\n\\t\\t}\\r\\n\\t}\\r\\n\\r\\n\\tBoolean isButton \\u003d isbutton \\u003d\\u003d 1;\\r\\n\\r\\n\\tString host,port,dbuser,pwd,dbname;\\t\\t\\t\\t\\t\\t \\r\\n\\tString uuid,transid,loc,epc,ref,num,ant,count,avg_rssi,peak_rssi,client,envoy,gps;\\r\\n\\r\\n\\tInteger Result \\u003d 0;\\r\\n\\r\\n\\tuuid \\u003d \\\"UUID()\\\";\\r\\n\\tclient \\u003d \\\"\\\";\\r\\n\\tenvoy \\u003d \\\"\\\";\\r\\n\\tgps \\u003d \\\"\\\";\\r\\n\\ttransid \\u003d\\\"\\\";\\r\\n\\r\\n\\r\\n\\t@envoy.GetGS{name:\\\"ENVOY_ID\\\"} \\u003e gsEnvoy;\\r\\n\\t@envoy.GetGS{name:\\\"CLIENT_ID\\\"} \\u003e gsClient;\\r\\n\\t@envoy.GetGS{name:\\\"GPS\\\"} \\u003e gsGPS;\\r\\n\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_HOST\\\"} \\u003e gsHost;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_PORT\\\"} \\u003e gsPort;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_USER\\\"} \\u003e gsDBUser;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_PWD\\\"} \\u003e gsPwd;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_DBNAME\\\"} \\u003e gsDBName;\\r\\n\\r\\n\\tif (gsHost !\\u003d null) {host \\u003d (String)gsHost;} else { return 2;}\\r\\n\\tif (gsPort !\\u003d null) {port \\u003d (String)gsPort;} else { return 2;}\\r\\n\\tif (gsDBUser !\\u003d null) {dbuser \\u003d (String)gsDBUser;} else { return 2;}\\r\\n\\tif (gsPwd !\\u003d null) {pwd \\u003d (String)gsPwd;} else { return 2;}\\r\\n\\tif (gsDBName !\\u003d null) {dbname \\u003d (String)gsDBName;} else { return 2;}\\r\\n\\r\\n\\r\\n\\tif (gsEnvoy !\\u003d null) {envoy \\u003d (String)gsEnvoy;}\\r\\n\\tif (gsClient !\\u003d null) {client \\u003d (String)gsClient;}\\r\\n\\tif (gsGPS !\\u003d null) {gps \\u003d (String)gsGPS;}\\r\\n\\r\\n\\r\\n\\tStringBuilder statement  \\u003d new StringBuilder();\\r\\n\\r\\n\\r\\n\\ttry\\r\\n\\t{\\r\\n\\t\\tif (isButton) {\\r\\n\\t\\t\\t\\r\\n\\t\\t\\ttransid \\u003d \\\"\\\";\\r\\n\\t\\t\\t@envoy.GetGS{name:\\\"Z_LAST_FILL_TID\\\"} \\u003e gsZ_LAST_FILL_TID;\\r\\n\\t\\t\\tif (gsZ_LAST_FILL_TID !\\u003d null) {\\r\\n\\r\\n\\t\\t\\t\\ttransid \\u003d (String)gsZ_LAST_FILL_TID;\\r\\n\\t\\t\\t\\t//Button Transaction Statement\\r\\n\\t\\t\\t\\tstatement.append(\\\"insert into transaction (`ID`,`TransactionID`,`Location`,`Operation`,`ClientID`,`EnvoyID`,`GPS`) Values \\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"(\\\");statement.append(uuid);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(transid);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(location);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(operation);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(client);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(envoy);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(gps);statement.append(\\\"\\u0027\\\");statement.append(\\\")\\\");\\r\\n\\t\\t\\t} \\r\\n\\t\\t\\t\\r\\n\\t\\t\\telse \\r\\n\\t\\t\\t{ \\r\\n\\t\\t\\t\\treturn 2;\\r\\n\\t\\t\\t}\\r\\n\\r\\n\\r\\n\\t\\t}\\r\\n\\t\\telse\\r\\n\\t\\t{\\r\\n\\t\\t\\tif (tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0) {\\r\\n\\t\\t\\t\\t\\ttransid \\u003d java.util.UUID.randomUUID().toString();\\r\\n\\t\\t\\t\\t\\t//Tags Transaction Statement\\r\\n\\t\\t\\t\\t\\tstatement.append(\\\"insert into transaction (`ID`,`TransactionID`,`Location`,`Operation`,`EPC`,`Ref`,`Num`,`Ant`,`Count`,`RSSI_Avg`,`RSSI_Peak`,`ClientID`,`EnvoyID`,`GPS`) Values \\\");\\r\\n\\r\\n\\t\\t\\t\\t\\tfor (int i\\u003d0; i\\u003c tags.size(); i++) {\\r\\n\\r\\n\\t\\t\\t\\t\\t\\tif (i\\u003e0) {\\r\\n\\t\\t\\t\\t\\t\\t\\tstatement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\t\\tProperties tag \\u003d tags.get(i);\\r\\n\\r\\n\\t\\t\\t\\t\\t\\tloc \\u003d tag.getProperty(\\\"logicaldevice\\\");\\r\\n\\t\\t\\t\\t\\t\\tepc \\u003d tag.getProperty(\\\"epc\\\");\\r\\n\\t\\t\\t\\t\\t\\tref \\u003d tag.getProperty(\\\"ref\\\");\\r\\n\\t\\t\\t\\t\\t\\tnum \\u003d tag.getProperty(\\\"num\\\");\\r\\n\\t\\t\\t\\t\\t\\tant\\u003d\\\"\\\";\\r\\n\\t\\t\\t\\t\\t\\tcount \\u003d tag.getProperty(\\\"count\\\");\\r\\n\\t\\t\\t\\t\\t\\tavg_rssi \\u003d tag.getProperty(\\\"avg_rssi\\\");\\r\\n\\t\\t\\t\\t\\t\\tpeak_rssi \\u003d tag.getProperty(\\\"peak_rssi\\\");\\r\\n\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"(\\\");statement.append(uuid);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(transid);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(loc);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(operation);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(epc);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(ref);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(num);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(ant);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(count);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(avg_rssi);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(peak_rssi);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(client);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(envoy);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(gps);statement.append(\\\"\\u0027\\\");statement.append(\\\")\\\");\\r\\n\\r\\n\\t\\t\\t\\t\\t\\tif(i \\u003d\\u003d tags.size() -1)\\r\\n\\t\\t\\t\\t\\t\\t{\\r\\n\\t\\t\\t\\t\\t\\t\\tstatement.append(\\\";\\\");\\r\\n\\t\\t\\t\\t\\t\\t}\\r\\n\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\r\\n\\t\\t\\t\\t\\tif (DEBUG) {\\r\\n\\t\\t\\t\\t\\t\\t@envoy.Log{level:\\\"trace\\\",text:statement.toString()};\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\t@envoy.MYSQLExecuteCommand{IPAddress:host,Port:port,DatabaseName:dbname,Username:dbuser,Password:pwd,SQLStatement:statement.toString()} \\u003e vSQLresult;\\r\\n\\t\\t\\t\\t\\t\\r\\n\\t\\t\\t\\t\\tif (vSQLresult!\\u003dnull) {\\r\\n\\t\\t\\t\\t\\t\\t \\r\\n\\t\\t\\t\\t\\t\\tif (DEBUG) {\\r\\n\\t\\t\\t\\t\\t\\t\\t@envoy.Log{level:\\\"trace\\\",text:vSQLresult.toString()};\\r\\n\\t\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\t\\t\\r\\n\\t\\t\\t\\t\\t\\tif (vSQLresult.toString().toLowerCase().trim().startsWith(\\\"ok\\\")) {\\r\\n\\t\\t\\t\\t\\t\\t\\tResult \\u003d 1;\\r\\n\\r\\n\\t\\t\\t\\t\\t\\t\\t// saving the last fill operation transaciton ID in a global settings to save when a button is pressed!!! - should be removed later\\r\\n\\t\\t\\t\\t\\t\\t\\tif (!isButton \\u0026\\u0026 operation.toLowerCase().startsWith(\\\"fill\\\")) {\\r\\n\\t\\t\\t\\t\\t\\t\\t\\t@envoy.SetGS{name:\\\"Z_LAST_FILL_TID\\\",value:transid,type:\\\"text\\\"};\\r\\n\\t\\t\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\t\\t\\telse if (isButton)\\r\\n\\t\\t\\t\\t\\t\\t\\t{\\r\\n\\t\\t\\t\\t\\t\\t\\t\\t@envoy.SetGS{name:\\\"Z_LAST_FILL_TID\\\",value:\\\"unknow\\\",type:\\\"text\\\"};\\r\\n\\t\\t\\t\\t\\t\\t\\t}\\r\\n\\r\\n\\r\\n\\t\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\t\\telse\\r\\n\\t\\t\\t\\t\\t\\t{\\r\\n\\t\\t\\t\\t\\t\\t\\t@envoy.Log{level:\\\"error\\\",text:vSQLresult.toString()};\\r\\n\\t\\t\\t\\t\\t\\t\\tResult \\u003d 2;\\r\\n\\t\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\t\\t\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\telse\\r\\n\\t\\t\\t\\t\\t{\\r\\n\\t\\t\\t\\t\\t\\tResult \\u003d 2;\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\t\\t\\t}\\r\\n\\t\\t}\\r\\n\\r\\n\\t}\\r\\n\\r\\n\\tcatch(Exception exp)\\r\\n\\t{\\r\\n\\t\\t@envoy.Log{level:\\\"error\\\",text:exp.getMessage()};\\r\\n\\t\\tResult \\u003d 2;\\r\\n\\t}\\r\\n\\tfinally\\r\\n\\t{\\r\\n\\t\\tstatement \\u003d null;\\r\\n\\t\\tif (DEBUG) {\\r\\n\\t\\t\\t@envoy.Log{level:\\\"trace\\\",text:\\\"Result: \\\" + Result.toString()};\\r\\n\\t\\t}\\r\\n\\r\\n\\t\\treturn Result;\\r\\n\\t}\\r\\n\"\n  },\n  {\n    \"name\": \"AM_SaveLocal_bk\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"tags\",\n        \"editor\": \"Text\",\n        \"type\": \"ArrayList\\u003cProperties\\u003e\",\n        \"activity\": null,\n        \"id\": \"1.8347403549740667E9\"\n      },\n      {\n        \"name\": \"operation\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.8696051572534245E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"\\t@envoy.declare{name:\\\"tags\\\",type:\\\"ArrayList\\u003cProperties\\u003e\\\",editor:\\\"Text\\\"};\\r\\n\\t@envoy.declare{name:\\\"operation\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n\\r\\n\\r\\n\\tBoolean DEBUG \\u003d false;\\r\\n\\t@envoy.GetGS{name:\\\"DEBUG\\\"} \\u003e gsDEBUG;\\r\\n\\tif (gsDEBUG !\\u003d null) {\\r\\n\\t\\tif((Integer)gsDEBUG \\u003d\\u003d 1)\\r\\n\\t\\t{\\r\\n\\t\\t\\tDEBUG \\u003d true;\\r\\n\\t\\t}\\r\\n\\t}\\r\\n\\r\\n\\tStringBuilder statement  \\u003d new StringBuilder();\\r\\n\\tstatement.append(\\\"insert into transaction (`ID`,`TransactionID`,`Location`,`Operation`,`EPC`,`Ref`,`Num`,`Ant`,`Count`,`RSSI_Avg`,`RSSI_Peak`,`ClientID`,`EnvoyID`,`GPS`) Values \\\");\\r\\n\\t\\r\\n\\tString host,port,dbuser,pwd,dbname;\\t\\t\\t\\t\\t\\t \\r\\n\\tString uuid,transid,loc,epc,ref,num,ant,count,avg_rssi,peak_rssi,client,envoy,gps;\\r\\n\\r\\n\\r\\n\\tInteger Result \\u003d 0;\\r\\n\\r\\n\\tuuid \\u003d \\\"newUUID()\\\";\\r\\n\\ttransid \\u003d java.util.UUID.randomUUID().toString();\\r\\n\\tclient \\u003d \\\"\\\";\\r\\n\\tenvoy \\u003d \\\"\\\";\\r\\n\\tgps \\u003d \\\"\\\";\\r\\n\\r\\n\\r\\n\\r\\n\\t@envoy.GetGS{name:\\\"ENVOY_ID\\\"} \\u003e gsEnvoy;\\r\\n\\t@envoy.GetGS{name:\\\"CLIENT_ID\\\"} \\u003e gsClient;\\r\\n\\t@envoy.GetGS{name:\\\"GPS\\\"} \\u003e gsGPS;\\r\\n\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_HOST\\\"} \\u003e gsHost;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_PORT\\\"} \\u003e gsPort;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_USER\\\"} \\u003e gsDBUser;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_PWD\\\"} \\u003e gsPwd;\\r\\n\\t@envoy.GetGS{name:\\\"MYSQL_DBNAME\\\"} \\u003e gsDBName;\\r\\n\\r\\n\\tif (gsHost !\\u003d null) {host \\u003d (String)gsHost;} else { return 2;}\\r\\n\\tif (gsPort !\\u003d null) {port \\u003d (String)gsPort;} else { return 2;}\\r\\n\\tif (gsDBUser !\\u003d null) {dbuser \\u003d (String)gsDBUser;} else { return 2;}\\r\\n\\tif (gsPwd !\\u003d null) {pwd \\u003d (String)gsPwd;} else { return 2;}\\r\\n\\tif (gsDBName !\\u003d null) {dbname \\u003d (String)gsDBName;} else { return 2;}\\r\\n\\r\\n\\r\\n\\tif (gsEnvoy !\\u003d null) {envoy \\u003d (String)gsEnvoy;}\\r\\n\\tif (gsClient !\\u003d null) {client \\u003d (String)gsClient;}\\r\\n\\tif (gsGPS !\\u003d null) {gps \\u003d (String)gsGPS;}\\r\\n\\r\\n\\r\\n\\ttry\\r\\n\\t{\\r\\n\\t\\t\\tif (tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0) {\\r\\n\\t\\t\\tfor (int i\\u003d0; i\\u003c tags.size(); i++) {\\r\\n\\r\\n\\t\\t\\t\\tif (i\\u003e0) {\\r\\n\\t\\t\\t\\t\\tstatement.append(\\\",\\\");\\r\\n\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\tProperties tag \\u003d tags.get(i);\\r\\n\\r\\n\\t\\t\\t\\tloc \\u003d tag.getProperty(\\\"logicaldevice\\\");\\r\\n\\t\\t\\t\\tepc \\u003d tag.getProperty(\\\"epc\\\");\\r\\n\\t\\t\\t\\tref \\u003d tag.getProperty(\\\"ref\\\");\\r\\n\\t\\t\\t\\tnum \\u003d tag.getProperty(\\\"num\\\");\\r\\n\\t\\t\\t\\tant\\u003d\\\"\\\";\\r\\n\\t\\t\\t\\tcount \\u003d tag.getProperty(\\\"count\\\");\\r\\n\\t\\t\\t\\tavg_rssi \\u003d tag.getProperty(\\\"avg_rssi\\\");\\r\\n\\t\\t\\t\\tpeak_rssi \\u003d tag.getProperty(\\\"peak_rssi\\\");\\r\\n\\r\\n\\t\\t\\t\\tstatement.append(\\\"(newUUID()\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(transid);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(loc);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(operation);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(epc);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(ref);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(num);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(ant);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(count);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(avg_rssi);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(peak_rssi);statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(client);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(envoy);statement.append(\\\"\\u0027\\\");statement.append(\\\",\\\");\\r\\n\\t\\t\\t\\tstatement.append(\\\"\\u0027\\\");statement.append(gps);statement.append(\\\"\\u0027\\\");statement.append(\\\")\\\");\\r\\n\\r\\n\\t\\t\\t\\tif(i \\u003d\\u003d tags.size() -1)\\r\\n\\t\\t\\t\\t{\\r\\n\\t\\t\\t\\t\\tstatement.append(\\\";\\\");\\r\\n\\t\\t\\t\\t}\\r\\n\\t\\t\\t}\\r\\n\\r\\n\\t\\t\\tif (DEBUG) {\\r\\n\\t\\t\\t\\t@envoy.Log{level:\\\"trace\\\",text:statement.toString()};\\r\\n\\t\\t\\t}\\r\\n\\t\\t\\t@envoy.MYSQLExecuteCommand{IPAddress:host,Port:port,DatabaseName:dbname,Username:dbuser,Password:pwd,SQLStatement:statement.toString()} \\u003e vSQLresult;\\r\\n\\t\\t\\t\\r\\n\\t\\t\\tif (vSQLresult!\\u003dnull) {\\r\\n\\t\\t\\t\\t \\r\\n\\t\\t\\t\\t\\r\\n\\t\\t\\t\\tif (DEBUG) {\\r\\n\\t\\t\\t\\t\\t@envoy.Log{level:\\\"trace\\\",text:vSQLresult.toString()};\\r\\n\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\r\\n\\t\\t\\t\\tif (vSQLresult.toString().toLowerCase().trim().startsWith(\\\"ok\\\")) {\\r\\n\\t\\t\\t\\t\\tResult \\u003d 1;\\r\\n\\t\\t\\t\\t\\t\\r\\n\\t\\t\\t\\t\\t// saving the last fill operation transaciton ID in a global settings to save when a button is pressed!!! - should be removed later\\r\\n\\t\\t\\t\\t\\tif (operation.toLowerCase().startsWith(\\\"fill\\\")) {\\r\\n\\t\\t\\t\\t\\t\\t@envoy.SetGS{name:\\\"Z_LAST_FILL_TID\\\",value:transid,type:\\\"text\\\"};\\r\\n\\t\\t\\t\\t\\t}\\r\\n\\r\\n\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\telse\\r\\n\\t\\t\\t\\t{\\r\\n\\t\\t\\t\\t\\t@envoy.Log{level:\\\"error\\\",text:vSQLresult.toString()};\\r\\n\\t\\t\\t\\t\\tResult \\u003d 2;\\r\\n\\t\\t\\t\\t}\\r\\n\\t\\t\\t\\t\\r\\n\\t\\t\\t}\\r\\n\\t\\t\\telse\\r\\n\\t\\t\\t{\\r\\n\\t\\t\\t\\tResult \\u003d 2;\\r\\n\\t\\t\\t}\\r\\n\\t\\t}\\r\\n\\t}\\r\\n\\r\\n\\tcatch(Exception exp)\\r\\n\\t{\\r\\n\\t\\t@envoy.Log{level:\\\"error\\\",text:exp.getMessage()};\\r\\n\\t\\tResult \\u003d 2;\\r\\n\\t}\\r\\n\\tfinally\\r\\n\\t{\\r\\n\\t\\tstatement \\u003d null;\\r\\n\\t\\tif (DEBUG) {\\r\\n\\t\\t\\t@envoy.Log{level:\\\"trace\\\",text:\\\"Result: \\\" + Result.toString()};\\r\\n\\t\\t}\\r\\n\\r\\n\\t\\treturn Result;\\r\\n\\t}\\r\\n\"\n  },\n  {\n    \"name\": \"AM_Sync\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Metatech\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"cloudPort\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.474602290618783E8\"\n      },\n      {\n        \"name\": \"cloudHost\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.477522335565605E8\"\n      },\n      {\n        \"name\": \"cloudUsername\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7437065285434268E9\"\n      },\n      {\n        \"name\": \"cloudPassword\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.294654893059775E8\"\n      },\n      {\n        \"name\": \"localDsHost\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.2695650446178237E8\"\n      },\n      {\n        \"name\": \"localDsPort\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9346874755938678E9\"\n      },\n      {\n        \"name\": \"localDsUsername\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.435398660082818E8\"\n      },\n      {\n        \"name\": \"localDsPassword\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.1065121971766431E9\"\n      },\n      {\n        \"name\": \"localDsName\",\n        \"editor\": \"GlobalSettings\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4658982271333048E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"cloudPort\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"cloudHost\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"cloudUsername\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"cloudPassword\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"localDsHost\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"localDsPort\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"localDsUsername\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"localDsPassword\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\n@envoy.declare{name:\\\"localDsName\\\",type:\\\"String\\\",editor:\\\"GlobalSettings\\\"};\\r\\nString vname \\u003d \\\"DEBUG\\\";\\r\\n@envoy.GetGS{name:vname} \\u003e debug;\\r\\nString vDname \\u003d \\\"VAR_DELETE_AFTER_SYNC\\\";\\r\\n@envoy.GetGS{name:vDname} \\u003e deleteAfterSync;\\r\\nvDname \\u003d \\\"CLOUD_APP_NAME\\\";\\r\\n@envoy.GetGS{name:vDname} \\u003e cCloudAppName;\\r\\n\\r\\n\\r\\nfinal String TAG \\u003d \\\"MetatechSync -\\\";\\r\\nfinal boolean isDebug \\u003d ((Integer)debug) \\u003d\\u003d 1;\\r\\nfinal boolean isDeleteAfterSync \\u003d ((Integer)deleteAfterSync) \\u003d\\u003d 1;\\r\\n\\r\\nif(isDebug){\\r\\n\\t@envoy.Log{level:\\\"info\\\",text:TAG + \\\" Started\\\"};\\r\\n}\\r\\n\\r\\n//Cloud backend properties\\r\\nfinal String vCloudHost                     \\u003d cloudHost;\\r\\nfinal String vCloudPort                     \\u003d cloudPort;\\r\\nfinal String vCloudApplicationName          \\u003d \\\"metatech\\\";\\r\\nfinal String vCloudApp                      \\u003d (String)cCloudAppName;\\r\\nfinal String vCloudEntityName               \\u003d vCloudApplicationName + \\\"$Transaction\\\";\\r\\nfinal String vCloudRestBase                 \\u003d \\\"rest/v2\\\";\\r\\nfinal String vCloudUsername                 \\u003d cloudUsername;\\r\\nfinal String vCloudPassword                 \\u003d cloudPassword;\\r\\nfinal String vCloudRemoteUrl                \\u003d String.format(\\\"http://%s:%s/%s/%s/entities/%s\\\",vCloudHost,vCloudPort,vCloudApp,vCloudRestBase,vCloudEntityName);\\r\\nfinal String vCloudRemoteUrlAuth            \\u003d String.format(\\\"http://%s:%s/%s/%s/oauth/token\\\",vCloudHost,vCloudPort,vCloudApp,vCloudRestBase);\\r\\n\\r\\n//Local data store properties       \\r\\nfinal String vIPAddress                     \\u003d localDsHost;\\r\\nfinal String vPort                          \\u003d localDsPort;\\r\\nfinal String vDatabaseName                  \\u003d localDsName;\\r\\nfinal String vUsername                      \\u003d localDsUsername;\\r\\nfinal String vPassword                      \\u003d localDsPassword;\\r\\nfinal int cPendingStatus                    \\u003d 1;\\r\\nfinal String cSelectStatement               \\u003d \\\"select * from `transaction` t where t.`Status` \\u003d \\\" + cPendingStatus;\\r\\nfinal int cSyncedStatus                     \\u003d 2;\\r\\nfinal String cUpdateStatusStatement         \\u003d \\\"UPDATE `transaction` t SET t.Status \\u003d \\\" + cSyncedStatus + \\\" WHERE t.ID \\u003d \\\\\\u0027%s\\\\\\u0027\\\";\\r\\nfinal String cDeleteStatement\\t\\t\\t\\t\\u003d \\\"DELETE FROM `transaction` WHERE ID \\u003d \\\\\\u0027%s\\\\\\u0027 OR Status \\u003d \\\"+cSyncedStatus;\\r\\n //Request properties and headers for access token\\r\\nfinal String cCacheControl                  \\u003d \\\"no-cache\\\";\\r\\nString vAccessToken                         \\u003d null;\\r\\nfinal String cUrlParameters                 \\u003d String.format(\\\"grant_type\\u003dpassword\\u0026username\\u003d%s\\u0026password\\u003d%s\\\",vCloudUsername,vCloudPassword);\\r\\nfinal byte[] cPostData                      \\u003d cUrlParameters.getBytes( java.nio.charset.StandardCharsets.UTF_8 );\\r\\nfinal String cAccessTokenContentType        \\u003d \\\"application/x-www-form-urlencoded\\\";\\r\\nfinal String cAccessTokenAuthorization      \\u003d \\\"Basic Y2xpZW50OnNlY3JldA\\u003d\\u003d\\\";\\r\\njava.util.Properties vAccessTokenHeaders    \\u003d new java.util.Properties();\\r\\n\\r\\nvAccessTokenHeaders.put(\\\"Content-type\\\",cAccessTokenContentType);\\r\\nvAccessTokenHeaders.put(\\\"authorization\\\",cAccessTokenAuthorization);\\r\\nvAccessTokenHeaders.put(\\\"cache-control\\\",cCacheControl);\\r\\n\\r\\n\\r\\n@envoy.AM_HTTPPostWithDetails{URI:vCloudRemoteUrlAuth,Data:cPostData,Headers:vAccessTokenHeaders} \\u003e responseData;\\r\\nfinal java.util.Properties responseProps \\u003d (java.util.Properties)responseData;\\r\\nif(((int)responseProps.get(\\\"code\\\")) \\u003d\\u003d java.net.HttpURLConnection.HTTP_OK) {\\r\\n    //If the request was successfull\\r\\n    String body \\u003d ((String)responseProps.get(\\\"body\\\"));\\r\\n    java.util.regex.Pattern pattern \\u003d java.util.regex.Pattern.compile(\\\"\\\\\\\"access_token\\\\\\\"(\\\\\\\\s)*:(\\\\\\\\s)*\\\\\\\"(.+?)\\\\\\\"\\\");\\r\\n    java.util.regex.Matcher matcher \\u003d pattern.matcher(body);\\r\\n    final boolean found \\u003d matcher.find();\\r\\n    if(found) {\\r\\n        final String group \\u003d matcher.group(0);\\r\\n        vAccessToken \\u003d group.replaceAll(\\\"\\\\\\\"\\\", \\\"\\\").split(\\\":\\\")[1];\\r\\n    }\\r\\n} else {\\r\\n    //If the request failed\\r\\n    String vlevelE \\u003d \\\"error\\\";\\r\\n    String vtextE \\u003d TAG + \\\" Could retrieve access_token from \\\" + vCloudRemoteUrlAuth+\\\".\\\\nError: \\\" + responseProps.get(\\\"error\\\");\\r\\n    @envoy.Log{level:vlevelE,text:vtextE};\\r\\n\\r\\n    return vtextE;\\r\\n}\\r\\n\\r\\njava.util.Properties cEntityRequestHeaders  \\u003d new java.util.Properties();\\r\\nfinal String cEntityRequestAuthorization    \\u003d \\\"Bearer \\\" + vAccessToken;\\r\\nfinal String cEntityRequestContentType      \\u003d \\\"application/json\\\";    \\r\\ncEntityRequestHeaders.put(\\\"authorization\\\",cEntityRequestAuthorization);\\r\\ncEntityRequestHeaders.put(\\\"Content-type\\\",cEntityRequestContentType);\\r\\ncEntityRequestHeaders.put(\\\"cache-control\\\",cCacheControl);\\r\\n\\r\\ntry {\\r\\n    @envoy.MYSQLExecuteReader{IPAddress:vIPAddress,Port:vPort,DatabaseName:vDatabaseName,Username:vUsername,Password:vPassword,SQLStatement:cSelectStatement} \\u003e selectReturnValue;\\r\\n\\r\\n    long rowCount \\u003d 0;\\r\\n    if(selectReturnValue !\\u003d null \\u0026\\u0026 selectReturnValue instanceof java.util.ArrayList) {\\r\\n        ArrayList\\u003cProperties\\u003e resultSet \\u003d (ArrayList\\u003cProperties\\u003e) selectReturnValue;\\r\\n        if (resultSet !\\u003d null \\u0026\\u0026 resultSet.size() \\u003e 0) {\\r\\n            final String vRecordsRetrievedLevel \\u003d \\\"debug\\\";\\r\\n            final String vRecordsRetrievedtext \\u003d TAG + \\\" Retrieved \\\"+resultSet.size()+\\\" records\\\";\\r\\n            @envoy.Log{level:vRecordsRetrievedLevel,text:vRecordsRetrievedtext} \\u003e RecordsRetrievedLogReturnValue;\\r\\n            \\r\\n            for(Properties row : resultSet) {\\r\\n                //convert row properties to JSON\\r\\n                final String location       \\u003d String.format(\\\"\\\\\\\"location\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"Location\\\"));\\r\\n                final String operation      \\u003d String.format(\\\"\\\\\\\"operation\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"Operation\\\"));\\r\\n                final String epc            \\u003d String.format(\\\"\\\\\\\"epc\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"EPC\\\"));\\r\\n                final String ant            \\u003d String.format(\\\"\\\\\\\"ant\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"Ant\\\"));\\r\\n                final String ref            \\u003d String.format(\\\"\\\\\\\"ref\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"Ref\\\"));\\r\\n                final String cNum \\u003d row.get(\\\"Num\\\") + \\\"\\\";\\r\\n                final String num            \\u003d String.format(\\\"\\\\\\\"num\\\\\\\":%s\\\",(cNum \\u003d\\u003d null || cNum.toString().isEmpty() ? \\\"0\\\" : cNum));\\r\\n                final String cCount \\u003d row.get(\\\"Count\\\") + \\\"\\\";\\r\\n                final String count          \\u003d String.format(\\\"\\\\\\\"count\\\\\\\":%s\\\",(cCount \\u003d\\u003d null || cCount.toString().isEmpty() ? \\\"0\\\" : cCount));\\r\\n                final String cRssiAvg \\u003d row.get(\\\"RSSI_Avg\\\") + \\\"\\\";\\r\\n                final String rssiAvg        \\u003d String.format(\\\"\\\\\\\"rssiAvg\\\\\\\":%s\\\",(cRssiAvg \\u003d\\u003d null || cRssiAvg.toString().isEmpty() ? \\\"0\\\" : cRssiAvg));\\r\\n                final String cRssiPeak \\u003d row.get(\\\"RSSI_Peak\\\") + \\\"\\\";\\r\\n                final String rssiPeak       \\u003d String.format(\\\"\\\\\\\"rssiPeak\\\\\\\":%s\\\",(cRssiPeak \\u003d\\u003d null || cRssiPeak.toString().isEmpty() ? \\\"0\\\" : cRssiPeak));\\r\\n                final String clientId       \\u003d String.format(\\\"\\\\\\\"clientId\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"ClientID\\\"));\\r\\n                final String envoyId        \\u003d String.format(\\\"\\\\\\\"envoyId\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"EnvoyID\\\"));\\r\\n                final String envoyDbUUID    \\u003d String.format(\\\"\\\\\\\"envoyDbUUID\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"ID\\\"));\\r\\n                final String date           \\u003d String.format(\\\"\\\\\\\"date\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"Date\\\"));\\r\\n                final String transactionId  \\u003d String.format(\\\"\\\\\\\"transactionId\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"TransactionID\\\"));\\r\\n                final String gps            \\u003d String.format(\\\"\\\\\\\"gps\\\\\\\":\\\\\\\"%s\\\\\\\"\\\",row.get(\\\"GPS\\\"));\\r\\n\\r\\n                final String jsonData       \\u003d String.format(\\\"{%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s}\\\",location,operation,epc,ref,num,count,rssiAvg,rssiPeak,clientId,envoyId,envoyDbUUID,date,transactionId,gps,ant);                \\r\\n                final byte[] jsonDataAsBytes\\u003d jsonData.getBytes(java.nio.charset.StandardCharsets.UTF_8 );\\r\\n                //Do post request\\r\\n                @envoy.AM_HTTPPostWithDetails{URI:vCloudRemoteUrl,Data:jsonDataAsBytes,Headers:cEntityRequestHeaders} \\u003e createResponseData;\\r\\n                java.util.Properties createResponseProps \\u003d (java.util.Properties)createResponseData;\\r\\n                //IF the entity instance is created, a 201 response will be returned                \\r\\n                if((int)createResponseProps.get(\\\"code\\\") \\u003d\\u003d java.net.HttpURLConnection.HTTP_CREATED) {\\r\\n                    String cUpdateRecordSQLStatement \\u003d \\\"\\\";\\r\\n                    if(isDeleteAfterSync){\\r\\n                    \\tcUpdateRecordSQLStatement  \\u003d String.format(cDeleteStatement,row.get(\\\"ID\\\"));\\r\\n                    }else{\\r\\n                    \\tcUpdateRecordSQLStatement  \\u003d String.format(cUpdateStatusStatement, row.get(\\\"ID\\\"));\\r\\n                    }\\r\\n                    @envoy.MYSQLExecuteCommand{IPAddress:vIPAddress,Port:vPort,DatabaseName:vDatabaseName,Username:vUsername,Password:vPassword,SQLStatement:cUpdateRecordSQLStatement} \\u003e updateRecordReturnValue;\\r\\n\\t\\t\\t\\t\\tif(updateRecordReturnValue !\\u003d null \\u0026\\u0026 updateRecordReturnValue.toString().toLowerCase().contains(\\\"ok\\\")){\\r\\n                        rowCount++;\\r\\n                    }else{\\r\\n                    \\tString vlevelE \\u003d \\\"error\\\";\\r\\n                    \\tString vtextE \\u003d TAG + \\\" Error: \\\" + updateRecordReturnValue;\\r\\n                    \\t@envoy.Log{level:vlevelE,text:vtextE};\\r\\n                    }\\r\\n                }else{\\r\\n                    //Somthing went wrong\\r\\n                    String vlevelE \\u003d \\\"error\\\";\\r\\n                    String vtextE \\u003d TAG + \\\" Error: \\\" + createResponseProps.get(\\\"error\\\");\\r\\n                    @envoy.Log{level:vlevelE,text:vtextE};\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }else{\\r\\n        final String error \\u003d TAG+\\\" \\\"+(String)selectReturnValue;\\r\\n        @envoy.Log{level:\\\"error\\\",text:error};\\r\\n    }\\r\\n    \\r\\n    final String rowsSynchronized \\u003d \\\"Rows Synchronized : \\\" + rowCount;\\r\\n    if(isDebug){\\r\\n    \\t@envoy.Log{level:\\\"info\\\",text:TAG + \\\" \\\"+rowsSynchronized};\\r\\n    }\\r\\n    return rowsSynchronized;\\r\\n}\\r\\ncatch(Exception exp) {\\r\\n    return exp.getMessage();\\r\\n}\"\n  },\n  {\n    \"name\": \"BinToHex\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Bin\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4956618017538507E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:Bin,type:String,editor:text};\\nObject reportGenerator \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nreportGenerator\\u003dm.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dreportGenerator.getClass().getMethod(\\\"binToHex\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(reportGenerator,new Object[]{Bin}));\\n}\\nreturn response;\\n\"\n  },\n  {\n    \"name\": \"CheckIFFieldExists\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Processing\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"FieldName\",\n        \"editor\": \"Fields\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9295957393118842E9\"\n      },\n      {\n        \"name\": \"FieldValue\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6995440277474823E9\"\n      },\n      {\n        \"name\": \"Tags\",\n        \"editor\": \"Text\",\n        \"type\": \"ArrayList\\u003cProperties\\u003e\",\n        \"activity\": null,\n        \"id\": \"1.4926784975029984E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"@envoy.declare{name:\\\"FieldName\\\",type:\\\"String\\\",editor:\\\"Fields\\\"};\\n@envoy.declare{name:\\\"FieldValue\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Tags\\\",type:\\\"ArrayList\\u003cProperties\\u003e\\\",editor:\\\"Text\\\"};\\n\\nif (Tags !\\u003d null) {\\n\\t\\n\\tif(Tags !\\u003d null \\u0026\\u0026 Tags.size() \\u003e 0)\\n\\t{\\n\\t    for(Properties tag :Tags)\\n\\t\\t{\\n\\t\\t\\t\\tString\\tepc \\u003d tag.getProperty(\\\"epc\\\");\\n\\t\\t\\t\\t@envoy.GenerateDataField{EPC:epc,FieldName:FieldName} \\u003e fv;\\n\\n\\t\\t\\t\\tif(fv !\\u003d null)\\n\\t\\t\\t\\t{\\t\\n\\t\\t\\t\\t\\tString value \\u003d fv.toString();\\n\\t\\t\\t\\t\\tif (value.equalsIgnoreCase(FieldValue)) {\\n\\t\\t\\t\\t\\t\\treturn 1;\\n\\t\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\nreturn 0;\"\n  },\n  {\n    \"name\": \"CheckIfTagExists\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7086408565693762E9\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.6002138180983424E9\"\n      },\n      {\n        \"name\": \"Filter\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7067632548395061E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Filter\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e var1;\\nif(var1 !\\u003d null)\\n{\\n\\tArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)var1;\\n\\tif(tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0)\\n\\t{\\t\\n\\t\\tfor(Properties tag : tags)\\n\\t\\t{\\n\\t\\t\\tString epc \\u003d tag.getProperty(\\\"epc\\\");\\n\\t\\t\\tif(epc \\u003d\\u003d null || epc.isEmpty())\\n\\t\\t\\t\\tcontinue;\\n\\t\\t\\tif(epc.startsWith(Filter))\\n\\t\\t\\t{\\n\\t\\t\\t\\treturn 1;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\nreturn 0;\"\n  },\n  {\n    \"name\": \"CheckIOContinuousState\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"GPIO\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"ExternalDeviceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.292722286219884E8\"\n      },\n      {\n        \"name\": \"State\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.1965728084366724E8\"\n      },\n      {\n        \"name\": \"Duration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.353664838370386E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"/*\\n\\tCheck that the sensor has been in State for Duration\\n*/\\n@envoy.declare{name:\\\"ExternalDeviceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"State\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Duration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n\\n@envoy.GetIOState{ExternalDeviceName:ExternalDeviceName} \\u003e GetIOStateReturnValue;\\n\\nif (GetIOStateReturnValue \\u003d\\u003d null) {\\n\\treturn -1;\\n}\\nProperties ioState \\u003d (Properties) GetIOStateReturnValue;\\nString state \\u003d ioState.getProperty(\\\"action\\\");\\nString sTime \\u003d ioState.getProperty(\\\"time\\\");\\n\\nif (state \\u003d\\u003d null || sTime \\u003d\\u003d null) {\\n\\treturn -2;\\n}\\nif (!state.equals(State)) {\\n\\treturn 0;\\n}\\n\\nLong time;\\n\\ntry {\\n\\ttime \\u003d Long.valueOf(sTime);\\n}\\ncatch (java.lang.NumberFormatException e) {\\n\\treturn -3;\\n}\\nLong now \\u003d System.currentTimeMillis();\\n\\nif (now - time \\u003e Duration) {\\n\\treturn 1;\\n}\\nreturn 0;\"\n  },\n  {\n    \"name\": \"ConvertAlienToDBmRSSI\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"RSSI\",\n        \"editor\": \"Text\",\n        \"type\": \"double\",\n        \"activity\": null,\n        \"id\": \"1.3538123821012018E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Double\",\n    \"code\": \"@envoy.declare{name:\\\"RSSI\\\",type:\\\"double\\\",editor:\\\"Text\\\"};\\n\\nfinal double FACTOR \\u003d 20;\\nfinal double OFFSET \\u003d 129;\\n\\nif (RSSI \\u003c\\u003d 0) {\\n\\treturn null;\\n}\\nreturn FACTOR*Math.log10(RSSI)-OFFSET;\"\n  },\n  {\n    \"name\": \"ConvertDBmToAlienRSSI\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"RSSI\",\n        \"editor\": \"Text\",\n        \"type\": \"double\",\n        \"activity\": null,\n        \"id\": \"2.0997533722436368E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Double\",\n    \"code\": \"@envoy.declare{name:\\\"RSSI\\\",type:\\\"double\\\",editor:\\\"Text\\\"};\\n\\nfinal double FACTOR \\u003d 20;\\nfinal double OFFSET \\u003d 129;\\n\\nreturn Math.pow(10,(RSSI+OFFSET)/FACTOR);\"\n  },\n  {\n    \"name\": \"ConvertDBmToLinearRSSI\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"RSSI\",\n        \"editor\": \"Text\",\n        \"type\": \"double\",\n        \"activity\": null,\n        \"id\": \"4.22188726661015E8\"\n      },\n      {\n        \"name\": \"OFFSET\",\n        \"editor\": \"Text\",\n        \"type\": \"double\",\n        \"activity\": null,\n        \"id\": \"7.582076641300935E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Double\",\n    \"code\": \"@envoy.declare{name:\\\"RSSI\\\",type:\\\"double\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"OFFSET\\\",type:\\\"double\\\",editor:\\\"Text\\\"};\\n\\nfinal double FACTOR \\u003d 20;\\n\\nreturn Math.pow(10,(RSSI-OFFSET)/FACTOR);\"\n  },\n  {\n    \"name\": \"ConvertLinearToDBmRSSI\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"RSSI\",\n        \"editor\": \"Text\",\n        \"type\": \"double\",\n        \"activity\": null,\n        \"id\": \"2.1222791085537994E9\"\n      },\n      {\n        \"name\": \"OFFSET\",\n        \"editor\": \"Text\",\n        \"type\": \"double\",\n        \"activity\": null,\n        \"id\": \"1.3178042528731818E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Double\",\n    \"code\": \"@envoy.declare{name:\\\"RSSI\\\",type:\\\"double\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"OFFSET\\\",type:\\\"double\\\",editor:\\\"Text\\\"};\\n\\nfinal double FACTOR \\u003d 20;\\n\\nif (RSSI \\u003c\\u003d 0) {\\n\\treturn null;\\n}\\nreturn FACTOR*Math.log10(RSSI)+OFFSET;\"\n  },\n  {\n    \"name\": \"DatabaseConnection\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Vendor\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.785260640733305E8\"\n      },\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6418161314548216E9\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.116170746689416E7\"\n      },\n      {\n        \"name\": \"InstanceName\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.8501761608896017E9\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5913790857504362E8\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.8714168417477724E8\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.60461187200805E8\"\n      },\n      {\n        \"name\": \"QueryType\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.608571110972005E8\"\n      },\n      {\n        \"name\": \"Query\",\n        \"editor\": null,\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.85331260991383E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"@envoy.declare{name:\\\"Vendor\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"InstanceName\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"QueryType\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Query\\\",type:\\\"String\\\",Editor:\\\"Text\\\"};\\n\\n\\t\\tString xml \\u003d \\\"\\\";\\n\\n        xml +\\u003d \\\"\\u003crequest\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cconnection\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cvendor\\u003e\\\"+Vendor+\\\"\\u003c/vendor\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cip\\u003e\\\"+IPAddress+\\\"\\u003c/ip\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cport\\u003e\\\"+Port+\\\"\\u003c/port\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cinstancename\\u003e\\\"+InstanceName+\\\"\\u003c/instancename\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cdatabasename\\u003e\\\"+DatabaseName+\\\"\\u003c/databasename\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cuser\\u003e\\\"+Username+\\\"\\u003c/user\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cpassword\\u003e\\\"+Password+\\\"\\u003c/password\\u003e\\\";\\n        xml +\\u003d \\\"\\u003c/connection\\u003e\\\";\\n        xml +\\u003d \\\"\\u003cquery\\u003e\\\";\\n        xml +\\u003d \\\"\\u003creturntype\\u003e\\\" +\\\"array\\\"+ \\\"\\u003c/returntype\\u003e\\\";//to return ArrayList\\u003cProperties\\u003e\\n        xml +\\u003d \\\"\\u003ctype\\u003e\\\" + QueryType + \\\"\\u003c/type\\u003e\\\";\\n        xml +\\u003d \\\"\\u003csql\\u003e\\\" + Query.replace(\\\"\\\\n\\\",\\\"\\\") + \\\"\\u003c/sql\\u003e\\\";\\n        xml +\\u003d \\\"\\u003c/query\\u003e\\\";\\n        xml +\\u003d \\\"\\u003c/request\\u003e\\\" +\\\"\\\\n\\\";\\n       \\n\\n        java.net.Socket socket\\u003d new java.net.Socket(\\\"localhost\\\",32002);\\n        java.io.OutputStream out\\u003dsocket.getOutputStream();\\n        out.write(xml.getBytes());\\n        out.flush();\\n        \\n        Object res \\u003d null;\\n        java.io.InputStream inStream \\u003d socket.getInputStream();\\n        \\n\\t\\t try\\n\\t\\t {\\n\\t\\t \\t//Object//\\n\\t\\t \\tjava.io.ObjectInputStream ois \\u003d new java.io.ObjectInputStream(inStream);\\n\\t\\t \\tres \\u003d ois.readObject();\\n\\t\\t \\tois.close();\\n\\t\\t }\\n\\t\\t catch (Exception exp)\\n\\t\\t {\\n\\t\\t \\tres \\u003d \\\"Database Connection : \\\" + exp.getMessage();\\n\\t \\t\\t//to read returned string if the returntype\\u003dstring //\\n\\t       //java.io.BufferedReader in \\u003d new java.io.BufferedReader(new  java.io.InputStreamReader(inStream));\\n\\t       //res \\u003d in.readLine();\\n\\t       //in.close();\\n\\t\\t }\\n\\t\\t \\n\\t\\t  out.close();        \\n         socket.close();\\n        \\n return res;\"\n  },\n  {\n    \"name\": \"ExecDeviceCommand\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"BaseLogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.667899419981122E8\"\n      },\n      {\n        \"name\": \"Command\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.003873429620957E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:BaseLogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:Command,type:String,editor:text};\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"ExecDeviceCommand\\\",new Class[]{String.class,String.class});\\nresponse\\u003d(String)(m.invoke(coreInterface,new Object[]{BaseLogicalDevice,Command}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"FTPSave\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"File\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"FTPServerIP\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7171587207402656E9\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9451475924827023E9\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9728183091091683E9\"\n      },\n      {\n        \"name\": \"FileName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4683672055804555E9\"\n      },\n      {\n        \"name\": \"Content\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.570397912711271E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"@envoy.declare{name:\\\"FTPServerIP\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"FileName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Content\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n     //String DATE_FORMAT_NOW \\u003d \\\"yyyy-MM-dd HH-mm-ss.mmm\\\";\\n    // java.util.Calendar cal \\u003d java.util.Calendar.getInstance();\\n   // java.text.SimpleDateFormat sdf \\u003d new java.text.SimpleDateFormat(DATE_FORMAT_NOW);\\n   //String FileName \\u003d sdf.format(cal.getTime()) +\\\".txt\\\";\\n    \\n  \\nbyte[] data \\u003d Content.getBytes(\\\"UTF-8\\\");\\n    \\n      try {\\n      \\n            \\n            // Set up ftp connectivity and write image\\n            //type\\u003di for image (binary)\\n            //type\\u003da for text (ascii)\\n            java.net.URL url \\u003d new java.net.URL(\\\"ftp://\\\"+Username+\\\":\\\"+Password+\\\"@\\\"+FTPServerIP+\\\"/\\\"+FileName+\\\";type\\u003da\\\");\\n            java.net.URLConnection con \\u003d url.openConnection();\\n            java.io.OutputStream out \\u003d con.getOutputStream();\\n            out.write(data);\\n            out.close();\\n            //con.disconnect();\\n            \\n      } catch (java.net.MalformedURLException e) {\\n          e.printStackTrace();\\n      } catch (java.net.ProtocolException e) {\\n          e.printStackTrace();\\n      } catch (java.io.IOException e) {\\n          e.printStackTrace();\\n      }\\n      finally\\n      {\\n          //close the connection, set all objects to null\\n          //con.disconnect();\\n           //con \\u003d null;\\n          return null;\\n      }\\n\"\n  },\n  {\n    \"name\": \"GenerateALEReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Processing\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.456491877921584E8\"\n      },\n      {\n        \"name\": \"Report\",\n        \"editor\": \"reports\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.851128931067523E8\"\n      },\n      {\n        \"name\": \"Tags\",\n        \"editor\": \"text\",\n        \"type\": \"ArrayList\\u003cProperties\\u003e\",\n        \"activity\": null,\n        \"id\": \"5.028621585191632E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"\\n@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:Report,type:String,editor:reports};\\n@envoy.declare{name:Tags,type:ArrayList\\u003cProperties\\u003e,editor:text};\\nObject reportGenerator \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nreportGenerator\\u003dm.invoke(proxy,new Object[]{\\\"report-generator\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dreportGenerator.getClass().getMethod(\\\"generateReport\\\",new Class[]{String.class,String.class,List.class});\\nresponse\\u003d(String)(m.invoke(reportGenerator,new Object[]{LogicalDevice,Report,Tags}));\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"GenerateDataField\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Processing\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"EPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.489950743308733E7\"\n      },\n      {\n        \"name\": \"FieldName\",\n        \"editor\": \"fields\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0992552089047022E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"\\n@envoy.declare{name:EPC,type:String,editor:text};\\n@envoy.declare{name:FieldName,type:String,editor:fields};\\nObject fieldGenerator\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nfieldGenerator\\u003dm.invoke(proxy,new Object[]{\\\"field-generator\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dfieldGenerator.getClass().getMethod(\\\"generateField\\\",new Class[]{String.class,String.class});\\nresponse\\u003d(String)(m.invoke(fieldGenerator,new Object[]{EPC,FieldName}));\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"GenerateTDSALEReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Processing\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.125072817137904E9\"\n      },\n      {\n        \"name\": \"Tags\",\n        \"editor\": \"text\",\n        \"type\": \"ArrayList\\u003cProperties\\u003e\",\n        \"activity\": null,\n        \"id\": \"2.78535890662099E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"\\n@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:Tags,type:ArrayList\\u003cProperties\\u003e,editor:text};\\nObject reportGenerator \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nreportGenerator\\u003dm.invoke(proxy,new Object[]{\\\"report-generator\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dreportGenerator.getClass().getMethod(\\\"generateTDSReport\\\",new Class[]{String.class,List.class});\\nresponse\\u003d(String)(m.invoke(reportGenerator,new Object[]{LogicalDevice,Tags}));\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"GetCurrentDateAsString\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"DateTime\",\n    \"visible\": true,\n    \"list\": [],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"    String DATE_FORMAT_NOW \\u003d \\\"yyyy-MM-dd HH:mm:ss.SSS\\\";\\n    java.util.Calendar cal \\u003d java.util.Calendar.getInstance();\\n    java.text.SimpleDateFormat sdf \\u003d new java.text.SimpleDateFormat(DATE_FORMAT_NOW);\\n    String date \\u003d sdf.format(cal.getTime());\\n    return date;\"\n  },\n  {\n    \"name\": \"GetDeviceProps\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"BaseLogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3790909036456776E9\"\n      },\n      {\n        \"name\": \"PropertyName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.340186830353554E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:BaseLogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:PropertyName,type:String,editor:Text};\\n\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"getDeviceProps\\\",new Class[]{String.class,String.class});\\nresponse\\u003d(String)(m.invoke(coreInterface,new Object[]{BaseLogicalDevice,PropertyName}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"GetEPCFromGRAI96UPC\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Filter\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"5.980327118326298E8\"\n      },\n      {\n        \"name\": \"CompanyPrefixLength\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"9.773580891702775E8\"\n      },\n      {\n        \"name\": \"UPC\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.044098474077736E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:Filter,type:Integer,editor:Text};\\n@envoy.declare{name:CompanyPrefixLength,type:Integer,editor:Text};\\n@envoy.declare{name:UPC,type:String,editor:Text};\\n\\nString response;\\nObject tdt \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ntdt\\u003dm.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\n\\n{\\nMethod m\\u003dtdt.getClass().getMethod(\\\"getHexFromGRAI96UPC\\\",new Class[]{Integer.class,Integer.class,String.class});\\nresponse\\u003d(String)(m.invoke(tdt,new Object[]{Filter,CompanyPrefixLength,UPC}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"GetEPCFromLegacy\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Filter\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.08633679561474E9\"\n      },\n      {\n        \"name\": \"CompanyPrefixLength\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.0115532443950694E9\"\n      },\n      {\n        \"name\": \"Legacy\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.2116076024508665E9\"\n      },\n      {\n        \"name\": \"TagLength\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.6834459733748E7\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:Filter,type:String,editor:Text};\\n@envoy.declare{name:CompanyPrefixLength,type:String,editor:Text};\\n@envoy.declare{name:Legacy,type:String,editor:Text};\\n@envoy.declare{name:TagLength,type:String,editor:Text};\\nString response;\\nObject tdt \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ntdt\\u003dm.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\n\\n{\\nMethod m\\u003dtdt.getClass().getMethod(\\\"getEPCFromLegacy\\\",new Class[]{String.class,String.class,String.class,String.class});\\nresponse\\u003d(String)(m.invoke(tdt,new Object[]{Filter,CompanyPrefixLength,Legacy,TagLength}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"GetEPCFromLegacySGTIN\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Filter\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4325053086898303E9\"\n      },\n      {\n        \"name\": \"CompanyPrefixLength\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7694838695656458E8\"\n      },\n      {\n        \"name\": \"GTIN\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.2693566820316646E9\"\n      },\n      {\n        \"name\": \"Serial\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0318900622769349E9\"\n      },\n      {\n        \"name\": \"TagLength\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.913514529078967E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:Filter,type:String,editor:Text};\\n@envoy.declare{name:CompanyPrefixLength,type:String,editor:Text};\\n@envoy.declare{name:GTIN,type:String,editor:Text};\\n@envoy.declare{name:Serial,type:String,editor:Text};\\n@envoy.declare{name:TagLength,type:String,editor:Text};\\n\\nString vLegacy \\u003d \\\"gtin\\u003d\\\"+GTIN.trim()+\\\";serial\\u003d\\\"+Serial.trim();\\n@envoy.GetEPCFromLegacy{Filter:Filter,CompanyPrefixLength:CompanyPrefixLength,Legacy:vLegacy,TagLength:TagLength} \\u003e GetEPCFromLegacyReturnValue;\\nif(GetEPCFromLegacyReturnValue \\u003d\\u003d null)\\n\\treturn \\\"error\\\";\\nreturn GetEPCFromLegacyReturnValue.toString();\\n  \"\n  },\n  {\n    \"name\": \"GetEPCFromProperties\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Props\",\n        \"editor\": \"Text\",\n        \"type\": \"Object\",\n        \"activity\": null,\n        \"id\": \"2.2253642404609644E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"Props\\\",type:\\\"Object\\\",editor:\\\"Text\\\"};\\nProperties p \\u003d (Properties)Props;\\nString epc \\u003d p.getProperty(\\\"epc\\\");\\nreturn epc;\"\n  },\n  {\n    \"name\": \"GetEPCFromSSCCBarcode\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"SSCCBarcode\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5424035208840027E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"SSCCBarcode\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n\\nString vFilter \\u003d \\\"0\\\";\\nString vCompanyPrefixLength \\u003d \\\"6\\\";\\nString vLegacy \\u003d \\\"sscc\\u003d\\\" + SSCCBarcode +\\\"0\\\";\\nString vTagLength \\u003d \\\"96\\\";\\n\\n@envoy.GetEPCFromLegacy{Filter:vFilter,CompanyPrefixLength:vCompanyPrefixLength,Legacy:vLegacy,TagLength:vTagLength} \\u003e vEPC;\\nreturn vEPC.toString();\\n\"\n  },\n  {\n    \"name\": \"GetEPCLegacy\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"EPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.259395947385542E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:EPC,type:String,editor:text};\\nObject tdt \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ntdt \\u003d m.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dtdt.getClass().getMethod(\\\"getLegacyFromEPC\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(tdt,new Object[]{EPC}));\\n}\\nreturn response;\\n\"\n  },\n  {\n    \"name\": \"GetEPCTagPureIdentityURI\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"EPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.730287086001608E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:EPC,type:String,editor:text};\\nObject reportGenerator \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nreportGenerator\\u003dm.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dreportGenerator.getClass().getMethod(\\\"getEPCTagPureIdentityURI\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(reportGenerator,new Object[]{EPC}));\\n}\\nreturn response;\\n\"\n  },\n  {\n    \"name\": \"GetEPCTagURI\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"EPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9745605907835662E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:EPC,type:String,editor:text};\\nObject reportGenerator \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nreportGenerator\\u003dm.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dreportGenerator.getClass().getMethod(\\\"getEPCTagURI\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(reportGenerator,new Object[]{EPC}));\\n}\\nreturn response;\\n\"\n  },\n  {\n    \"name\": \"GetExternalDeviceInputValue\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"ExternalDeviceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.091080448703869E7\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"ExternalDeviceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString gvInput \\u003d \\\"io.\\\" + ExternalDeviceName;\\n\\n@envoy.GetGlobalVariable{VariableName:gvInput} \\u003e GetGlobalVariableReturnValue;\\n\\nif(GetGlobalVariableReturnValue \\u003d\\u003d null)\\n\\t\\treturn \\\"\\\";\\n\\t\\t\\nString result \\u003d GetGlobalVariableReturnValue.toString();\\nreturn result;\\n\\n\\n\"\n  },\n  {\n    \"name\": \"GetExternalDeviceOuputValue\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"ExternalDeviceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4169608315340235E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"ExternalDeviceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString gvInput \\u003d \\\"io.\\\" + ExternalDeviceName;\\n\\n@envoy.GetGlobalVariable{VariableName:gvInput} \\u003e GetGlobalVariableReturnValue;\\n\\nif(GetGlobalVariableReturnValue \\u003d\\u003d null)\\n\\t\\treturn \\\"\\\";\\n\\t\\t\\nString result \\u003d GetGlobalVariableReturnValue.toString();\\nreturn result;\\n\\n\\n\"\n  },\n  {\n    \"name\": \"GetFieldsFromEPCTagURI\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"EPCPureIdentityTagURI\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5238635584432611E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cString\\u003e\",\n    \"code\": \"@envoy.declare{name:EPCPureIdentityTagURI,type:String,editor:text};\\nObject reportGenerator \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nreportGenerator\\u003dm.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\nArrayList\\u003cString\\u003e response\\u003dnull;\\n{\\nMethod m\\u003dreportGenerator.getClass().getMethod(\\\"getFieldsFromEPCTagURI\\\",new Class[]{String.class});\\nresponse\\u003d(ArrayList\\u003cString\\u003e)(m.invoke(reportGenerator,new Object[]{EPCPureIdentityTagURI}));\\n}\\nreturn response;\\n\"\n  },\n  {\n    \"name\": \"GetGlobalVariable\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Global Variable\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"VariableName\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6907213141513793E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"@envoy.declare{name:VariableName,type:String,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"application-container\\\"});\\n}\\nObject response\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"get\\\",new Class[]{String.class});\\nresponse\\u003d(Object)(m.invoke(container,new Object[]{VariableName}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"GetGlobalVariableAsString\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Global Variable\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"VariableName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.1832882767641783E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"VariableName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.GetGlobalVariable{VariableName:VariableName} \\u003e GetGlobalVariableReturnValue;\\n\\nif(GetGlobalVariableReturnValue !\\u003d null)\\n{\\n\\treturn GetGlobalVariableReturnValue.toString();\\n}\\nelse \\n\\treturn \\\"N/A\\\";\"\n  },\n  {\n    \"name\": \"GetGS\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Global Settings\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"name\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3724560516336493E7\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"@envoy.declare{name:\\\"name\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n\\r\\n\\r\\nfinal String GLOBAL_REFERENCE\\u003d\\\"getGlobalReference\\\",\\r\\n        APPLICATION_CONTAINER\\u003d\\\"application-settings-container\\\",\\r\\n        GET_GLOBAL_SETTING\\u003d\\\"getGlobalSetting\\\",\\r\\n        GET_TYPE \\u003d \\\"getType\\\",\\r\\n        GET_VALUE \\u003d \\\"getValue\\\";\\r\\n\\r\\nfinal Class[]PARAMETER_TYPES\\u003dnew Class[]{String.class};\\r\\n\\r\\nfinal Object[]PARAMETER_VALUES\\u003dnew Object[]{name};\\r\\n\\r\\ntry{\\r\\n\\r\\n    Method globalReferenceMethod \\u003d proxy.getClass().getMethod(GLOBAL_REFERENCE,new Class[]{String.class});\\r\\n\\r\\n    Object container \\u003d globalReferenceMethod.invoke(proxy, new Object[]{APPLICATION_CONTAINER});\\r\\n\\r\\n\\r\\n    Method getGloabalSettingMethod \\u003d container.getClass().getMethod(GET_GLOBAL_SETTING, PARAMETER_TYPES);\\r\\n    //ActiveGlobalSettings\\r\\n    Object activeGlobalSettings \\u003d getGloabalSettingMethod.invoke(container, PARAMETER_VALUES);\\r\\n    if(activeGlobalSettings \\u003d\\u003d null){\\r\\n    \\treturn null;\\r\\n    }\\r\\n    //Get global settings type\\r\\n    Method getTypeMethod \\u003d activeGlobalSettings.getClass().getMethod(GET_TYPE);\\r\\n    String type \\u003d (String) getTypeMethod.invoke(activeGlobalSettings);\\r\\n    //Get global settings value\\r\\n    Method getValueMethod \\u003d activeGlobalSettings.getClass().getMethod(GET_VALUE);\\r\\n    String value \\u003d (String) getValueMethod.invoke(activeGlobalSettings);\\r\\n    Object concreteValue \\u003d null;\\r\\n    if(type.equalsIgnoreCase(\\\"boolean\\\")){\\r\\n        concreteValue \\u003d Boolean.parseBoolean(value);\\r\\n    }else if(type.equalsIgnoreCase(\\\"text\\\") || type.equalsIgnoreCase(\\\"password\\\")){\\r\\n        concreteValue \\u003d value;\\r\\n    }else if(type.equalsIgnoreCase(\\\"decimal\\\")){\\r\\n        concreteValue \\u003d Double.parseDouble(value);\\r\\n    }else if(type.equalsIgnoreCase(\\\"integer\\\")){\\r\\n    \\tconcreteValue \\u003d Integer.parseInt(value);\\r\\n    }else if(type.equalsIgnoreCase(\\\"date\\\")){\\r\\n        concreteValue \\u003d new java.text.SimpleDateFormat(\\\"yyyy-MM-dd\\u0027T\\u0027HH:mm:ss.SSSZ\\\").parse(value);\\r\\n    }\\r\\n    return concreteValue;\\r\\n}catch(Exception ignored){\\r\\n\\t//Exception ignored\\t\\r\\n}\\r\\nreturn null;\\r\\n\"\n  },\n  {\n    \"name\": \"GetIOState\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"GPIO\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"ExternalDeviceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5278066656861124E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Properties\",\n    \"code\": \"@envoy.declare{name:\\\"ExternalDeviceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nMethod m;\\ntry\\n{\\n\\tm \\u003d proxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\n\\tObject container \\u003d m.invoke(proxy,new Object[]{\\\"io-impl\\\"});\\n\\t\\n\\tm \\u003d container.getClass().getMethod(\\\"getIOState\\\",new Class[]{String.class});\\n\\tProperties state \\u003d (Properties)m.invoke(container,new Object[]{ExternalDeviceName});\\n\\treturn state;\\n}\\ncatch (Exception e) {\\n\\treturn null;\\n}\"\n  },\n  {\n    \"name\": \"GetLogicalDeviceNames\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Filter\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.256809844498106E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cString\\u003e\",\n    \"code\": \"@envoy.declare{name:Filter,type:String,editor:Text};\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nList\\u003cString\\u003e response\\u003d new ArrayList\\u003cString\\u003e();\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"getLogicalDeviceNames\\\",new Class[]{String.class});\\nresponse\\u003d(List\\u003cString\\u003e)(m.invoke(coreInterface,new Object[]{Filter}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"GetParentLogicalDeviceNames\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDeviceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.72348028070261E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cString\\u003e\",\n    \"code\": \"@envoy.declare{name:LogicalDeviceName,type:String,editor:Text};\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nList\\u003cString\\u003e response\\u003d new ArrayList\\u003cString\\u003e();\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"getParentLogicalDeviceNames\\\",new Class[]{String.class});\\nresponse\\u003d(List\\u003cString\\u003e)(m.invoke(coreInterface,new Object[]{LogicalDeviceName}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"GetReaders\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"empty\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5765689555472395E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"@envoy.declare{name:\\\"empty\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nArrayList\\u003cProperties\\u003e allReaders \\u003d new ArrayList\\u003c\\u003e();\\nString listReadersXML \\u003d \\\"\\u003cEnvelope xmlns\\u003d\\\\\\\"http://schemas.xmlsoap.org/soap/envelope/\\\\\\\"\\u003e\\u003cBody\\u003e\\u003clistReaders xmlns\\u003d\\\\\\\"http://ws.activeidentity.net/\\\\\\\"/\\u003e\\u003c/Body\\u003e\\u003c/Envelope\\u003e\\\";\\n\\nString vURI \\u003d \\\"http://127.0.0.1:8080/ALE/ActiveCommanderService\\\";\\nString vData \\u003d listReadersXML;\\nProperties vHeaders \\u003d new Properties();\\nProperties currProp;\\nvHeaders.setProperty(\\\"Content-Type\\\",\\\"text/xml\\\");\\n@envoy.HTTPPostWithHeaders{URI:vURI,Data:vData,Headers:vHeaders} \\u003e HTTPPostWithHeadersReturnValue;\\n\\nif (HTTPPostWithHeadersReturnValue\\u003d\\u003dnull) {\\n\\treturn null;\\n}\\n\\nString readersXML \\u003d HTTPPostWithHeadersReturnValue.toString();\\ntry {\\n\\torg.w3c.dom.Document doc;\\n\\t\\n\\t@envoy.LoadXMLFromString{xml:readersXML} \\u003e LoadXMLFromStringReturnValue;\\n\\tif (LoadXMLFromStringReturnValue!\\u003dnull) {\\n\\t\\tdoc \\u003d (org.w3c.dom.Document) LoadXMLFromStringReturnValue;\\n    \\torg.w3c.dom.NodeList readersList \\u003d doc.getElementsByTagName(\\\"return\\\");\\n    \\torg.w3c.dom.Node currNode;\\n    \\t\\n    \\tString[] props \\u003d {\\\"enabled\\\",\\\"down\\\",\\\"uid\\\",\\\"macAdress\\\",\\\"ipAdress\\\",\\\"vendor\\\",\\\"port\\\"};\\n\\n       \\tfor (int i\\u003d0 ; i\\u003creadersList.getLength(); i++) {\\n       \\t\\tcurrProp \\u003d new Properties();\\n       \\t\\torg.w3c.dom.Node node \\u003d readersList.item(i);\\n           if (node.getNodeType()\\u003d\\u003dorg.w3c.dom.Node.ELEMENT_NODE) {\\n\\n           \\torg.w3c.dom.Element element \\u003d (org.w3c.dom.Element) node;\\n           \\tfor (String p : props) {\\n\\n           \\t\\tif (element.getElementsByTagName(p).getLength()\\u003e0) {\\n              \\t\\t\\tcurrNode \\u003d element.getElementsByTagName(p).item(0);\\n              \\t\\t\\tif (currNode.getNodeType()\\u003d\\u003dorg.w3c.dom.Node.ELEMENT_NODE) {\\n              \\t\\t\\t\\t\\n              \\t\\t\\t\\tif (currNode.getChildNodes().getLength()\\u003e0) {\\n              \\t\\t\\t\\t\\tcurrNode \\u003d currNode.getFirstChild();\\n              \\t\\t\\t\\t\\t\\tif (currNode.getNodeValue()!\\u003dnull) {\\n              \\t\\t\\t\\t\\t\\t\\tString val \\u003d currNode.getNodeValue().trim();\\n              \\t\\t\\t\\t\\t\\t\\tcurrProp.setProperty(p, val);\\n              \\t\\t\\t\\t\\t\\t\\t//System.out.println(p+\\\": \\\"+val);\\n                                }\\n                            }\\n                        }\\n                    }\\n                }\\n            }\\n            allReaders.add(currProp);\\n        }\\n\\n\\t}\\n}\\ncatch (Exception e) {\\n\\t\\n}\\nreturn allReaders;\"\n  },\n  {\n    \"name\": \"GetReadersEvents\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"empty\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.689165674160768E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"@envoy.declare{name:\\\"empty\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nArrayList\\u003cProperties\\u003e response\\u003dnull;\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"getReadersEvents\\\",new Class[]{});\\nresponse\\u003d(ArrayList\\u003cProperties\\u003e)(m.invoke(coreInterface,new Object[]{}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"GetReadersEventsAsString\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Proxy\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"empty\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9655714521613615E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"empty\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString res\\u003d\\\"\\\";\\n@envoy.GetReadersEvents{empty:\\\"\\\"} \\u003e GetReadersEventsReturnValue;\\nif(GetReadersEventsReturnValue !\\u003d null)\\n{\\n\\tArrayList\\u003cProperties\\u003e events  \\u003d  (ArrayList\\u003cProperties\\u003e)GetReadersEventsReturnValue;\\n\\tProperties p;\\n\\tif(!events.isEmpty())\\n\\t{\\n\\t\\tjava.util.Iterator\\u003cProperties\\u003e Iterator \\u003d events.iterator();\\n\\t\\twhile (Iterator.hasNext()) {\\n\\t\\t    p \\u003d Iterator.next();\\n\\t\\t    if(p !\\u003d null \\u0026\\u0026 !p.isEmpty())\\n\\t\\t    {\\n\\t\\t    \\tres +\\u003d \\\"type\\u003dstatus,date\\u003d\\\" + p.getProperty(\\\"date\\\") + \\\",location\\u003d\\\" + p.getProperty(\\\"location\\\") + \\\",status\\u003d\\\" + p.getProperty(\\\"status\\\").toLowerCase() + \\\",mac_address\\u003d\\\" + p.getProperty(\\\"uid\\\") + \\\";\\\"; \\n\\t\\t    }\\n\\t\\t}\\n\\t}\\n}\\n\\nreturn res;\"\n  },\n  {\n    \"name\": \"GetWorkflowStatus\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"WorkflowName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.581182735897626E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:WorkflowName,type:String,editor:Text};\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"getWorkflowStatus\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"HextToBin\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Data Translation\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Hex\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.0859848124133433E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:Hex,type:String,editor:text};\\nObject reportGenerator \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nreportGenerator\\u003dm.invoke(proxy,new Object[]{\\\"tdt\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dreportGenerator.getClass().getMethod(\\\"hexToBin\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(reportGenerator,new Object[]{Hex}));\\n}\\nreturn response;\\n\"\n  },\n  {\n    \"name\": \"HttpAuthRequest\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Communication\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Host\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.2220524854721817E8\"\n      },\n      {\n        \"name\": \"Cmd\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.064938758907172E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"Host\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Cmd\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\njava.net.Socket socket \\u003d new java.net.Socket(Host,80); \\n\\nString username \\u003d \\\"alien\\\";\\nString password \\u003d \\\"password\\\";\\nString auth \\u003d username + \\\":\\\" + password;\\n//String encodedAuth \\u003d Base64.encodeBase64String(auth.getBytes());\\nString encodedAuth\\u003d\\\"YWxpZW46cGFzc3dvcmQ\\u003d\\\";\\nString path \\u003d \\\"/cgi-bin/cmd.cgi?gui\\u003doff\\u0026cmd\\u003d\\\"+java.net.URLEncoder.encode(Cmd);\\njava.io.PrintWriter req \\u003d new java.io.PrintWriter(socket.getOutputStream());\\nreq.print(  \\\"GET \\\" + path + \\\" HTTP/1.1\\\\r\\\\n\\\" + \\n                       \\\"Host: \\\" + Host + \\\"\\\\r\\\\n\\\" + \\n                       \\\"Authorization: Basic \\\" + encodedAuth + \\\"\\\\r\\\\n\\\" +\\n                       \\\"Connection: close\\\\r\\\\n\\\\r\\\\n\\\"); \\nreq.flush( ); \\n\\njava.io.InputStream inStream \\u003d socket.getInputStream( ); \\njava.io.BufferedReader rd \\u003d new java.io.BufferedReader(\\n        new java.io.InputStreamReader(inStream));\\nString line;\\nStringBuilder sb \\u003d new StringBuilder();\\nwhile ((line \\u003d rd.readLine()) !\\u003d null) {\\n \\n\\t\\tsb.append(line);\\n}\\n\\nreturn sb.toString();\"\n  },\n  {\n    \"name\": \"HTTPPost\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Communication\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"URI\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.674580614772257E9\"\n      },\n      {\n        \"name\": \"Data\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9421294529548385E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"URI\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Data\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString response \\u003d \\\"\\\";\\ntry\\n{\\n\\tjava.net.URL url \\u003d new java.net.URL(URI);\\n\\tjava.net.HttpURLConnection urlConn \\u003d (java.net.HttpURLConnection) url.openConnection();\\n\\turlConn.setRequestProperty (\\\"Content-Type\\\", \\\"application/json\\\");\\n\\t//urlConn.setRequestProperty (\\\"Content-Type\\\", \\\"application/xml\\\");\\n\\t//urlConn.setRequestProperty(\\\"Accept\\\", \\\"test/xml\\\");\\n\\t//urlConn.setRequestProperty(\\\"Content-Type\\\", \\\"application/x-www-form-urlencoded\\\");\\n    // Let the run-time system (RTS) know that we want input.\\n\\turlConn.setDoInput (true);\\n\\t// Let the RTS know that we want to do output.\\n\\turlConn.setDoOutput (true);\\n\\t// No caching, we want the real thing.\\n\\turlConn.setUseCaches (false);\\n\\t\\n\\turlConn.setRequestMethod(\\\"POST\\\");\\n\\t//Integer length \\u003d new Integer(Data.length());\\n\\t//urlConn.setRequestProperty(\\\"Content-Length\\\", length.toString());\\n\\turlConn.connect();\\n\\t\\n\\t    java.io.PrintWriter pw \\u003d new java.io.PrintWriter(urlConn.getOutputStream());  \\n        pw.write(Data);\\n        pw.close();  \\n        //java.io.BufferedInputStream bis \\u003d new java.io.BufferedInputStream(urlConn.getInputStream());  \\n       // bis.close();\\n        \\n\\t\\n    if (urlConn.getResponseCode() !\\u003d java.net.HttpURLConnection.HTTP_OK) {\\n\\t\\tthrow new RuntimeException(\\\"Failed : HTTP error code : \\\"\\n\\t\\t\\t+ urlConn.getResponseCode());\\n\\t}\\n\\t//java.io.DataOutputStream  output \\u003d new java.io.DataOutputStream(urlConn.getOutputStream());\\n\\t//output.writeBytes(java.net.URLEncoder.encode(Data,\\\"utf-8\\\"));\\n    //output.flush();\\n    //output.close();\\n    \\n    \\n    String str \\u003d null;\\n    java.io.DataInputStream  input \\u003d new java.io.DataInputStream (urlConn.getInputStream());\\n    while (null !\\u003d ((str \\u003d input.readLine()))) {\\n       response +\\u003d str + \\\"\\\\n\\\";\\n   }\\n   input.close();\\n    \\n}\\ncatch(Exception exp)\\n{\\n\\tresponse \\u003d exp.getMessage();\\n\\t\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"HTTPPostWithHeaders\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Communication\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"URI\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5137809928048842E9\"\n      },\n      {\n        \"name\": \"Data\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.78132137219183E8\"\n      },\n      {\n        \"name\": \"Headers\",\n        \"editor\": \"Text\",\n        \"type\": \"Properties\",\n        \"activity\": null,\n        \"id\": \"1.5182074678049078E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"URI\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Data\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Headers\\\",type:\\\"Properties\\\",editor:\\\"Text\\\"};\\n\\nString response \\u003d \\\"\\\";\\n\\ntry\\n{\\n\\tjava.net.URL url \\u003d new java.net.URL(URI);\\n\\tjava.net.HttpURLConnection urlConn \\u003d (java.net.HttpURLConnection) url.openConnection();\\n\\turlConn.setRequestProperty (\\\"Content-Type\\\", \\\"application/json\\\");\\n\\t\\n\\t//urlConn.setRequestProperty (\\\"Content-Type\\\", \\\"application/xml\\\");\\n\\t//urlConn.setRequestProperty(\\\"Accept\\\", \\\"test/xml\\\");\\n\\t//urlConn.setRequestProperty(\\\"Content-Type\\\", \\\"application/x-www-form-urlencoded\\\");\\n    // Let the run-time system (RTS) know that we want input.\\n\\turlConn.setDoInput (true);\\n\\t// Let the RTS know that we want to do output.\\n\\turlConn.setDoOutput (true);\\n\\t// No caching, we want the real thing.\\n\\turlConn.setUseCaches (false);\\n\\t\\n\\turlConn.setRequestMethod(\\\"POST\\\");\\n\\t\\n\\tProperties props \\u003d (Properties) Headers;\\n\\tfor (String key: props.stringPropertyNames()) {\\n\\t\\tString val \\u003d props.getProperty(key);\\n\\t\\turlConn.setRequestProperty(key,val);\\n\\t}\\n\\t//Integer length \\u003d new Integer(Data.length());\\n\\t//urlConn.setRequestProperty(\\\"Content-Length\\\", length.toString());\\n\\turlConn.connect();\\n\\t\\n\\t    java.io.PrintWriter pw \\u003d new java.io.PrintWriter(urlConn.getOutputStream());  \\n        pw.write(Data);\\n        pw.close();  \\n        //java.io.BufferedInputStream bis \\u003d new java.io.BufferedInputStream(urlConn.getInputStream());  \\n       // bis.close();\\n        \\n\\t\\n    if (urlConn.getResponseCode() !\\u003d java.net.HttpURLConnection.HTTP_OK) {\\n\\t\\tthrow new RuntimeException(\\\"Failed : HTTP error code : \\\"\\n\\t\\t\\t+ urlConn.getResponseCode());\\n\\t}\\n\\t//java.io.DataOutputStream  output \\u003d new java.io.DataOutputStream(urlConn.getOutputStream());\\n\\t//output.writeBytes(java.net.URLEncoder.encode(Data,\\\"utf-8\\\"));\\n    //output.flush();\\n    //output.close();\\n    \\n    \\n    String str \\u003d null;\\n    java.io.DataInputStream  input \\u003d new java.io.DataInputStream (urlConn.getInputStream());\\n    while (null !\\u003d ((str \\u003d input.readLine()))) {\\n       response +\\u003d str + \\\"\\\\n\\\";\\n   }\\n   input.close();\\n    \\n}\\ncatch(Exception exp)\\n{\\n\\tresponse \\u003d exp.getMessage();\\n\\t\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"HTTPRequest\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Communication\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"URI\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.06169549424449E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"\\n@envoy.declare{name:URI,type:String,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"http-tools\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"get\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(container,new Object[]{URI}));\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"InvokeExternalDeviceAction\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"GPIO\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"DeviceName\",\n        \"editor\": \"iodevice\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1234\"\n      },\n      {\n        \"name\": \"DeviceAction\",\n        \"editor\": \"ioaction\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1234\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:DeviceName,type:String,editor:iodevice,id:1234};\\n@envoy.declare{name:DeviceAction,type:String,editor:ioaction,id:1234};\\n\\nObject ioInvoker\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nioInvoker\\u003dm.invoke(proxy,new Object[]{\\\"io-invoker\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dioInvoker.getClass().getMethod(\\\"invoke\\\",new Class[]{String.class,String.class});\\nresponse\\u003d(String)(m.invoke(ioInvoker,new Object[]{DeviceName,DeviceAction}));\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"InvokeWorkflow\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"WorkflowName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3010956558220619E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:WorkflowName,type:String,editor:Text};\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"invokeWorkflow\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"LoadXMLFromString\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"XML\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"xml\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.8124301323267488E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"org.w3c.dom.Document\",\n    \"code\": \"@envoy.declare{name:\\\"xml\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\njavax.xml.parsers.DocumentBuilderFactory factory \\u003d javax.xml.parsers.DocumentBuilderFactory.newInstance();\\njavax.xml.parsers.DocumentBuilder builder \\u003d factory.newDocumentBuilder();\\norg.xml.sax.InputSource is \\u003d new org.xml.sax.InputSource(new java.io.StringReader(xml));\\norg.w3c.dom.Document doc \\u003d builder.parse(is);\\nreturn doc;\"\n  },\n  {\n    \"name\": \"Log\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Logging\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"level\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6704161543154838E9\"\n      },\n      {\n        \"name\": \"text\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.1034327913406174E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"level\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"text\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\ntry{\\r\\n    Method getGlobalReference\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\r\\n    Object logger\\u003dgetGlobalReference.invoke(proxy,\\\"activities-logger\\\");\\r\\n    Method logMethod\\u003dlogger.getClass().getMethod(level.trim().toLowerCase(),new Class[]{String.class});\\r\\n    logMethod.invoke(logger,text);\\r\\n\\r\\n    getGlobalReference\\u003dnull;\\r\\n    logMethod\\u003dnull;\\r\\n    logger\\u003dnull;\\r\\n    return null;\\r\\n}catch(Exception ex){\\r\\n    return ex.getMessage();\\r\\n}\"\n  },\n  {\n    \"name\": \"MonitorTwoInput\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"FirstInput\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.3944112170741928E8\"\n      },\n      {\n        \"name\": \"SecondInput\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.596722129286178E9\"\n      },\n      {\n        \"name\": \"MonitorValue\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0950800400878742E9\"\n      },\n      {\n        \"name\": \"Time\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"7.229946562918172E8\"\n      },\n      {\n        \"name\": \"WorkflowName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6605190300375097E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Integer\",\n    \"code\": \"@envoy.declare{name:\\\"FirstInput\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SecondInput\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"MonitorValue\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Time\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"WorkflowName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nBoolean DEBUG \\u003d false;\\n\\nInteger CYCLE_TIME \\u003d 500;\\nInteger CYCLE_COUNT_DOWN \\u003d Time / CYCLE_TIME; // Divide the delay to 500 ms for every check\\n\\nString GV_F_SENSOR \\u003d \\\"io.\\\" + FirstInput;\\nString GV_S_SENSOR \\u003d \\\"io.\\\" + SecondInput;\\n\\nString F_SENSOR_STATE \\u003d \\\"0\\\";\\nString S_SENSOR_STATE \\u003d \\\"0\\\";\\n\\nArrayList\\u003cString\\u003e SUB \\u003d new ArrayList\\u003cString\\u003e();\\nSUB.add(\\\"FRA-LP1-EMC\\\");\\n\\nwhile (true)\\n{\\n\\t@envoy.Sleep{Milliseconds:CYCLE_TIME};\\n\\t@envoy.GetGlobalVariable{VariableName:GV_F_SENSOR} \\u003e varF_SENSOR_STATE;\\n\\t@envoy.GetGlobalVariable{VariableName:GV_S_SENSOR} \\u003e varS_SENSOR_STATE;\\n\\n\\tif (varF_SENSOR_STATE \\u003d\\u003d null)\\n\\t{\\n\\t\\tF_SENSOR_STATE \\u003d MonitorValue;\\n\\t\\tif (DEBUG) {\\n\\t\\t\\t@envoy.SocketSend{Subscribers:SUB,Message:\\\"-\\u003e First Input Value is empty :\\\" +MonitorValue+\\\" is automatically assigned\\\" };\\n\\t\\t}\\n\\t}\\n\\telse\\n\\t{\\n\\t\\tF_SENSOR_STATE \\u003d varF_SENSOR_STATE.toString();\\n\\t}\\n\\n\\tif (varS_SENSOR_STATE \\u003d\\u003d null)\\n\\t{\\n\\t\\tS_SENSOR_STATE \\u003d MonitorValue;\\n\\t\\tif (DEBUG) {\\n\\t\\t\\t@envoy.SocketSend{Subscribers:SUB,Message:\\\"-\\u003e Second Input Value is empty :\\\" +MonitorValue+\\\" is automatically assigned\\\" };\\n\\t\\t}\\n\\t}\\n\\telse\\n\\t{\\n\\t\\tS_SENSOR_STATE \\u003d varS_SENSOR_STATE.toString();\\n\\t}\\n\\n\\tif (F_SENSOR_STATE.equalsIgnoreCase(MonitorValue) \\u0026\\u0026 S_SENSOR_STATE.equalsIgnoreCase(MonitorValue))\\n\\t{\\n\\t\\tCYCLE_COUNT_DOWN --;\\n\\t\\tif (DEBUG) {\\n\\t\\t\\t@envoy.SocketSend{Subscribers:SUB,Message:\\\"-\\u003e CYCLE_COUNT_DOWN: \\\" + CYCLE_COUNT_DOWN};\\n\\t\\t}\\n\\t}\\n\\telse\\n\\t{\\n\\t\\tif (DEBUG) {\\n\\t\\t\\t@envoy.SocketSend{Subscribers:SUB,Message:\\\"-\\u003e EXIT - F_SENSOR_STATE: \\\" + F_SENSOR_STATE+ \\\" S_SENSOR_STATE: \\\" + S_SENSOR_STATE};\\n\\t\\t}\\n\\t\\treturn 0;\\n\\t}\\n\\n\\tif (CYCLE_COUNT_DOWN \\u003d\\u003d 0) {\\n\\t\\t@envoy.StopWorkfow{WorkflowName:WorkflowName};\\n\\t\\t//String pwfl \\u003dWorkflowName.replaceAll(\\\"_READ\\\",\\\"_PROCESS\\\");\\n\\n\\t\\tif (DEBUG) {\\n\\t\\t\\t@envoy.SocketSend{Subscribers:SUB,Message:\\\"-\\u003e Stopping Workfow - \\\" +WorkflowName};\\n\\t\\t}\\n\\t\\treturn 1;\\n\\t}\\n}\\n\"\n  },\n  {\n    \"name\": \"MSSQLExecuteCommand\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7353833850561597E9\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.1630764322407454E8\"\n      },\n      {\n        \"name\": \"InstanceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.142382262711694E9\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0884974515487108E8\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0103345203804371E9\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0204078495016024E9\"\n      },\n      {\n        \"name\": \"SQLStatement\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.813409621106756E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"InstanceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SQLStatement\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString vvendor \\u003d \\\"mssql\\\";\\nString vquerytype \\u003d \\\"update\\\";\\n\\n@envoy.DatabaseConnection{Vendor:vvendor,IPAddress:IPAddress,Port:Port,InstanceName:InstanceName,DatabaseName:DatabaseName,Username:Username,Password:Password,QueryType:vquerytype,Query:SQLStatement} \\u003e dbReturnValue;\\nString res \\u003d \\\"\\\";\\nif(dbReturnValue !\\u003d null)\\n{\\n  res \\u003d dbReturnValue.toString();\\n}\\nreturn res;\\n\"\n  },\n  {\n    \"name\": \"MSSQLExecuteReader\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6218775739116392E9\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.2056602140579314E9\"\n      },\n      {\n        \"name\": \"InstanceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.490533687029522E9\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.3975020136137843E8\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.391579167920294E8\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.8563569849042792E9\"\n      },\n      {\n        \"name\": \"SQLStatement\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.490132104573959E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"InstanceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SQLStatement\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString vvendor \\u003d \\\"mssql\\\";\\nString vquerytype \\u003d \\\"query\\\";\\n@envoy.DatabaseConnection{Vendor:vvendor,IPAddress:IPAddress,Port:Port,InstanceName:InstanceName,DatabaseName:DatabaseName,Username:Username,Password:Password,QueryType:vquerytype,Query:SQLStatement} \\u003e dbReturnValue;\\nString res \\u003d \\\"\\\";\\nif(dbReturnValue !\\u003d null)\\n{\\n  res \\u003d dbReturnValue.toString();\\n}\\nreturn res;\\n\"\n  },\n  {\n    \"name\": \"MSSQLInsertGRAITags\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.8855340881506195E9\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.6935811653266912E9\"\n      },\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.2887629471451297E9\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.062818720154131E8\"\n      },\n      {\n        \"name\": \"InstanceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3673602614305673E7\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.3712314145030543E8\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0953159505954424E8\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.1758819071962242E9\"\n      },\n      {\n        \"name\": \"TableName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.08498506538529E8\"\n      },\n      {\n        \"name\": \"LogicalDeviceFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.2862908069864376E9\"\n      },\n      {\n        \"name\": \"EPCFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.1149596864643276E8\"\n      },\n      {\n        \"name\": \"DateFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.6255503442046694E7\"\n      },\n      {\n        \"name\": \"CompanyPrefixFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.461664383676818E8\"\n      },\n      {\n        \"name\": \"AssetTypeFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.874803019222672E8\"\n      },\n      {\n        \"name\": \"SerialNumberFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.894653089719603E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"InstanceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"TableName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"LogicalDeviceFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"EPCFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DateFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"CompanyPrefixFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"AssetTypeFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SerialNumberFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e vtags;\\nArrayList\\u003cProperties\\u003e Tags \\u003d null;\\nif(vtags !\\u003d null)\\n{\\n\\tTags \\u003d (ArrayList\\u003cProperties\\u003e)vtags;\\n}\\n\\n@envoy.GetCurrentDateAsString{} \\u003e now;\\n\\nif(Tags !\\u003d null \\u0026\\u0026 Tags.size() \\u003e 0)\\n{\\n\\tfor(Properties tag : Tags)\\n\\t{\\n\\t\\t\\tString epc \\u003d tag.getProperty(\\\"epc\\\");\\t\\n\\t\\t\\t@envoy.GetEPCTagPureIdentityURI{EPC:epc} \\u003e GetEPCTagPureIdentityURIReturnValue;\\n\\t\\t\\tString vEPCPureIdentityTagURI \\u003d GetEPCTagPureIdentityURIReturnValue.toString();\\n\\t\\t\\tif(vEPCPureIdentityTagURI.isEmpty())\\n\\t\\t\\t\\tcontinue;\\n\\t\\t\\t@envoy.GetFieldsFromEPCTagURI{EPCPureIdentityTagURI:vEPCPureIdentityTagURI} \\u003e GetFieldsFromEPCTagURIReturnValue;\\n\\t\\t\\tArrayList\\u003cString\\u003e fields \\u003d (ArrayList\\u003cString\\u003e)GetFieldsFromEPCTagURIReturnValue;\\n\\t\\t\\t\\n\\t\\t\\tString CompanyPrefix \\u003d fields.get(0).split(\\\"\\u003d\\\")[1];\\n           String AssetType \\u003d fields.get(1).split(\\\"\\u003d\\\")[1];\\n           String SerialNumber \\u003d fields.get(2).split(\\\"\\u003d\\\")[1];\\n\\t\\t  \\tString OutF \\u003d CompanyPrefix.substring(3);\\n\\t\\t    long l \\u003d Long.parseLong(SerialNumber);\\n\\t\\t\\t\\t\\t\\n\\t\\t\\tString AssetTag \\u003d OutF + AssetType + String.format(\\\"%06d\\\", l);\\t\\t\\n\\t\\t\\tStringBuilder sqlstatement \\u003d  new StringBuilder();;\\n\\t\\t\\tsqlstatement.append(\\\" \\\");\\n\\t\\t\\tsqlstatement.append(\\\"IF  (SELECT Top 1 [\\\"+LogicalDeviceFieldName+\\\"] FROM [\\\"+TableName+\\\"] WHERE [\\\"+EPCFieldName+\\\"]\\u003d\\u0027\\\"+epc+\\\"\\u0027 order by [\\\"+DateFieldName+\\\"] Desc) \\u003d \\u0027\\\"+LogicalDevice+\\\"\\u0027\\\");\\n\\t\\t\\tsqlstatement.append(\\\" \\\");\\n\\t\\t\\tsqlstatement.append(\\\"Update [\\\"+TableName+\\\"] set [\\\"+DateFieldName+\\\"] \\u003d \\u0027\\\"+now.toString()+\\\"\\u0027 where [\\\"+EPCFieldName+\\\"] \\u003d \\u0027\\\"+epc+\\\"\\u0027 and [\\\"+LogicalDeviceFieldName+\\\"] \\u003d \\u0027\\\"+LogicalDevice+\\\"\\u0027\\\");\\n\\t\\t\\tsqlstatement.append(\\\" \\\");\\n\\t\\t\\tsqlstatement.append(\\\"ELSE\\\");\\n\\t\\t\\tsqlstatement.append(\\\" \\\");\\n\\t\\t\\tsqlstatement.append(\\\"INSERT INTO [\\\"+TableName+\\\"] ([\\\"+LogicalDeviceFieldName+\\\"],[\\\"+EPCFieldName+\\\"],[\\\"+CompanyPrefixFieldName+\\\"],[\\\"+AssetTypeFieldName+\\\"],[\\\"+SerialNumberFieldName+\\\"],[\\\"+DateFieldName+\\\"])VALUES (\\u0027\\\"+LogicalDevice+\\\"\\u0027,\\u0027\\\"+epc+\\\"\\u0027,\\u0027\\\"+CompanyPrefix+\\\"\\u0027,\\u0027\\\"+AssetType+\\\"\\u0027,\\u0027\\\"+AssetTag+ \\\"\\u0027,\\u0027\\\"+now.toString()+\\\"\\u0027)\\\");\\n\\t\\t\\tsqlstatement.append(\\\" \\\");\\n\\t\\t\\t\\t\\n\\t\\t\\t@envoy.MSSQLExecuteCommand{IPAddress:IPAddress,Port:Port,InstanceName:InstanceName,DatabaseName:DatabaseName,Username:Username,Password:Password,SQLStatement:sqlstatement.toString()} \\u003e MSSQLExecuteCommandReturnValue;\\n\\t\\t\\n\\n\\n\\t\\n\\t}\\n}\\n\\nreturn null;\"\n  },\n  {\n    \"name\": \"MSSQLInsertTags\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.1932404124712175E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"9.594257839748057E8\"\n      },\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.933383896776409E8\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.019322433735839E8\"\n      },\n      {\n        \"name\": \"InstanceName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5044765502598116E8\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.86464535903806E8\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3153182800989196E9\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5545778969386837E9\"\n      },\n      {\n        \"name\": \"TableName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.338965548529901E8\"\n      },\n      {\n        \"name\": \"LogicalDeviceFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.1341643658764951E9\"\n      },\n      {\n        \"name\": \"EPCFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.063538256580839E8\"\n      },\n      {\n        \"name\": \"DateFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.233650564257642E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"InstanceName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"TableName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"LogicalDeviceFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"EPCFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DateFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\t\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e vtags;\\nArrayList\\u003cProperties\\u003e Tags \\u003d null;\\nif(vtags !\\u003d null)\\n{\\n\\tTags \\u003d (ArrayList\\u003cProperties\\u003e)vtags;\\n}\\n\\nString sta \\u003d \\\"Insert into [\\\" + TableName + \\\"] (\\\"+LogicalDeviceFieldName+\\\",\\\"+EPCFieldName+\\\",\\\"+DateFieldName+\\\") Values(\\u0027\\\"+LogicalDevice + \\\"\\u0027,\\\";\\n\\n@envoy.GetCurrentDateAsString{} \\u003e vdate;\\nString vSQLStatement \\u003d \\\"\\\";\\n\\nif(Tags !\\u003d null \\u0026\\u0026 Tags.size() \\u003e 0)\\n{\\n\\tfor(Properties tag : Tags)\\n\\t{\\n\\t    vSQLStatement \\u003d sta + \\\"\\u0027\\\" + tag.getProperty(\\\"epc\\\") +\\\"\\u0027\\\"+\\\",\\\"  +\\\"\\u0027\\\"+vdate.toString()+\\\"\\u0027)\\\";\\n\\t\\t@envoy.MSSQLExecuteCommand{IPAddress:IPAddress,Port:Port,InstanceName:InstanceName,DatabaseName:DatabaseName,Username:Username,Password:Password,SQLStatement:vSQLStatement} \\u003e MSSQLExecuteCommandReturnValue;\\n\\n\\t}\\n}\\n\\nreturn null;\"\n  },\n  {\n    \"name\": \"MYSQLExecuteCommand\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.052910264928635E9\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.0891330107439786E7\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.89610568087573E8\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.1366523545461855E9\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.898988383780274E8\"\n      },\n      {\n        \"name\": \"SQLStatement\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.470236838719573E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"\\n@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SQLStatement\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString vvendor \\u003d \\\"mysql\\\";\\nString vquerytype \\u003d \\\"update\\\";\\nString vinstancename \\u003d \\\"\\\";\\n@envoy.DatabaseConnection{Vendor:vvendor,IPAddress:IPAddress,Port:Port,InstanceName:vinstancename,DatabaseName:DatabaseName,Username:Username,Password:Password,QueryType:vquerytype,Query:SQLStatement} \\u003e dbReturnValue;\\n\\nString res \\u003d \\\"\\\";\\nif(dbReturnValue !\\u003d null)\\n{\\n  res \\u003d dbReturnValue.toString();\\n}\\nreturn res;\\n\"\n  },\n  {\n    \"name\": \"MYSQLExecuteReader\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.264048404313196E8\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.0855421872744014E9\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.8493414677370894E9\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.0245849130354697E8\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4827951012424529E9\"\n      },\n      {\n        \"name\": \"SQLStatement\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.393054638604669E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SQLStatement\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString vvendor \\u003d \\\"mysql\\\";\\nString vquerytype \\u003d \\\"query\\\";\\nString vinstancename \\u003d \\\"\\\";\\n@envoy.DatabaseConnection{Vendor:vvendor,IPAddress:IPAddress,Port:Port,InstanceName:vinstancename,DatabaseName:DatabaseName,Username:Username,Password:Password,QueryType:vquerytype,Query:SQLStatement} \\u003e dbReturnValue;\\n\\nreturn dbReturnValue;\"\n  },\n  {\n    \"name\": \"MYSQLInsertTags\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.655220272318921E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"2.0259331564137921E9\"\n      },\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.7174338140813917E8\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.325656759221973E8\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.018555712706613E9\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3417603375442495E9\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.241511830832026E9\"\n      },\n      {\n        \"name\": \"TableName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.1494216790670764E8\"\n      },\n      {\n        \"name\": \"LogicalDeviceFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.923332258055853E8\"\n      },\n      {\n        \"name\": \"EPCFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6201516158767498E9\"\n      },\n      {\n        \"name\": \"DateFieldName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3861345595476046E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.declare{name:\\\"TableName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"LogicalDeviceFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"EPCFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DateFieldName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\t\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e vtags;\\nArrayList\\u003cProperties\\u003e Tags \\u003d null;\\nif(vtags !\\u003d null)\\n{\\n\\tTags \\u003d (ArrayList\\u003cProperties\\u003e)vtags;\\n}\\n\\nString sta \\u003d \\\"Insert into \\\" + TableName + \\\" (\\\"+LogicalDeviceFieldName+\\\",\\\"+EPCFieldName+\\\",\\\"+DateFieldName+\\\") Values(\\u0027\\\"+LogicalDevice + \\\"\\u0027,\\\";\\n\\n@envoy.GetCurrentDateAsString{} \\u003e vdate;\\nString vSQLStatement \\u003d \\\"\\\";\\n\\nif(Tags !\\u003d null \\u0026\\u0026 Tags.size() \\u003e 0)\\n{\\n\\tfor(Properties tag : Tags)\\n\\t{\\n\\t    vSQLStatement \\u003d sta + \\\"\\u0027\\\" + tag.getProperty(\\\"epc\\\") +\\\"\\u0027\\\"+\\\",\\\"  +\\\"\\u0027\\\"+vdate.toString()+\\\"\\u0027)\\\";\\n\\t\\t@envoy.MYSQLExecuteCommand{IPAddress:IPAddress,Port:Port,DatabaseName:DatabaseName,Username:Username,Password:Password,SQLStatement:vSQLStatement} \\u003e MYSQLExecuteCommandReturnValue;\\n\\t}\\n}\\n\\nreturn null;\"\n  },\n  {\n    \"name\": \"OracleExecuteCommand\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.510041926363723E8\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.019061674764903E9\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0178072568450031E9\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0170766658430498E9\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3400387903100986E9\"\n      },\n      {\n        \"name\": \"SQLStatement\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9551895769190533E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"\\n@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SQLStatement\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString vvendor \\u003d \\\"oracle:thin\\\";\\nString vquerytype \\u003d \\\"update\\\";\\nString vinstancename \\u003d \\\"\\\";\\n@envoy.DatabaseConnection{Vendor:vvendor,IPAddress:IPAddress,Port:Port,InstanceName:vinstancename,DatabaseName:DatabaseName,Username:Username,Password:Password,QueryType:vquerytype,Query:SQLStatement} \\u003e dbReturnValue;\\nString res \\u003d \\\"\\\";\\nif(dbReturnValue !\\u003d null)\\n{\\n  res \\u003d dbReturnValue.toString();\\n}\\nreturn res;\\n\"\n  },\n  {\n    \"name\": \"OracleExecuteReader\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Database\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IPAddress\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.664670053071716E8\"\n      },\n      {\n        \"name\": \"Port\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.0111827393277333E9\"\n      },\n      {\n        \"name\": \"DatabaseName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5496387737561312E9\"\n      },\n      {\n        \"name\": \"Username\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4121692327780466E9\"\n      },\n      {\n        \"name\": \"Password\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.4512068786999145E8\"\n      },\n      {\n        \"name\": \"SQLStatement\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.512145444421335E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"IPAddress\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Port\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"DatabaseName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Username\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Password\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SQLStatement\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\nString vvendor \\u003d \\\"oracle:thin\\\";\\nString vquerytype \\u003d \\\"query\\\";\\nString vinstancename \\u003d \\\"\\\";\\n@envoy.DatabaseConnection{Vendor:vvendor,IPAddress:IPAddress,Port:Port,InstanceName:vinstancename,DatabaseName:DatabaseName,Username:Username,Password:Password,QueryType:vquerytype,Query:SQLStatement} \\u003e dbReturnValue;\\nString res \\u003d \\\"\\\";\\nif(dbReturnValue !\\u003d null)\\n{\\n  res \\u003d dbReturnValue.toString();\\n}\\nreturn res;\"\n  },\n  {\n    \"name\": \"ProgramEPC\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Programming\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"AccessPassword\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.839797356449375E8\"\n      },\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7605852802805066E9\"\n      },\n      {\n        \"name\": \"OldEPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.053641286574152E8\"\n      },\n      {\n        \"name\": \"NewEPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3770512289955637E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"\\n@envoy.declare{name:AccessPassword,type:String,editor:text};\\n@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:OldEPC,type:String,editor:text};\\n@envoy.declare{name:NewEPC,type:String,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"tag-programmer\\\"});\\n}\\nString res \\u003d null;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"programEPC\\\",new Class[]{String.class,String.class,String.class,String.class});\\nres \\u003d (String)m.invoke(container,new Object[]{AccessPassword,LogicalDevice,OldEPC,NewEPC});\\n}\\nreturn res;\\n\\n\"\n  },\n  {\n    \"name\": \"ProgramEPCDataFields\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Programming\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"AccessPassword\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.169695480743465E8\"\n      },\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.3875577995781991E9\"\n      },\n      {\n        \"name\": \"OldEPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.282500855667399E8\"\n      },\n      {\n        \"name\": \"DataFieldNames\",\n        \"editor\": \"text\",\n        \"type\": \"List\\u003cString\\u003e\",\n        \"activity\": null,\n        \"id\": \"1.0345980494492315E9\"\n      },\n      {\n        \"name\": \"DataFieldValues\",\n        \"editor\": \"text\",\n        \"type\": \"List\\u003cString\\u003e\",\n        \"activity\": null,\n        \"id\": \"9.186737519449111E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"\\n@envoy.declare{name:AccessPassword,type:String,editor:text};\\n@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:OldEPC,type:String,editor:text};\\n@envoy.declare{name:DataFieldNames,type:List\\u003cString\\u003e,editor:text};\\n@envoy.declare{name:DataFieldValues,type:List\\u003cString\\u003e,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"tag-programmer\\\"});\\n}\\nString res \\u003d null;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"programEPCFields\\\",new Class[]{String.class,String.class,String.class,List.class,List.class});\\nres \\u003d (String)m.invoke(container,new Object[]{AccessPassword,LogicalDevice,OldEPC,DataFieldNames,DataFieldValues});\\n}\\nreturn res;\\n\\n\"\n  },\n  {\n    \"name\": \"ReadAndSendTDSALEReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.5918140814574583E9\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"9.608956668051935E8\"\n      },\n      {\n        \"name\": \"Subscribers\",\n        \"editor\": \"Subscribers\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.767855508470584E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Subscribers\\\",type:\\\"String\\\",editor:\\\"Subscribers\\\"} ;\\nArrayList\\u003cString\\u003e sub \\u003d new ArrayList\\u003cString\\u003e();\\nString[] te \\u003d  Subscribers.split(\\\";\\\");\\nfor(String s:te)\\n{\\n\\tsub.add(s);\\n}\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e ReadTagsReturnValue;\\nif(ReadTagsReturnValue \\u003d\\u003d null)\\n\\treturn \\\"\\\";\\nArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)ReadTagsReturnValue;\\nif(tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0)\\n{\\n\\t@envoy.GenerateTDSALEReport{LogicalDevice:LogicalDevice,Tags:tags} \\u003e GenerateTDSALEReportReturnValue;\\n\\tString report \\u003d GenerateTDSALEReportReturnValue.toString();\\n\\t@envoy.SocketSend{Subscribers:sub,Message:report} \\u003e SocketSendReturnValue;\\n}\\n\\nreturn null;\\n\"\n  },\n  {\n    \"name\": \"ReadFromLocalFile\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"File\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"FileName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.3022558129345995E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"FileName\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\ntry\\n{\\n\\tString data;\\n\\tString path \\u003d \\\"/tmp/\\\" + FileName;\\n   java.io.File file\\u003dnew java.io.File(path);\\n\\t  if (!file.exists())\\n\\t  {\\n\\t  \\t\\treturn  \\\"\\\";\\n\\t  }\\n  \\n\\tjava.io.FileInputStream fis \\u003d new java.io.FileInputStream(path);\\n\\tjava.io.ObjectInputStream ois \\u003d new java.io.ObjectInputStream(fis);\\n\\n\\tString res \\u003d (String) ois.readObject();\\n\\tois.close();\\n\\t\\n\\treturn res;\\n\\t}\\n\\tcatch (Exception exp)\\n\\t{\\n  \\t return \\\"\\\";\\n\\t}\"\n  },\n  {\n    \"name\": \"ReadTags\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6807428637501976E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.899919011465135E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"\\n@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:ReadDuration,type:Integer,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"tag-reader\\\"});\\n}\\n\\n\\nList\\u003cProperties\\u003e tags\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"collectTags\\\",new Class[]{String.class,String.class,Integer.class});\\ntags\\u003d(List\\u003cProperties\\u003e)m.invoke(container,new Object[]{user,LogicalDevice,ReadDuration});\\n}\\nreturn tags;\\n\\n\"\n  },\n  {\n    \"name\": \"ReadTagsAndSendALEReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.908926386433444E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"5.830099591032888E8\"\n      },\n      {\n        \"name\": \"Report\",\n        \"editor\": \"reports\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.1829448974941397E8\"\n      },\n      {\n        \"name\": \"Subscribers\",\n        \"editor\": \"subscribers\",\n        \"type\": \"ArrayList\\u003cString\\u003e\",\n        \"activity\": null,\n        \"id\": \"2.7799388834377486E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"void\",\n    \"code\": \"\\n@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:ReadDuration,type:Integer,editor:text};\\n@envoy.declare{name:Report,type:String,editor:reports};\\n@envoy.declare{name:Subscribers,type:ArrayList\\u003cString\\u003e,editor:subscribers};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"report-sender\\\"});\\n}\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"sendReport\\\",new Class[]{String.class,Integer.class,String.class,String.class,List.class});\\nm.invoke(container,new Object[]{user,ReadDuration,LogicalDevice,Report,Subscribers});\\n}\\nreturn null;\\n\\n\"\n  },\n  {\n    \"name\": \"ReadTagsAndSendEPCGlobalALEReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"8.165801067863865E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.8672988890556035E9\"\n      },\n      {\n        \"name\": \"Subscribers\",\n        \"editor\": \"Subscribers\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.410500561966089E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Subscribers\\\",type:\\\"String\\\",editor:\\\"Subscribers\\\"} ;\\n\\nArrayList\\u003cString\\u003e sub \\u003d new ArrayList\\u003cString\\u003e();\\nif(Subscribers \\u003d\\u003d null || Subscribers.isEmpty())\\n\\treturn \\\"\\\";\\nString[] te \\u003d  Subscribers.split(\\\";\\\");\\nfor(String s:te)\\n{\\n\\tsub.add(s);\\n}\\n         @envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e vtags;\\n            \\n             String reportName \\u003d \\\"ALE Report\\\";\\n             StringBuilder str \\u003d new StringBuilder();\\n            \\n            java.util.Calendar CurrentDate \\u003d  java.util.Calendar.getInstance();\\n            java.text.SimpleDateFormat formatter \\u003d new java.text.SimpleDateFormat(\\\"yyyy-MM-dd HH:mm:ss.SSS\\\");\\n            String dateNow \\u003d formatter.format(CurrentDate.getTime());\\n            \\n            str.append(\\\"\\u003cale:ECReports xmlns:ale\\u003d\\\\\\\"urn:epcglobal:ale:xsd:1\\\\\\\" \\\");\\n            str.append(\\\"xmlns:epcglobal\\u003d\\\\\\\"urn:epcglobal:xsd:1\\\\\\\" \\\");\\n            str.append(\\\"xmlns:xsi\\u003d\\\\\\\"http://www.w3.org/2001/XMLSchema-instance\\\\\\\" \\\");\\n            str.append(\\\"xsi:schemaLocation\\u003d\\\\\\\"urn:epcglobal:ale:xsd:1 Ale.xsd\\\\\\\" \\\");\\n            str.append(\\\"schemaVersion\\u003d\\\\\\\"1.0\\\\\\\" \\\");\\n            str.append(\\\"creationDate\\u003d\\\\\\\"\\\"+dateNow+\\\"\\\\\\\" \\\");\\n            str.append(\\\"specName\\u003d\\\\\\\"\\\"+LogicalDevice+\\\"\\\\\\\" \\\");\\n            str.append(\\\"ALEID\\u003d\\\\\\\"ENVOY\\\\\\\" \\\");\\n            str.append(\\\"totalMilliseconds\\u003d\\\\\\\"\\\"+ReadDuration+\\\"\\\\\\\" \\\");\\n            str.append(\\\"terminationCondition\\u003d\\\\\\\"DURATION\\\\\\\"\\u003e \\\");\\n            str.append(\\\"\\u003creports\\u003e\\\");\\n            \\n            str.append(\\\"\\u003creport name\\u003d\\\\\\\"\\\").append(reportName).append(\\\"\\\\\\\"\\u003e\\\");\\n            str.append(\\\"\\u003cgroup\\u003e\\\");\\n            \\n            StringBuilder tagsStr \\u003d new StringBuilder();\\n            int tagCount \\u003d 0;\\n            //\\n            if(vtags !\\u003d null)\\n            {\\n                ArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)vtags;\\n                if(tags.size() \\u003e 0)\\n            \\t{       \\n                    for (Properties ev : tags) {\\n                    //\\n                        try {\\n                                String epc \\u003d ev.getProperty(\\\"epc\\\");\\n                                //\\n                                @envoy.GetEPCTagURI{EPC:epc} \\u003e GetEPCTagURIReturnValue;\\n                                if(GetEPCTagURIReturnValue !\\u003d null)\\n                                {\\n                                    String epctaguri \\u003d GetEPCTagURIReturnValue.toString();\\n                                    if(epctaguri.isEmpty())\\n                                        continue;\\n                             \\n                                    tagCount++;\\n                                    tagsStr.append(\\\"\\u003cmember\\\");\\n                                    tagsStr.append(\\\"\\u003e\\\");\\n                                    tagsStr.append(\\\"\\u003ctag\\u003e\\\").append(epctaguri).append(\\\"\\u003c/tag\\u003e\\\");\\n                                    tagsStr.append(\\\"\\u003c/member\\u003e\\\");\\n                                }\\n                            } \\n                            catch (Exception e) \\n                            {\\n                                continue;\\n                            }\\n                    }\\n            \\t}\\n            }\\n    \\n            str.append(\\\"\\u003c\\\");\\n            str.append(\\\"groupList\\\");\\n            \\n            str.append(\\\" count\\u003d\\\\\\\"\\\").append(tagCount).append(\\\"\\\\\\\"\\\");\\n            str.append(\\\"\\u003e\\\");\\n    \\n            str.append(tagsStr);\\n            \\n            str.append(\\\"\\u003c/groupList\\u003e\\\");\\n            str.append(\\\"\\u003c/group\\u003e\\\");\\n            str.append(\\\"\\u003c/report\\u003e\\\");\\n            \\n            str.append(\\\"\\u003c/reports\\u003e\\\");\\n            str.append(\\\"\\u003c/ale:ECReports\\u003e\\\");\\n    \\t\\n    \\t\\t \\n\\n@envoy.SocketSend{Subscribers:sub,Message:str.toString()} \\u003e SocketSendReturnValue;\\n\\n            return str.toString();\"\n  },\n  {\n    \"name\": \"ReadTagsAndSendEPCReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Subscribers\",\n        \"editor\": \"Subscribers\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.814225763453219E7\"\n      },\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.469596694878876E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.4629689862502537E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"Subscribers\\\",type:\\\"String\\\",editor:\\\"Subscribers\\\"} ;\\n@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e var1;\\nString res \\u003d \\\"\\\";\\t\\nArrayList\\u003cString\\u003e sub \\u003d new ArrayList\\u003cString\\u003e();\\nString[] temp \\u003d  Subscribers.split(\\\";\\\");\\nfor(String s:temp)\\n{\\n\\tsub.add(s);\\n}\\nif(var1 !\\u003d null)\\n{\\n\\tArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)var1;\\n\\tif(tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0)\\n\\t{\\n\\t\\tfor(Properties tag :tags)\\n\\t\\t{\\n\\t\\t\\t@envoy.GetEPCFromProperties{Props:tag} \\u003e epc;\\n\\t\\t\\tres +\\u003d epc.toString()+\\\"\\\\n\\\" ;\\n\\t\\t}\\n\\n\\t\\t@envoy.SocketSend{Subscribers:sub,Message:res};\\n\\t}\\n\\n\\t\\n}\\nreturn \\\"ok\\\";\"\n  },\n  {\n    \"name\": \"ReadTagsAndSendSAPAIIReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"SAPAIIHost\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.024950932326915E8\"\n      },\n      {\n        \"name\": \"SAPAIIPort\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.8059047315558438E9\"\n      },\n      {\n        \"name\": \"SAPCommand\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.0350738342148603E9\"\n      },\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.1766531104693936E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"8.736165064226999E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"SAPAIIHost\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SAPAIIPort\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"SAPCommand\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e vtags;\\nif(vtags !\\u003d null)\\n{\\n\\tArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)vtags;\\n\\tif(tags.size() \\u003e 0)\\n\\t{\\n\\t\\t@envoy.GetCurrentDateAsString{} \\u003e vnow;\\n\\t\\tStringBuilder report \\u003d new StringBuilder();\\n\\t\\treport.append(\\\"\\u003c?xml version\\u003d\\\\\\\"1.0\\\\\\\" encoding\\u003d\\\\\\\"UTF-8\\\\\\\" ?\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003cpmlcore:Sensor xmlns:pmlcore\\u003d\\\\\\\"urn:autoid:specification:interchange:PMLCore:xml:schema:1\\\\\\\" xmlns:pmluid\\u003d\\\\\\\"urn:autoid:specification:universal:Identifier:xml:schema:1\\\\\\\" xmlns:xsi\\u003d\\\\\\\"http://www.w3.org/2001/XMLSchema-instance\\\\\\\"\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003cpmluid:ID\\u003eENVOY_RFID\\u003c/pmluid:ID\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003cpmlcore:Observation\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003cpmlcore:DateTime\\u003e\\\"+vnow.toString()+\\\"\\u003c/pmlcore:DateTime\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003cpmlcore:Command\\u003e\\\"+SAPCommand+\\\"\\u003c/pmlcore:Command\\u003e\\\");\\n\\t\\tfor(Properties tag : tags)\\n\\t\\t{\\n\\t\\t\\tString epc \\u003d tag.getProperty(\\\"epc\\\");\\n\\t\\t\\treport.append(\\\"\\u003cpmlcore:Tag\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003cpmluid:ID\\u003e\\\"+epc+\\\"\\u003c/pmluid:ID\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003cpmlcore:Data\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003cpmlcore:XML\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003cMemory\\u003e\\\");\\n\\t\\t\\t\\t\\n\\t\\t\\tString vFieldName \\u003d \\\"Header\\\";\\n\\t\\t\\t@envoy.GenerateDataField{EPC:epc,FieldName:vFieldName} \\u003e mHeader;\\n\\t\\t\\treport.append(\\\"\\u003cDataField fieldName\\u003d\\\\\\\"\\\").append(vFieldName).append(\\\"\\\\\\\"\\u003e\\\").append(mHeader.toString()).append(\\\"\\u003c/DataField\\u003e\\\");\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\tvFieldName \\u003d \\\"VIN\\\";\\n\\t\\t\\t@envoy.GenerateDataField{EPC:epc,FieldName:vFieldName} \\u003e mVIN;\\n\\t\\t\\treport.append(\\\"\\u003cDataField fieldName\\u003d\\\\\\\"\\\").append(vFieldName).append(\\\"\\\\\\\"\\u003e\\\").append(mVIN.toString()).append(\\\"\\u003c/DataField\\u003e\\\");\\n\\t\\t\\t// Push VIN to Torque\\n\\t\\t\\tif(!mVIN.toString().isEmpty())\\n\\t\\t\\t{\\n\\t\\t\\t\\t@envoy.TorqueController{VIN:mVIN.toString()} \\u003e TorqueControllerReturnValue;\\n\\t\\t\\t}\\n\\t\\t\\tvFieldName \\u003d \\\"ModelType\\\";\\n\\t\\t\\t@envoy.GenerateDataField{EPC:epc,FieldName:vFieldName} \\u003e mModelType;\\n\\t\\t\\t\\n\\t\\t\\tvFieldName \\u003d \\\"Specs\\\";\\n\\t\\t\\t@envoy.GenerateDataField{EPC:epc,FieldName:vFieldName} \\u003e mSpecs;\\n\\t\\t\\t\\n\\t\\t\\tvFieldName \\u003d \\\"Flag\\\";\\n\\t\\t\\t@envoy.GenerateDataField{EPC:epc,FieldName:vFieldName} \\u003e mFlag;\\n\\t\\t\\t\\n\\t\\t\\tvFieldName\\u003d\\\"SAPID\\\";\\n\\t\\t\\tString SAPID \\u003d (mModelType.toString()+mSpecs.toString()+mFlag.toString()).trim();\\n\\t\\t\\treport.append(\\\"\\u003cDataField fieldName\\u003d\\\\\\\"\\\").append(vFieldName).append(\\\"\\\\\\\"\\u003e\\\").append(SAPID).append(\\\"\\u003c/DataField\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003c/Memory\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003c/pmlcore:XML\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003c/pmlcore:Data\\u003e\\\");\\n\\t\\t\\treport.append(\\\"\\u003c/pmlcore:Tag\\u003e\\\");\\n\\t\\t}\\n\\t\\t\\n\\t\\treport.append(\\\"\\u003cpmlcore:Data\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003cpmlcore:XML\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003cLogicalDeviceID\\u003e\\\"+LogicalDevice+\\\"\\u003c/LogicalDeviceID\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003c/pmlcore:XML\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003c/pmlcore:Data\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003c/pmlcore:Observation\\u003e\\\");\\n\\t\\treport.append(\\\"\\u003c/pmlcore:Sensor\\u003e\\\");\\n\\t\\t\\n\\t\\tString vURI \\u003d \\\"http://\\\"+SAPAIIHost+\\\":\\\"+SAPAIIPort+\\\"/sap/scm/ain\\\";\\n\\t\\t//String vURI \\u003d \\\"http://posttestserver.com/post.php\\\";\\n\\t\\t\\n\\tArrayList\\u003cString\\u003e Subscribers \\u003d new ArrayList\\u003cString\\u003e();\\n\\tSubscribers.add(\\\"RAMY-THINK-EMC\\\");\\n\\n\\t\\t@envoy.SocketSend{Subscribers:Subscribers,Message:report.toString()} \\u003e SocketSendReturnValue;\\n\\n\\t\\t@envoy.HTTPPost{URI:vURI,Data:report.toString()} \\u003e HTTPPostReturnValue;\\n\\t\\t\\n\\t\\t@envoy.SocketSend{Subscribers:Subscribers,Message:HTTPPostReturnValue.toString()} ;\\n\\t\\t\\n\\t\\treturn HTTPPostReturnValue.toString();\\n\\t\\t\\n\\t}\\n}\\n\\nreturn \\\"no tag found!\\\";\"\n  },\n  {\n    \"name\": \"ReadTagsAndSendTDSFieldsAsText\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Subscribers\",\n        \"editor\": \"Subscribers\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.2480193983179116E9\"\n      },\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4645519990574596E9\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"4.0195067096164846E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"Subscribers\\\",type:\\\"String\\\",editor:\\\"Subscribers\\\"} ;\\n@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e var1;\\nString res \\u003d \\\"\\\";\\t\\nArrayList\\u003cString\\u003e sub \\u003d new ArrayList\\u003cString\\u003e();\\nString[] temp \\u003d  Subscribers.split(\\\";\\\");\\nfor(String s:temp)\\n{\\n\\tsub.add(s);\\n}\\nif(var1 !\\u003d null)\\n{\\n\\n   \\n\\tArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)var1;\\n\\tif(tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0)\\n\\t{\\n\\t\\tfor(Properties tag :tags)\\n\\t\\t{\\n\\t\\t\\t\\t\\n\\t\\t\\t@envoy.GetEPCFromProperties{Props:tag} \\u003e epc;\\t\\n\\t\\t\\tif(epc \\u003d\\u003d null)\\n\\t\\t\\t\\tcontinue;\\n\\t\\t\\t@envoy.GetEPCTagPureIdentityURI{EPC:epc.toString()} \\u003e GetEPCTagPureIdentityURIReturnValue;\\n\\t\\t\\tif(GetEPCTagPureIdentityURIReturnValue \\u003d\\u003d null)\\n\\t\\t\\t\\tcontinue;\\n\\t\\t\\t@envoy.GetFieldsFromEPCTagURI{EPCPureIdentityTagURI:GetEPCTagPureIdentityURIReturnValue.toString()} \\u003e GetFieldsFromEPCTagURIReturnValue;\\n\\t\\t\\tif(GetFieldsFromEPCTagURIReturnValue !\\u003dnull)\\n\\t\\t\\t{\\n\\t\\t\\t\\tArrayList\\u003cString\\u003e Fields \\u003d (ArrayList\\u003cString\\u003e)GetFieldsFromEPCTagURIReturnValue;\\n\\t\\t\\t\\tif(Fields!\\u003d null)\\n\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\tres +\\u003dGetEPCTagPureIdentityURIReturnValue.toString().trim().split(\\\":\\\")[3]+\\\":\\\";\\n\\t\\t\\t\\t\\tBoolean First \\u003d true;\\n\\t\\t\\t\\t\\tfor(String field : Fields)\\n\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\tif(!First)\\n\\t\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\t\\tres +\\u003d \\\";\\\"+field ;\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t\\telse\\n\\t\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\t\\tres +\\u003d field ;\\n\\t\\t\\t\\t\\t\\t\\tFirst \\u003d false;\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tres +\\u003d \\\"\\\\n\\\" ;\\n\\t\\t\\t}\\n\\n\\t\\t\\t\\n\\t\\t}\\n\\n\\t\\t@envoy.SocketSend{Subscribers:sub,Message:res};\\n\\t}\\n}\\nreturn \\\"ok\\\";\"\n  },\n  {\n    \"name\": \"ReadTagsAndSendTextReport\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Subscribers\",\n        \"editor\": \"Subscribers\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.734947381659279E8\"\n      },\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.086701978875479E9\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"5.0309798689943594E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"Subscribers\\\",type:\\\"String\\\",editor:\\\"Subscribers\\\"} ;\\n@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e var1;\\nString res \\u003d \\\"\\\";\\t\\nArrayList\\u003cString\\u003e sub \\u003d new ArrayList\\u003cString\\u003e();\\nString[] temp \\u003d  Subscribers.split(\\\";\\\");\\nfor(String s:temp)\\n{\\n\\tsub.add(s);\\n}\\nif(var1 !\\u003d null)\\n{\\n    String DATE_FORMAT_NOW \\u003d \\\"yyyy-MM-dd HH-mm-ss.mmm\\\";\\n    java.util.Calendar cal \\u003d java.util.Calendar.getInstance();\\n    java.text.SimpleDateFormat sdf \\u003d new java.text.SimpleDateFormat(DATE_FORMAT_NOW);\\n    String date \\u003d sdf.format(cal.getTime());\\n\\tArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)var1;\\n\\tif(tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0)\\n\\t{\\n\\t\\tfor(Properties tag :tags)\\n\\t\\t{\\n\\t\\t\\t\\t\\n\\t\\t\\t@envoy.GetEPCFromProperties{Props:tag} \\u003e epc;\\n\\t\\t\\tres +\\u003d LogicalDevice + \\\",\\\"+ epc.toString()+\\\",\\\"+date+\\\"\\\\n\\\" ;\\n\\t\\t}\\n\\n\\t\\t@envoy.SocketSend{Subscribers:sub,Message:res};\\n\\t}\\n}\\nreturn null;\"\n  },\n  {\n    \"name\": \"ReadTagsAsJSON\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"LogicalDevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"9.610006116762179E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.2497708696388586E9\"\n      },\n      {\n        \"name\": \"EnableTDS\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.32158308821148E9\"\n      },\n      {\n        \"name\": \"Direction\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.691490743062676E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"LogicalDevice\\\",type:\\\"String\\\",editor:\\\"LogicalDevices\\\"};\\n@envoy.declare{name:\\\"ReadDuration\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"EnableTDS\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"Direction\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n@envoy.ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} \\u003e var1;\\nString res \\u003d \\\"\\\";\\t\\nif(var1 !\\u003d null)\\n{\\n\\tArrayList\\u003cProperties\\u003e tags \\u003d (ArrayList\\u003cProperties\\u003e)var1;\\n\\tif(tags !\\u003d null \\u0026\\u0026 tags.size() \\u003e 0)\\n\\t{\\n\\t\\tString DATE_FORMAT_NOW \\u003d \\\"yyyy-MM-dd HH-mm-ss.mmm\\\";\\n\\t\\tjava.util.Calendar cal \\u003d java.util.Calendar.getInstance();\\n\\t\\tjava.text.SimpleDateFormat sdf \\u003d new java.text.SimpleDateFormat(DATE_FORMAT_NOW);\\n\\t\\tString date \\u003d sdf.format(cal.getTime());\\n\\t\\t\\n  \\n\\t\\tres +\\u003d \\\"{\\\\n\\\"+\\\"\\\\\\\"cmd\\\\\\\": \\\\\\\"tags\\\\\\\",\\\\n\\\"+\\\"\\\\\\\"logicaldevice\\\\\\\": \\\\\\\"\\\"+LogicalDevice+\\\"\\\\\\\",\\\\n\\\"+\\\"\\\\\\\"dir\\\\\\\": \\\\\\\"\\\"+Direction+\\\"\\\\\\\",\\\\n\\\\\\\"data\\\\\\\":\\\\n[\\\\n\\\";\\n\\t\\tfor(Properties tag :tags)\\n\\t\\t{\\n\\t\\t\\t@envoy.GetEPCFromProperties{Props:tag} \\u003e epc;\\t\\n\\t\\t\\tif(epc \\u003d\\u003d null)\\n\\t\\t\\t\\tcontinue;\\n\\t\\t\\t//GRAI\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t    //SGTIN\\n\\t\\t\\tif(!epc.toString().startsWith(\\\"33\\\") \\u0026\\u0026 !epc.toString().startsWith(\\\"37\\\") \\u0026\\u0026  !epc.toString().startsWith(\\\"30\\\") \\u0026\\u0026 !epc.toString().startsWith(\\\"36\\\")  )\\n\\t\\t\\t\\tcontinue;\\n\\t\\t\\t\\t\\n\\t\\t\\tif(res.contains(\\\"epc\\\"))\\n\\t\\t\\t\\tres +\\u003d \\\",\\\";\\n\\t\\t\\t\\t\\n\\t\\t\\tres +\\u003d \\\"{\\\\\\\"epc\\\\\\\":\\\\\\\"\\\"+epc.toString()+\\\"\\\\\\\"\\\";\\n\\t\\t\\t\\n\\t\\t\\tif(EnableTDS \\u003d\\u003d 1)\\n\\t\\t\\t{\\n\\t\\t\\t\\t@envoy.GetEPCTagPureIdentityURI{EPC:epc.toString()} \\u003e GetEPCTagPureIdentityURIReturnValue;\\n\\t\\t\\t\\tif(GetEPCTagPureIdentityURIReturnValue !\\u003d null)\\n\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t@envoy.GetFieldsFromEPCTagURI{EPCPureIdentityTagURI:GetEPCTagPureIdentityURIReturnValue.toString()} \\u003e GetFieldsFromEPCTagURIReturnValue;\\n\\t\\t\\t\\t\\tif(GetFieldsFromEPCTagURIReturnValue !\\u003d null)\\n\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\tArrayList\\u003cString\\u003e Fields \\u003d (ArrayList\\u003cString\\u003e)GetFieldsFromEPCTagURIReturnValue;\\n\\t\\t\\t\\t\\t\\tif(Fields!\\u003d null)\\n\\t\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\t\\tString std \\u003d GetEPCTagPureIdentityURIReturnValue.toString().trim().split(\\\":\\\")[3];\\n\\t\\t\\t\\t\\t\\t\\tres +\\u003d \\\",\\\"+\\\"\\\\\\\"standard\\\\\\\":\\\\\\\"\\\"+std+\\\"\\\\\\\"\\\";\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\tfor(String field : Fields)\\n\\t\\t\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\t\\t\\tString[] spliter \\u003d field.split(\\\"\\u003d\\\");\\n\\t\\t\\t\\t\\t\\t\\t\\tres +\\u003d \\\",\\\"+\\\"\\\\\\\"\\\"+spliter[0]+\\\"\\\\\\\":\\\\\\\"\\\"+spliter[1]+\\\"\\\\\\\"\\\";\\n\\t\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t\\n\\t\\t\\tres +\\u003d \\\",\\\"+\\\"\\\\\\\"date\\\\\\\":\\\\\\\"\\\"+date+\\\"\\\\\\\"\\\";\\n\\t\\t\\tres +\\u003d \\\"}\\\"+\\\"\\\\n\\\" ;\\n\\t\\t}\\n\\t\\tres +\\u003d \\\"]\\\\n}\\\";\\n\\t\\t\\n\\t}\\n}\\nreturn res;\"\n  },\n  {\n    \"name\": \"ReadTagsPersist\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9675363357823477E9\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"2.0281215791086822E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"\\n@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:ReadDuration,type:Integer,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"tag-reader\\\"});\\n}\\n\\n\\nList\\u003cProperties\\u003e tags\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"collectTagsPersist\\\",new Class[]{String.class,String.class,Integer.class});\\ntags\\u003d(List\\u003cProperties\\u003e)m.invoke(container,new Object[]{user,LogicalDevice,ReadDuration});\\n}\\nreturn tags;\\n\\n\"\n  },\n  {\n    \"name\": \"SaveToLocalFile\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"File\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"FileName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.623046714664151E9\"\n      },\n      {\n        \"name\": \"Data\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9351287787279308E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Boolean\",\n    \"code\": \"@envoy.declare{name:\\\"FileName\\\",type:\\\"String\\\",editor:\\\"Text\\\"} ;\\n@envoy.declare{name:\\\"Data\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n\\n\\n\\ntry\\n{\\n\\tString path \\u003d \\\"/tmp/\\\"+FileName;\\n  java.io.File file\\u003dnew java.io.File(path);\\n  if (!file.exists())\\n  {\\n  \\tfile.createNewFile();\\n  }\\n  else\\t\\n  {\\n  \\tfile.delete();\\n  \\tfile.createNewFile();\\n  }\\n  \\n\\tjava.io.ObjectOutput out \\u003d new java.io.ObjectOutputStream(new java.io.FileOutputStream(path));\\n\\tout.writeObject(Data);\\n\\tout.close();\\n\\nreturn true;\\n}\\ncatch(Exception exp)\\n{\\n   return false;\\n}\\n    \\n\\n\"\n  },\n  {\n    \"name\": \"SetDataField\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Processing\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"EPC\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.642594308827555E9\"\n      },\n      {\n        \"name\": \"FieldName\",\n        \"editor\": \"fields\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.8859198582933754E7\"\n      },\n      {\n        \"name\": \"FieldValue\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6464352142131987E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:EPC,type:String,editor:text};\\n@envoy.declare{name:FieldName,type:String,editor:fields};\\n@envoy.declare{name:FieldValue,type:String,editor:text};\\nObject fieldGenerator\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\nfieldGenerator\\u003dm.invoke(proxy,new Object[]{\\\"field-generator\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dfieldGenerator.getClass().getMethod(\\\"setField\\\",new Class[]{String.class,String.class,String.class});\\nresponse\\u003d(String)(m.invoke(fieldGenerator,new Object[]{EPC,FieldName,FieldValue}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"SetDeviceProps\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"BaseLogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"2.5702630246773135E7\"\n      },\n      {\n        \"name\": \"PropertyName\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.4685978105810401E9\"\n      },\n      {\n        \"name\": \"PropertyValue\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"4.6210800400721915E7\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:BaseLogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:PropertyName,type:String,editor:text};\\n@envoy.declare{name:PropertyValue,type:String,editor:text};\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"setDeviceProps\\\",new Class[]{String.class,String.class,String.class});\\nresponse\\u003d(String)(m.invoke(coreInterface,new Object[]{BaseLogicalDevice,PropertyName,PropertyValue}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"SetGlobalVariable\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Global Variable\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"VariableName\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"7.985107144748385E8\"\n      },\n      {\n        \"name\": \"Value\",\n        \"editor\": \"text\",\n        \"type\": \"Object\",\n        \"activity\": null,\n        \"id\": \"1.1538013288509617E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Object\",\n    \"code\": \"\\n@envoy.declare{name:VariableName,type:String,editor:text};\\n@envoy.declare{name:Value,type:Object,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"application-container\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"setObject\\\",new Class[]{String.class,Object.class});\\nresponse\\u003d(String)(m.invoke(container,new Object[]{VariableName,Value}));\\n}\\nreturn response;\\n\"\n  },\n  {\n    \"name\": \"SetGS\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Global Settings\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"name\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.7488440341874275E9\"\n      },\n      {\n        \"name\": \"value\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.931592731210134E8\"\n      },\n      {\n        \"name\": \"type\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"3.57833410078127E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Boolean\",\n    \"code\": \"@envoy.declare{name:\\\"name\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"value\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"type\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n\\r\\n\\r\\nfinal String CONTAINER \\u003d \\\"application-settings-container\\\",\\r\\n\\t\\tGLOBAL_REFERENCE \\u003d \\\"getGlobalReference\\\",\\r\\n\\t\\tPUT_GLOBAL_SETTINGS \\u003d \\\"putGlobalSetting\\\";\\r\\nfinal Class[] PARAMETER_TYPES \\u003d new Class[] {String.class ,String.class, String.class};\\r\\n\\t\\tObject[] PARAMETER_VALUES \\u003d null;\\r\\n\\t\\ttry{\\r\\n\\t\\tif(!type.equalsIgnoreCase(\\\"text\\\") \\u0026\\u0026 !type.equalsIgnoreCase(\\\"password\\\") \\u0026\\u0026\\r\\n\\t\\t!type.equalsIgnoreCase(\\\"boolean\\\") \\u0026\\u0026 !type.equalsIgnoreCase(\\\"decimal\\\") \\u0026\\u0026\\r\\n\\t\\t!type.equalsIgnoreCase(\\\"integer\\\") \\u0026\\u0026 !type.equalsIgnoreCase(\\\"date\\\")){\\r\\n\\t\\treturn false;\\r\\n\\t\\t}\\r\\n\\t\\ttype \\u003d type.toLowerCase();\\r\\n\\t\\tPARAMETER_VALUES \\u003d new Object[]{name,type,value};\\r\\n\\t\\tMethod globalReferenceMethod \\u003d proxy.getClass().getMethod(GLOBAL_REFERENCE , new Class[]{String.class});\\r\\n\\t\\tObject container \\u003d globalReferenceMethod.invoke(proxy,new Object[]{CONTAINER});\\r\\n\\r\\n\\t\\tMethod putGloabalSettingMethod \\u003d container.getClass().getMethod(PUT_GLOBAL_SETTINGS , PARAMETER_TYPES);\\r\\n\\t\\tputGloabalSettingMethod.invoke(container,PARAMETER_VALUES);\\r\\n\\t\\t}catch(Exception ignored){\\r\\n\\t\\t//Exception ignored\\r\\n\\t\\treturn false;\\r\\n\\t\\t}\\r\\n\\t\\treturn true;\"\n  },\n  {\n    \"name\": \"Sleep\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Thread\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Milliseconds\",\n        \"editor\": \"text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.1176247794341044E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"void\",\n    \"code\": \"\\n@envoy.declare{name:Milliseconds,type:Integer,editor:text};\\nThread.sleep(Milliseconds);\\nreturn null;\\n\\n\"\n  },\n  {\n    \"name\": \"SocketClose\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Networking\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IP\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.9166481366263568E9\"\n      },\n      {\n        \"name\": \"PORT\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"7.984293768134457E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"IP\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\n@envoy.declare{name:\\\"PORT\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\n\\nString ret \\u003d \\\"\\\";\\ntry\\n{\\n\\t@envoy.GetGlobalVariable{VariableName:\\\"sockets\\\"} \\u003e obj1;\\n\\t@envoy.GetGlobalVariable{VariableName:\\\"streams\\\"} \\u003e obj2;\\n\\t\\n\\tHashMap\\u003cString, java.net.Socket\\u003e sockets;\\n\\tHashMap\\u003cString, java.io.DataOutputStream\\u003e streams;\\n\\t\\n\\tif (obj1\\u003d\\u003dnull) {\\n\\t\\tsockets \\u003d new HashMap\\u003c\\u003e();\\n\\t\\t@envoy.SetGlobalVariable{VariableName:\\\"sockets\\\",Value:sockets};\\n\\t}\\n\\telse {\\n\\t\\tsockets \\u003d (HashMap\\u003cString, java.net.Socket\\u003e) obj1;\\n\\t}\\n\\t\\n\\tif (obj2\\u003d\\u003dnull) {\\n\\t\\tstreams \\u003d new HashMap\\u003c\\u003e();\\n\\t\\t@envoy.SetGlobalVariable{VariableName:\\\"streams\\\",Value:streams};\\n\\t}\\n\\telse {\\n\\t\\tstreams \\u003d (HashMap\\u003cString, java.io.DataOutputStream\\u003e) obj2;\\n\\t}\\n\\t\\n\\tString key \\u003d IP+\\\":\\\"+PORT;\\n\\tjava.net.Socket clientSocket \\u003d null;\\n\\tjava.io.DataOutputStream stream \\u003d null;\\n\\t\\n\\tif (sockets.containsKey(key)) {\\n\\t    clientSocket \\u003d sockets.get(key);\\n\\t    sockets.remove(key);\\n\\t}\\n\\tif (streams.containsKey(key)) {\\n\\t    stream \\u003d streams.get(key);\\n\\t    streams.remove(key);\\n\\t}\\n\\tif (clientSocket !\\u003d null) \\n\\t{\\n\\t\\tsynchronized (clientSocket) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\tclientSocket.close();\\n\\t\\t\\t\\tif (!clientSocket.isClosed()){\\n\\t\\t\\t\\t\\tret +\\u003d \\\"Could not close socket. \\\";\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\tcatch (Exception e) {\\n\\t\\t\\t\\tret +\\u003d \\\"Error: could not close socket. \\\";\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\tclientSocket \\u003d null;\\n\\t}\\n\\tif (stream !\\u003d null) \\n\\t{\\n\\t\\tsynchronized (stream) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\tstream.close();\\n\\t\\t\\t}\\n\\t\\t\\tcatch (Exception e) {\\n\\t\\t\\t\\tret +\\u003d \\\"Error: could not close stream. \\\";\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\tstream \\u003d null;\\n\\t}\\n}\\ncatch (Exception e) {\\n\\treturn e.toString();\\n}\\nreturn ret;\"\n  },\n  {\n    \"name\": \"SocketSend\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Networking\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"Subscribers\",\n        \"editor\": \"subscribers\",\n        \"type\": \"ArrayList\\u003cString\\u003e\",\n        \"activity\": null,\n        \"id\": \"1.4216018967755055E9\"\n      },\n      {\n        \"name\": \"Message\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.68959292422996E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"void\",\n    \"code\": \"\\n@envoy.declare{name:Subscribers,type:ArrayList\\u003cString\\u003e,editor:subscribers};\\n@envoy.declare{name:Message,type:String,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"network-sender\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"send\\\",new Class[]{List.class,String.class});\\nresponse\\u003d(String)(m.invoke(container,new Object[]{Subscribers,Message}));\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"SocketSendKeepAlive\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Networking\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"IP\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.2069003806458883E9\"\n      },\n      {\n        \"name\": \"PORT\",\n        \"editor\": \"Text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.2171454906071358E9\"\n      },\n      {\n        \"name\": \"Message\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"6.73667136616355E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:\\\"IP\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"PORT\\\",type:\\\"Integer\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"Message\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n\\r\\ntry\\r\\n{\\r\\n\\t@envoy.GetGlobalVariable{VariableName:\\\"sockets\\\"} \\u003e obj1;\\r\\n\\t@envoy.GetGlobalVariable{VariableName:\\\"streams\\\"} \\u003e obj2;\\r\\n\\t\\r\\n\\tHashMap\\u003cString, java.net.Socket\\u003e sockets;\\r\\n\\tHashMap\\u003cString, java.io.DataOutputStream\\u003e streams;\\r\\n\\t\\r\\n\\tif (obj1\\u003d\\u003dnull) {\\r\\n\\t\\tsockets \\u003d new HashMap\\u003c\\u003e();\\r\\n\\t\\t@envoy.SetGlobalVariable{VariableName:\\\"sockets\\\",Value:sockets};\\r\\n\\t}\\r\\n\\telse {\\r\\n\\t\\tsockets \\u003d (HashMap\\u003cString, java.net.Socket\\u003e) obj1;\\r\\n\\t}\\r\\n\\t\\r\\n\\tif (obj2\\u003d\\u003dnull) {\\r\\n\\t\\tstreams \\u003d new HashMap\\u003c\\u003e();\\r\\n\\t\\t@envoy.SetGlobalVariable{VariableName:\\\"streams\\\",Value:streams};\\r\\n\\t}\\r\\n\\telse {\\r\\n\\t\\tstreams \\u003d (HashMap\\u003cString, java.io.DataOutputStream\\u003e) obj2;\\r\\n\\t}\\r\\n\\t\\r\\n\\tString key \\u003d IP+\\\":\\\"+PORT;\\r\\n\\tjava.net.Socket clientSocket;\\r\\n\\tjava.io.DataOutputStream stream;\\r\\n\\t\\r\\n\\tfor (int i\\u003d0; i\\u003c2; i++) {\\r\\n\\t\\ttry {\\r\\n\\t\\t\\tif (sockets.containsKey(key)) {\\r\\n\\t\\t\\t    clientSocket \\u003d sockets.get(key);\\r\\n\\t\\t\\t    stream \\u003d streams.get(key);\\r\\n\\t\\t\\t}\\r\\n\\t\\t\\telse {\\r\\n\\t\\t\\t    clientSocket \\u003d new java.net.Socket(IP, PORT);\\r\\n\\t\\t\\t    clientSocket.setKeepAlive(true);\\r\\n\\t\\t\\t    sockets.put(key, clientSocket);\\r\\n\\t\\t\\t    stream \\u003d new java.io.DataOutputStream(new java.io.BufferedOutputStream (clientSocket.getOutputStream()));\\r\\n\\t\\t\\t    streams.put(key, stream);\\r\\n\\t\\t\\t}\\r\\n\\t\\t\\tif (clientSocket.isClosed() || !clientSocket.isConnected()) {\\r\\n\\t\\t\\t\\tthrow new java.io.IOException(\\\"Socket disconnected\\\");\\r\\n\\t\\t\\t}\\r\\n\\t\\t\\tsynchronized (clientSocket) {\\r\\n\\t\\t\\t    synchronized (stream) {\\r\\n\\t\\t\\t        stream.writeBytes(Message);\\r\\n\\t\\t\\t        stream.flush();\\r\\n\\t\\t\\t        return \\\"true\\\";\\r\\n\\t\\t\\t    }\\r\\n\\t\\t\\t}\\r\\n\\t\\t}\\r\\n\\t\\tcatch (Exception e) {\\r\\n\\t\\t\\t@envoy.SocketClose{IP:IP,PORT:PORT};\\r\\n\\t\\t}\\r\\n\\t}\\r\\n\\treturn \\\"false\\\";\\r\\n}\\r\\ncatch (Exception e) {\\r\\n\\treturn e.toString();\\r\\n}\"\n  },\n  {\n    \"name\": \"StopWorkflow\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Core\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"WorkflowName\",\n        \"editor\": \"Text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6869128671499224E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"String\",\n    \"code\": \"@envoy.declare{name:WorkflowName,type:String,editor:Text};\\n\\nObject coreInterface \\u003d null;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncoreInterface\\u003dm.invoke(proxy,new Object[]{\\\"core-interface\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcoreInterface.getClass().getMethod(\\\"stopWorkflow\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(coreInterface,new Object[]{WorkflowName}));\\n}\\nreturn response;\"\n  },\n  {\n    \"name\": \"StreamTags\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.346343380876935E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"1.8183295511029515E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:ReadDuration,type:Integer,editor:text};\\n\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"tag-reader\\\"});\\n}\\n\\n\\nList\\u003cProperties\\u003e tags\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"streamTags\\\",new Class[]{String.class,String.class,Integer.class});\\ntags\\u003d(List\\u003cProperties\\u003e)m.invoke(container,new Object[]{user,LogicalDevice,ReadDuration});\\n}\\nreturn tags;\\n\\n\"\n  },\n  {\n    \"name\": \"StreamTagsPersist\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Tag Reading\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"LogicalDevice\",\n        \"editor\": \"logicaldevices\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"5.2170731152229154E8\"\n      },\n      {\n        \"name\": \"ReadDuration\",\n        \"editor\": \"text\",\n        \"type\": \"Integer\",\n        \"activity\": null,\n        \"id\": \"3.4769368570548075E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n    \"code\": \"@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};\\n@envoy.declare{name:ReadDuration,type:Integer,editor:text};\\n\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"tag-reader\\\"});\\n}\\n\\n\\nList\\u003cProperties\\u003e tags\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"streamTagsPersist\\\",new Class[]{String.class,String.class,Integer.class});\\ntags\\u003d(List\\u003cProperties\\u003e)m.invoke(container,new Object[]{user,LogicalDevice,ReadDuration});\\n}\\nreturn tags;\\n\\n\"\n  },\n  {\n    \"name\": \"UnsetGlobalVariable\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Global Variable\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"VariableName\",\n        \"editor\": \"text\",\n        \"type\": \"String\",\n        \"activity\": null,\n        \"id\": \"1.6145887092719994E9\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"void\",\n    \"code\": \"\\n@envoy.declare{name:VariableName,type:String,editor:text};\\nObject container\\u003dnull;\\n{\\nMethod m\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\ncontainer\\u003dm.invoke(proxy,new Object[]{\\\"application-container\\\"});\\n}\\nString response\\u003dnull;\\n{\\nMethod m\\u003dcontainer.getClass().getMethod(\\\"unset\\\",new Class[]{String.class});\\nresponse\\u003d(String)(m.invoke(container,new Object[]{VariableName}));\\n}\\nreturn response;\\n\\n\"\n  },\n  {\n    \"name\": \"UnsetGS\",\n    \"editable\": true,\n    \"displayName\": null,\n    \"category\": \"Global Settings\",\n    \"visible\": true,\n    \"list\": [\n      {\n        \"name\": \"names\",\n        \"editor\": \"Text\",\n        \"type\": \"ArrayList\\u003cString\\u003e\",\n        \"activity\": null,\n        \"id\": \"9.492788240047185E8\"\n      }\n    ],\n    \"description\": \"description\",\n    \"returnType\": \"Boolean\",\n    \"code\": \"// @DEFINE_FIELD(\\\"activityName\\\",\\\"UnsetGlobalSettings\\\")\\r\\n// @DEFINE_FIELD(\\\"category\\\",\\\"Global Settings\\\")\\r\\n// @DEFINE_FIELD(\\\"returnType\\\",\\\"String\\\")\\r\\n@envoy.declare{name:\\\"names\\\",type:\\\"ArrayList\\u003cString\\u003e\\\",editor:\\\"Text\\\"};\\r\\n\\r\\n\\r\\n\\r\\nfinal String GLOBAL_REFERENCE \\u003d \\\"getGlobalReference\\\",\\r\\n\\r\\n\\t\\t\\t\\tAPPLICATION_CONTAINER \\u003d \\\"application-settings-container\\\",\\r\\n\\r\\n\\t\\t\\t\\tREMOVE_GLOBAL_SETTINGS \\u003d \\\"removeGlobalSettings\\\";\\r\\n\\r\\nfinal Class[] PARAMETER_TYPES \\u003d new Class[]{String[].class};\\r\\n\\r\\nfinal Object[] PARAMETER_VALUES \\u003d names.toArray();\\r\\n\\r\\ntry{\\r\\n\\r\\n\\tMethod globalReferenceMethod \\u003d proxy.getClass().getMethod(GLOBAL_REFERENCE , new Class[]{String.class});\\r\\n\\r\\n\\tObject container \\u003d globalReferenceMethod.invoke(proxy,new Object[]{APPLICATION_CONTAINER});\\r\\n\\r\\n\\r\\n\\r\\n\\tMethod removeGlobalSettingMethod \\u003d container.getClass().getMethod(REMOVE_GLOBAL_SETTINGS , PARAMETER_TYPES);\\r\\n\\r\\n\\tremoveGlobalSettingMethod.invoke(container, PARAMETER_VALUES);\\r\\n\\r\\n\\treturn true;\\r\\n\\r\\n}catch(Exception ignored){\\r\\n\\r\\n\\treturn false;\\r\\n\\r\\n}\\r\\n\\r\\n\"\n  }\n]"}],"_postman_id":"963124ee-378e-0f08-a856-d6dfa0ff2004"},{"name":"Get activity","id":"2bba0b43-ed99-b26d-38f5-0140b360d92d","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity/{activityName}","description":"<p>Fetch an activity by name.</p>\n<p><b>Replace the path parameter placeholder {activityName} by the activity name.</b></p>\n<pre>\nExample: http://{{host}}:{{port}}/ALE/api/activity/Sleep\n</pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity","{activityName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"438d38c0-d83b-1854-f698-e0d1e7db958a","name":"retreive-activity-example","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity/Log"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"1138","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:51:27 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"69","body":"{\n  \"name\": \"Log\",\n  \"editable\": true,\n  \"displayName\": null,\n  \"category\": \"Logging\",\n  \"visible\": true,\n  \"list\": [\n    {\n      \"name\": \"level\",\n      \"editor\": \"Text\",\n      \"type\": \"String\",\n      \"activity\": null,\n      \"id\": \"8.669613515391414E8\"\n    },\n    {\n      \"name\": \"text\",\n      \"editor\": \"Text\",\n      \"type\": \"String\",\n      \"activity\": null,\n      \"id\": \"1.6225027806666875E9\"\n    }\n  ],\n  \"description\": \"description\",\n  \"returnType\": \"String\",\n  \"code\": \"@envoy.declare{name:\\\"level\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\n@envoy.declare{name:\\\"text\\\",type:\\\"String\\\",editor:\\\"Text\\\"};\\r\\ntry{\\r\\n    Method getGlobalReference\\u003dproxy.getClass().getMethod(\\\"getGlobalReference\\\",new Class[]{String.class});\\r\\n    Object logger\\u003dgetGlobalReference.invoke(proxy,\\\"activities-logger\\\");\\r\\n    Method logMethod\\u003dlogger.getClass().getMethod(level.trim().toLowerCase(),new Class[]{String.class});\\r\\n    logMethod.invoke(logger,text);\\r\\n\\r\\n    getGlobalReference\\u003dnull;\\r\\n    logMethod\\u003dnull;\\r\\n    logger\\u003dnull;\\r\\n    return null;\\r\\n}catch(Exception ex){\\r\\n    return ex.getMessage();\\r\\n}\"\n}"}],"_postman_id":"2bba0b43-ed99-b26d-38f5-0140b360d92d"},{"name":"Get activity parameters","id":"87caaea8-8238-2a1e-ec40-58ec3cd4c0bf","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity/{activityName}/param","description":"<p>Retrieve the parameters of the activity.</p>\n<p><b>Replace {activityName} by an activity name.</b></p>\n<pre>Example: http://{{host}}:{{port}}/ALE/api/activity/Sleep/param</pre>\n\n<p>The left hand side of the ':' character is the parameter name, and the right hand side is the associated type.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity","{activityName}","param"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"034c69f2-e394-3832-6485-8a17485ce9bc","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/activity/Log/param"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"37","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:51:49 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"26","body":"[\n  \"level:String\",\n  \"text:String\"\n]"}],"_postman_id":"87caaea8-8238-2a1e-ec40-58ec3cd4c0bf"},{"name":"Invoke activity","id":"65183500-dd1b-32ab-a86d-1bf56b265ab8","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"activityName\":\"Sleep\",\n\t\"params\":[\n\t\t{\n\t\t\t\"key\":\"Milliseconds\",\n\t\t\t\"value\":1000\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/invoke","description":"<p>Invoke an activity.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity","invoke"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"28c4a6f9-99eb-1fbc-26f1-cdb522cdb98b","name":"void-response-example","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"activityName\":\"Sleep\",\n\t\"params\":[\n\t\t{\n\t\t\t\"key\":\"Milliseconds\",\n\t\t\t\"value\":1000\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/invoke"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"19","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 03:16:23 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"1028","body":"{\"response\":\"null\"}"},{"id":"dae4a0ce-fba3-6934-0f2d-6ccaac9a7abe","name":"string-response-activity-example","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"activityName\":\"GetCurrentDateAsString\",\n\t\"params\":[\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/invoke"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"38","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 03:18:03 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"51","body":"{\"response\":\"2017-06-21 23:18:03.719\"}"}],"_postman_id":"65183500-dd1b-32ab-a86d-1bf56b265ab8"},{"name":"Bulk delete activities","id":"3b296724-de0e-409f-917c-60d0da38dfad","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"activities\": [\n    {\n      \"name\":\"{activityName1}\"\n    },\n    {\n      \"name\":\"{activityName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/activity/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","activity","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"3b296724-de0e-409f-917c-60d0da38dfad"}],"id":"16067baa-9bca-b439-5225-24afd73f07b1","description":"<p>Contains all REST Paths that are related to handling Activities</p>\n","_postman_id":"16067baa-9bca-b439-5225-24afd73f07b1"},{"name":"Authentication","item":[{"name":"Authenticate","id":"3925dc6c-3d29-3ad8-2b17-810695db188c","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"username\":\"envoy\",\n\t\"password\":\"d4de3dbdb2cff44f39741a6f8adbba74feccdc7cc02d1bb6ed27b37354687c25\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/auth","description":"<p>Authenticate the user using a cookie-based-authentication.</p>\n<p>After that you've created a session, it's just a matter of setting the cookie in all subsequent requests to the server.</p>\n<ol>\n<li>Store the session object on the client. The way that you do this will depend on how your client is implemented.</li>\n<li>When you want to make a request, take cookie name and value from the session and use them to set the 'cookie' field in the header of your request. This will be used as client session identification.</li>\n</ol>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","auth"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"59dfb423-6d6a-fe85-4506-bfcd00b77371","name":"sample-response-ok","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"username\":\"envoy\",\n\t\"password\":\"d4de3dbdb2cff44f39741a6f8adbba74feccdc7cc02d1bb6ed27b37354687c25\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/auth"},"status":"No Content","code":204,"_postman_previewlanguage":"plainText","header":[{"name":"Content-Length","key":"Content-Length","value":"0","description":""},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:49:04 GMT","description":""}],"cookie":[],"responseTime":"35","body":""}],"_postman_id":"3925dc6c-3d29-3ad8-2b17-810695db188c"},{"name":"Change user password","id":"290a7e59-80fb-c894-edc1-88e4cecb4989","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"password\":\"hashed old password\",\n  \"newPassword\":\"hashed new password\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/auth/{username}","description":"<p>Change the user password.</p>\n<p><b>Replace the path parameter placeholder {username} by the actual username.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","auth","{username}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"290a7e59-80fb-c894-edc1-88e4cecb4989"},{"name":"Reset user password","id":"0cb8aaf2-4e71-aebe-a6b8-5d0ed5e006a5","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"password\":\"new password\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/auth/{username}/reset","description":"<p>Reset the password for a specific user.</p>\n<p><b>Replace the path parameter placeholder {username} by the actual username.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","auth","{username}","reset"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"0cb8aaf2-4e71-aebe-a6b8-5d0ed5e006a5"}],"id":"4c3c1238-3499-b9d2-3cd2-d1f2daa2ba05","description":"<p>Contains all API references regarding authentication.</p>\n","_postman_id":"4c3c1238-3499-b9d2-3cd2-d1f2daa2ba05"},{"name":"Category","item":[{"name":"List categories","id":"469f34f0-3278-c51f-79b9-e46c966ee7bb","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/category","description":"<p>List all categories along with their activities.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/category?fields=category \n<i>This retrieves only the category names.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","category"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"f442b3a9-ba8a-1539-8ff4-a0869f307a71","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/category"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:52:37 GMT","description":"The date and time that the message was sent"},{"name":"Transfer-Encoding","key":"Transfer-Encoding","value":"chunked","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[],"responseTime":"110","body":"[\n  {\n    \"category\": \"Logging\",\n    \"activities\": [\n      {\n        \"name\": \"Log\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Logging\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"level\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.423521247577674E9\"\n          },\n          {\n            \"name\": \"text\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9787830530086136E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Networking\",\n    \"activities\": [\n      {\n        \"name\": \"SocketClose\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Networking\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IP\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9166481366263568E9\"\n          },\n          {\n            \"name\": \"PORT\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"7.984293768134457E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"SocketSend\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Networking\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Subscribers\",\n            \"editor\": \"subscribers\",\n            \"type\": \"ArrayList\\u003cString\\u003e\",\n            \"activity\": null,\n            \"id\": \"1.4216018967755055E9\"\n          },\n          {\n            \"name\": \"Message\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.68959292422996E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"void\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"SocketSendKeepAlive\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Networking\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IP\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.2069003806458883E9\"\n          },\n          {\n            \"name\": \"PORT\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.2171454906071358E9\"\n          },\n          {\n            \"name\": \"Message\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.73667136616355E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Tag Data Translation\",\n    \"activities\": [\n      {\n        \"name\": \"BinToHex\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Bin\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4956618017538507E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCFromGRAI96UPC\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Filter\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"5.980327118326298E8\"\n          },\n          {\n            \"name\": \"CompanyPrefixLength\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"9.773580891702775E8\"\n          },\n          {\n            \"name\": \"UPC\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.044098474077736E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCFromLegacy\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Filter\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.08633679561474E9\"\n          },\n          {\n            \"name\": \"CompanyPrefixLength\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.0115532443950694E9\"\n          },\n          {\n            \"name\": \"Legacy\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.2116076024508665E9\"\n          },\n          {\n            \"name\": \"TagLength\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.6834459733748E7\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCFromLegacySGTIN\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Filter\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4325053086898303E9\"\n          },\n          {\n            \"name\": \"CompanyPrefixLength\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7694838695656458E8\"\n          },\n          {\n            \"name\": \"GTIN\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.2693566820316646E9\"\n          },\n          {\n            \"name\": \"Serial\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0318900622769349E9\"\n          },\n          {\n            \"name\": \"TagLength\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.913514529078967E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCFromSSCCBarcode\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"SSCCBarcode\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5424035208840027E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCLegacy\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"EPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.259395947385542E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCTagPureIdentityURI\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"EPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.730287086001608E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCTagURI\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"EPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9745605907835662E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetFieldsFromEPCTagURI\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"EPCPureIdentityTagURI\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5238635584432611E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cString\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"HextToBin\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Data Translation\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Hex\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.0859848124133433E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Global Settings\",\n    \"activities\": [\n      {\n        \"name\": \"GetGS\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Global Settings\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"name\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3724560516336493E7\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"SetGS\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Global Settings\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"name\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7488440341874275E9\"\n          },\n          {\n            \"name\": \"value\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.931592731210134E8\"\n          },\n          {\n            \"name\": \"type\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.57833410078127E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Boolean\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"UnsetGS\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Global Settings\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"names\",\n            \"editor\": \"Text\",\n            \"type\": \"ArrayList\\u003cString\\u003e\",\n            \"activity\": null,\n            \"id\": \"9.492788240047185E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Boolean\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Tag Reading\",\n    \"activities\": [\n      {\n        \"name\": \"CheckIfTagExists\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7086408565693762E9\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.6002138180983424E9\"\n          },\n          {\n            \"name\": \"Filter\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7067632548395061E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ConvertAlienToDBmRSSI\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"RSSI\",\n            \"editor\": \"Text\",\n            \"type\": \"double\",\n            \"activity\": null,\n            \"id\": \"1.3538123821012018E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Double\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ConvertDBmToAlienRSSI\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"RSSI\",\n            \"editor\": \"Text\",\n            \"type\": \"double\",\n            \"activity\": null,\n            \"id\": \"2.0997533722436368E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Double\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ConvertDBmToLinearRSSI\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"RSSI\",\n            \"editor\": \"Text\",\n            \"type\": \"double\",\n            \"activity\": null,\n            \"id\": \"4.22188726661015E8\"\n          },\n          {\n            \"name\": \"OFFSET\",\n            \"editor\": \"Text\",\n            \"type\": \"double\",\n            \"activity\": null,\n            \"id\": \"7.582076641300935E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Double\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ConvertLinearToDBmRSSI\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"RSSI\",\n            \"editor\": \"Text\",\n            \"type\": \"double\",\n            \"activity\": null,\n            \"id\": \"2.1222791085537994E9\"\n          },\n          {\n            \"name\": \"OFFSET\",\n            \"editor\": \"Text\",\n            \"type\": \"double\",\n            \"activity\": null,\n            \"id\": \"1.3178042528731818E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Double\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetEPCFromProperties\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Props\",\n            \"editor\": \"Text\",\n            \"type\": \"Object\",\n            \"activity\": null,\n            \"id\": \"2.2253642404609644E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadAndSendTDSALEReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5918140814574583E9\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"9.608956668051935E8\"\n          },\n          {\n            \"name\": \"Subscribers\",\n            \"editor\": \"Subscribers\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.767855508470584E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTags\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6807428637501976E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.899919011465135E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsAndSendALEReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.908926386433444E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"5.830099591032888E8\"\n          },\n          {\n            \"name\": \"Report\",\n            \"editor\": \"reports\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.1829448974941397E8\"\n          },\n          {\n            \"name\": \"Subscribers\",\n            \"editor\": \"subscribers\",\n            \"type\": \"ArrayList\\u003cString\\u003e\",\n            \"activity\": null,\n            \"id\": \"2.7799388834377486E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"void\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsAndSendEPCGlobalALEReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.165801067863865E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.8672988890556035E9\"\n          },\n          {\n            \"name\": \"Subscribers\",\n            \"editor\": \"Subscribers\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.410500561966089E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsAndSendEPCReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Subscribers\",\n            \"editor\": \"Subscribers\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.814225763453219E7\"\n          },\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.469596694878876E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.4629689862502537E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsAndSendSAPAIIReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"SAPAIIHost\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.024950932326915E8\"\n          },\n          {\n            \"name\": \"SAPAIIPort\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.8059047315558438E9\"\n          },\n          {\n            \"name\": \"SAPCommand\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.0350738342148603E9\"\n          },\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.1766531104693936E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"8.736165064226999E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsAndSendTDSFieldsAsText\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Subscribers\",\n            \"editor\": \"Subscribers\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.2480193983179116E9\"\n          },\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4645519990574596E9\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"4.0195067096164846E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsAndSendTextReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Subscribers\",\n            \"editor\": \"Subscribers\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.734947381659279E8\"\n          },\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.086701978875479E9\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"5.0309798689943594E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsAsJSON\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.610006116762179E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.2497708696388586E9\"\n          },\n          {\n            \"name\": \"EnableTDS\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.32158308821148E9\"\n          },\n          {\n            \"name\": \"Direction\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.691490743062676E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadTagsPersist\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9675363357823477E9\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"2.0281215791086822E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"StreamTags\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.346343380876935E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.8183295511029515E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"StreamTagsPersist\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Reading\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.2170731152229154E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"3.4769368570548075E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Tag Processing\",\n    \"activities\": [\n      {\n        \"name\": \"CheckIFFieldExists\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Processing\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"FieldName\",\n            \"editor\": \"Fields\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9295957393118842E9\"\n          },\n          {\n            \"name\": \"FieldValue\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6995440277474823E9\"\n          },\n          {\n            \"name\": \"Tags\",\n            \"editor\": \"Text\",\n            \"type\": \"ArrayList\\u003cProperties\\u003e\",\n            \"activity\": null,\n            \"id\": \"1.4926784975029984E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GenerateALEReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Processing\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.456491877921584E8\"\n          },\n          {\n            \"name\": \"Report\",\n            \"editor\": \"reports\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.851128931067523E8\"\n          },\n          {\n            \"name\": \"Tags\",\n            \"editor\": \"text\",\n            \"type\": \"ArrayList\\u003cProperties\\u003e\",\n            \"activity\": null,\n            \"id\": \"5.028621585191632E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GenerateDataField\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Processing\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"EPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.489950743308733E7\"\n          },\n          {\n            \"name\": \"FieldName\",\n            \"editor\": \"fields\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0992552089047022E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GenerateTDSALEReport\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Processing\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.125072817137904E9\"\n          },\n          {\n            \"name\": \"Tags\",\n            \"editor\": \"text\",\n            \"type\": \"ArrayList\\u003cProperties\\u003e\",\n            \"activity\": null,\n            \"id\": \"2.78535890662099E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"SetDataField\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Processing\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"EPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.642594308827555E9\"\n          },\n          {\n            \"name\": \"FieldName\",\n            \"editor\": \"fields\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.8859198582933754E7\"\n          },\n          {\n            \"name\": \"FieldValue\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6464352142131987E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"GPIO\",\n    \"activities\": [\n      {\n        \"name\": \"CheckIOContinuousState\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"GPIO\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"ExternalDeviceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.292722286219884E8\"\n          },\n          {\n            \"name\": \"State\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.1965728084366724E8\"\n          },\n          {\n            \"name\": \"Duration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.353664838370386E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetIOState\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"GPIO\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"ExternalDeviceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5278066656861124E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Properties\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"InvokeExternalDeviceAction\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"GPIO\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"DeviceName\",\n            \"editor\": \"iodevice\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1234\"\n          },\n          {\n            \"name\": \"DeviceAction\",\n            \"editor\": \"ioaction\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1234\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"DateTime\",\n    \"activities\": [\n      {\n        \"name\": \"GetCurrentDateAsString\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"DateTime\",\n        \"visible\": true,\n        \"list\": [],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Thread\",\n    \"activities\": [\n      {\n        \"name\": \"Sleep\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Thread\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Milliseconds\",\n            \"editor\": \"text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.1176247794341044E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"void\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Proxy\",\n    \"activities\": [\n      {\n        \"name\": \"GetReadersEventsAsString\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Proxy\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"empty\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9655714521613615E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Metatech\",\n    \"activities\": [\n      {\n        \"name\": \"AM_AggregateTags\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Tags\",\n            \"editor\": \"Text\",\n            \"type\": \"ArrayList\\u003cProperties\\u003e\",\n            \"activity\": null,\n            \"id\": \"6.934214371165425E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_GetRefAndNum\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"EPC\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5845077788866768E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_HTTPPostWithDetails\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"URI\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0431505653944685E9\"\n          },\n          {\n            \"name\": \"Data\",\n            \"editor\": \"Text\",\n            \"type\": \"Object\",\n            \"activity\": null,\n            \"id\": \"1.2828649784126508E9\"\n          },\n          {\n            \"name\": \"Headers\",\n            \"editor\": \"Text\",\n            \"type\": \"Properties\",\n            \"activity\": null,\n            \"id\": \"1.086252002465373E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_InitDB\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"localDsHost\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.203403187142988E9\"\n          },\n          {\n            \"name\": \"localDsPort\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.8285025870503795E8\"\n          },\n          {\n            \"name\": \"localDsName\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.2647880478272572E8\"\n          },\n          {\n            \"name\": \"localDsUsername\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.011901027759699E8\"\n          },\n          {\n            \"name\": \"localDsPassword\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.1554546847687895E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_InitTables\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"localDsHost\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.45033959853053E8\"\n          },\n          {\n            \"name\": \"localDsPort\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.6576877708674796E7\"\n          },\n          {\n            \"name\": \"localDsUsername\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.7126650887482274E8\"\n          },\n          {\n            \"name\": \"localDsPassword\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.9141771843743104E8\"\n          },\n          {\n            \"name\": \"localDsName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.738984663282197E8\"\n          },\n          {\n            \"name\": \"debug\",\n            \"editor\": \"Text\",\n            \"type\": \"Boolean\",\n            \"activity\": null,\n            \"id\": \"4.6296879524734594E7\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_InitTables_bk\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"localDsHost\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.40222045558295E8\"\n          },\n          {\n            \"name\": \"localDsPort\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.381476291547527E8\"\n          },\n          {\n            \"name\": \"localDsUsername\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.554485170130856E9\"\n          },\n          {\n            \"name\": \"localDsPassword\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.001968884300845E9\"\n          },\n          {\n            \"name\": \"localDsName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.763045124322813E8\"\n          },\n          {\n            \"name\": \"debug\",\n            \"editor\": \"Text\",\n            \"type\": \"Boolean\",\n            \"activity\": null,\n            \"id\": \"2.0613438222696497E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_Read\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.649247043147842E9\"\n          },\n          {\n            \"name\": \"PauseDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.4396097247815118E9\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"7.954385881920388E8\"\n          },\n          {\n            \"name\": \"Operation\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.6052481154163086E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_SaveLocal\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"tags\",\n            \"editor\": \"Text\",\n            \"type\": \"ArrayList\\u003cProperties\\u003e\",\n            \"activity\": null,\n            \"id\": \"8.342141871944455E8\"\n          },\n          {\n            \"name\": \"operation\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.1358916891795337E9\"\n          },\n          {\n            \"name\": \"isbutton\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"3.298440799754713E8\"\n          },\n          {\n            \"name\": \"location\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.327417462071001E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_SaveLocal_bk\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"tags\",\n            \"editor\": \"Text\",\n            \"type\": \"ArrayList\\u003cProperties\\u003e\",\n            \"activity\": null,\n            \"id\": \"1.8347403549740667E9\"\n          },\n          {\n            \"name\": \"operation\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.8696051572534245E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"AM_Sync\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Metatech\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"cloudPort\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.474602290618783E8\"\n          },\n          {\n            \"name\": \"cloudHost\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.477522335565605E8\"\n          },\n          {\n            \"name\": \"cloudUsername\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7437065285434268E9\"\n          },\n          {\n            \"name\": \"cloudPassword\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.294654893059775E8\"\n          },\n          {\n            \"name\": \"localDsHost\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.2695650446178237E8\"\n          },\n          {\n            \"name\": \"localDsPort\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9346874755938678E9\"\n          },\n          {\n            \"name\": \"localDsUsername\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.435398660082818E8\"\n          },\n          {\n            \"name\": \"localDsPassword\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.1065121971766431E9\"\n          },\n          {\n            \"name\": \"localDsName\",\n            \"editor\": \"GlobalSettings\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4658982271333048E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Global Variable\",\n    \"activities\": [\n      {\n        \"name\": \"GetGlobalVariable\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Global Variable\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"VariableName\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6907213141513793E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetGlobalVariableAsString\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Global Variable\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"VariableName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.1832882767641783E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"SetGlobalVariable\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Global Variable\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"VariableName\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.985107144748385E8\"\n          },\n          {\n            \"name\": \"Value\",\n            \"editor\": \"text\",\n            \"type\": \"Object\",\n            \"activity\": null,\n            \"id\": \"1.1538013288509617E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"UnsetGlobalVariable\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Global Variable\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"VariableName\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6145887092719994E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"void\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"XML\",\n    \"activities\": [\n      {\n        \"name\": \"LoadXMLFromString\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"XML\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"xml\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.8124301323267488E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"org.w3c.dom.Document\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Tag Programming\",\n    \"activities\": [\n      {\n        \"name\": \"ProgramEPC\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Programming\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"AccessPassword\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.839797356449375E8\"\n          },\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7605852802805066E9\"\n          },\n          {\n            \"name\": \"OldEPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.053641286574152E8\"\n          },\n          {\n            \"name\": \"NewEPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3770512289955637E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ProgramEPCDataFields\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Tag Programming\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"AccessPassword\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.169695480743465E8\"\n          },\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3875577995781991E9\"\n          },\n          {\n            \"name\": \"OldEPC\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.282500855667399E8\"\n          },\n          {\n            \"name\": \"DataFieldNames\",\n            \"editor\": \"text\",\n            \"type\": \"List\\u003cString\\u003e\",\n            \"activity\": null,\n            \"id\": \"1.0345980494492315E9\"\n          },\n          {\n            \"name\": \"DataFieldValues\",\n            \"editor\": \"text\",\n            \"type\": \"List\\u003cString\\u003e\",\n            \"activity\": null,\n            \"id\": \"9.186737519449111E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Database\",\n    \"activities\": [\n      {\n        \"name\": \"DatabaseConnection\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Vendor\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.785260640733305E8\"\n          },\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6418161314548216E9\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.116170746689416E7\"\n          },\n          {\n            \"name\": \"InstanceName\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.8501761608896017E9\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5913790857504362E8\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.8714168417477724E8\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.60461187200805E8\"\n          },\n          {\n            \"name\": \"QueryType\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.608571110972005E8\"\n          },\n          {\n            \"name\": \"Query\",\n            \"editor\": null,\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.85331260991383E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MSSQLExecuteCommand\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7353833850561597E9\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.1630764322407454E8\"\n          },\n          {\n            \"name\": \"InstanceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.142382262711694E9\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0884974515487108E8\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0103345203804371E9\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0204078495016024E9\"\n          },\n          {\n            \"name\": \"SQLStatement\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.813409621106756E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MSSQLExecuteReader\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6218775739116392E9\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.2056602140579314E9\"\n          },\n          {\n            \"name\": \"InstanceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.490533687029522E9\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.3975020136137843E8\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.391579167920294E8\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.8563569849042792E9\"\n          },\n          {\n            \"name\": \"SQLStatement\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.490132104573959E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MSSQLInsertGRAITags\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.8855340881506195E9\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"1.6935811653266912E9\"\n          },\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.2887629471451297E9\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.062818720154131E8\"\n          },\n          {\n            \"name\": \"InstanceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3673602614305673E7\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.3712314145030543E8\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0953159505954424E8\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.1758819071962242E9\"\n          },\n          {\n            \"name\": \"TableName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.08498506538529E8\"\n          },\n          {\n            \"name\": \"LogicalDeviceFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.2862908069864376E9\"\n          },\n          {\n            \"name\": \"EPCFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.1149596864643276E8\"\n          },\n          {\n            \"name\": \"DateFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.6255503442046694E7\"\n          },\n          {\n            \"name\": \"CompanyPrefixFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.461664383676818E8\"\n          },\n          {\n            \"name\": \"AssetTypeFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.874803019222672E8\"\n          },\n          {\n            \"name\": \"SerialNumberFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.894653089719603E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MSSQLInsertTags\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.1932404124712175E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"9.594257839748057E8\"\n          },\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.933383896776409E8\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.019322433735839E8\"\n          },\n          {\n            \"name\": \"InstanceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5044765502598116E8\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.86464535903806E8\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3153182800989196E9\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5545778969386837E9\"\n          },\n          {\n            \"name\": \"TableName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.338965548529901E8\"\n          },\n          {\n            \"name\": \"LogicalDeviceFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.1341643658764951E9\"\n          },\n          {\n            \"name\": \"EPCFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.063538256580839E8\"\n          },\n          {\n            \"name\": \"DateFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.233650564257642E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MYSQLExecuteCommand\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.052910264928635E9\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.0891330107439786E7\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.89610568087573E8\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.1366523545461855E9\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.898988383780274E8\"\n          },\n          {\n            \"name\": \"SQLStatement\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.470236838719573E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MYSQLExecuteReader\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.264048404313196E8\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.0855421872744014E9\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.8493414677370894E9\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.0245849130354697E8\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4827951012424529E9\"\n          },\n          {\n            \"name\": \"SQLStatement\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.393054638604669E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MYSQLInsertTags\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDevice\",\n            \"editor\": \"LogicalDevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.655220272318921E8\"\n          },\n          {\n            \"name\": \"ReadDuration\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"2.0259331564137921E9\"\n          },\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"3.7174338140813917E8\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"6.325656759221973E8\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.018555712706613E9\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3417603375442495E9\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.241511830832026E9\"\n          },\n          {\n            \"name\": \"TableName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.1494216790670764E8\"\n          },\n          {\n            \"name\": \"LogicalDeviceFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.923332258055853E8\"\n          },\n          {\n            \"name\": \"EPCFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6201516158767498E9\"\n          },\n          {\n            \"name\": \"DateFieldName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3861345595476046E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"OracleExecuteCommand\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.510041926363723E8\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.019061674764903E9\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0178072568450031E9\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0170766658430498E9\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3400387903100986E9\"\n          },\n          {\n            \"name\": \"SQLStatement\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9551895769190533E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"OracleExecuteReader\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Database\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"IPAddress\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.664670053071716E8\"\n          },\n          {\n            \"name\": \"Port\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0111827393277333E9\"\n          },\n          {\n            \"name\": \"DatabaseName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5496387737561312E9\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4121692327780466E9\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.4512068786999145E8\"\n          },\n          {\n            \"name\": \"SQLStatement\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.512145444421335E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"File\",\n    \"activities\": [\n      {\n        \"name\": \"FTPSave\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"File\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"FTPServerIP\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.7171587207402656E9\"\n          },\n          {\n            \"name\": \"Username\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9451475924827023E9\"\n          },\n          {\n            \"name\": \"Password\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9728183091091683E9\"\n          },\n          {\n            \"name\": \"FileName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4683672055804555E9\"\n          },\n          {\n            \"name\": \"Content\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.570397912711271E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Object\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"ReadFromLocalFile\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"File\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"FileName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.3022558129345995E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"SaveToLocalFile\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"File\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"FileName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.623046714664151E9\"\n          },\n          {\n            \"name\": \"Data\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9351287787279308E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Boolean\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Core\",\n    \"activities\": [\n      {\n        \"name\": \"ExecDeviceCommand\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"BaseLogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.667899419981122E8\"\n          },\n          {\n            \"name\": \"Command\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.003873429620957E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetDeviceProps\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"BaseLogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3790909036456776E9\"\n          },\n          {\n            \"name\": \"PropertyName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.340186830353554E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetExternalDeviceInputValue\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"ExternalDeviceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"7.091080448703869E7\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetExternalDeviceOuputValue\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"ExternalDeviceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4169608315340235E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetLogicalDeviceNames\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Filter\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"9.256809844498106E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cString\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetParentLogicalDeviceNames\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"LogicalDeviceName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"5.72348028070261E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cString\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetReaders\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"empty\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5765689555472395E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetReadersEvents\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"empty\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.689165674160768E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"ArrayList\\u003cProperties\\u003e\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"GetWorkflowStatus\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"WorkflowName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.581182735897626E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"InvokeWorkflow\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"WorkflowName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.3010956558220619E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"MonitorTwoInput\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"FirstInput\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.3944112170741928E8\"\n          },\n          {\n            \"name\": \"SecondInput\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.596722129286178E9\"\n          },\n          {\n            \"name\": \"MonitorValue\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.0950800400878742E9\"\n          },\n          {\n            \"name\": \"Time\",\n            \"editor\": \"Text\",\n            \"type\": \"Integer\",\n            \"activity\": null,\n            \"id\": \"7.229946562918172E8\"\n          },\n          {\n            \"name\": \"WorkflowName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6605190300375097E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"Integer\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"SetDeviceProps\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"BaseLogicalDevice\",\n            \"editor\": \"logicaldevices\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.5702630246773135E7\"\n          },\n          {\n            \"name\": \"PropertyName\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.4685978105810401E9\"\n          },\n          {\n            \"name\": \"PropertyValue\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.6210800400721915E7\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"StopWorkflow\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Core\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"WorkflowName\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.6869128671499224E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  },\n  {\n    \"category\": \"Communication\",\n    \"activities\": [\n      {\n        \"name\": \"HttpAuthRequest\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Communication\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"Host\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.2220524854721817E8\"\n          },\n          {\n            \"name\": \"Cmd\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"4.064938758907172E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"HTTPPost\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Communication\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"URI\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.674580614772257E9\"\n          },\n          {\n            \"name\": \"Data\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.9421294529548385E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"HTTPPostWithHeaders\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Communication\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"URI\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"1.5137809928048842E9\"\n          },\n          {\n            \"name\": \"Data\",\n            \"editor\": \"Text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"8.78132137219183E8\"\n          },\n          {\n            \"name\": \"Headers\",\n            \"editor\": \"Text\",\n            \"type\": \"Properties\",\n            \"activity\": null,\n            \"id\": \"1.5182074678049078E9\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      },\n      {\n        \"name\": \"HTTPRequest\",\n        \"editable\": true,\n        \"displayName\": null,\n        \"category\": \"Communication\",\n        \"visible\": true,\n        \"list\": [\n          {\n            \"name\": \"URI\",\n            \"editor\": \"text\",\n            \"type\": \"String\",\n            \"activity\": null,\n            \"id\": \"2.06169549424449E8\"\n          }\n        ],\n        \"description\": \"description\",\n        \"returnType\": \"String\",\n        \"code\": \"\"\n      }\n    ]\n  }\n]"}],"_postman_id":"469f34f0-3278-c51f-79b9-e46c966ee7bb"},{"name":"List activities for category","id":"2f728764-f797-5a8e-3dc7-ec5d91544ef5","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/category/{categoryName}","description":"<p>Lists all activities linked to a specific category.</p>\n<p><b>Replace the path parameter placeholder {categoryName} by the actual category.</b></p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/category/Networking?fields=name\n<i>This retrieves only the activities name.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","category","{categoryName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"291ad063-7105-1404-9278-0afca6430826","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":{"raw":"http://{{host}}:{{port}}/ALE/api/category/Networking?fields=name","protocol":"http","host":["{{host}}"],"port":"{{port}}","path":["ALE","api","category","Networking"],"query":[{"key":"fields","value":"name"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"77","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:52:56 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"73","body":"[{\"name\":\"SocketClose\"},{\"name\":\"SocketSend\"},{\"name\":\"SocketSendKeepAlive\"}]"}],"_postman_id":"2f728764-f797-5a8e-3dc7-ec5d91544ef5"}],"id":"5324da36-a6b9-a764-4039-085ec88b6759","description":"<p>Contains all API references regarding categories associated with activities.</p>\n","_postman_id":"5324da36-a6b9-a764-4039-085ec88b6759"},{"name":"Data Fields","item":[{"name":"List data fields","id":"a9c005c8-78ac-0f20-b72e-d8ce6098b101","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field","description":"<p>List all data fields.\nThis path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/template/field?fields=name \n<i>This retrieves only the data fields names.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","template","field"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"08c42158-ee07-432f-6bb6-b22b74ab630b","name":"List data fields example","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"227","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 02:18:19 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"38","body":"[\n  {\n    \"name\": \"DF\",\n    \"type\": \"ASCII\",\n    \"offset\": 0,\n    \"length\": 8,\n    \"format\": null,\n    \"bindings\": [\n      {\n        \"operand\": \"00110001\",\n        \"condition\": \"\\u003d\",\n        \"value\": \"2\"\n      }\n    ]\n  }\n]"},{"id":"f912ea67-0341-fb1b-a77c-2ff2466bff26","name":"filter-data-fields-example","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":{"raw":"http://{{host}}:{{port}}/ALE/api/template/field?fields=name","protocol":"http","host":["{{host}}"],"port":"{{port}}","path":["ALE","api","template","field"],"query":[{"key":"fields","value":"name"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Connection","key":"Connection","value":"close","description":"Options that are desired for the connection"},{"name":"Content-Length","key":"Content-Length","value":"15","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 03:09:21 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"31","body":"[{\"name\":\"DF\"}]"}],"_postman_id":"a9c005c8-78ac-0f20-b72e-d8ce6098b101"},{"name":"Get data field","id":"ad163678-6f55-519a-063c-e33dd0a03002","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field/{dataFieldName}","description":"<p>Fetch a data field by name.</p>\n<p><b>Replace the path parameter placeholder {dataFieldName} by the data field name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","template","field","{dataFieldName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"f94e36a1-8867-22b7-350c-bcdfc9173b5a","name":"get-data-field-example","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field/DF"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"195","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 02:35:27 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"30","body":"{\n  \"name\": \"DF\",\n  \"type\": \"ASCII\",\n  \"offset\": 0,\n  \"length\": 8,\n  \"format\": null,\n  \"bindings\": [\n    {\n      \"operand\": \"00110001\",\n      \"condition\": \"\\u003d\",\n      \"value\": \"3\"\n    }\n  ]\n}"}],"_postman_id":"ad163678-6f55-519a-063c-e33dd0a03002"},{"name":"Create data field","id":"077e2cb5-7f8b-3a52-06a6-8c331959b269","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"DF\",\n  \"type\": \"ASCII\",\n  \"offset\": 0,\n  \"length\": 8,\n  \"bindings\": [\n    {\n      \"operand\": \"00110001\",\n      \"condition\": \"=\",\n      \"value\": \"3\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/template/field","description":"<p>Create/Update a data field.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","template","field"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"ae864150-33c3-a269-1b15-29bfcdff10f1","name":"create-data-field-example","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"DF\",\n  \"type\": \"ASCII\",\n  \"offset\": 0,\n  \"length\": 8,\n  \"bindings\": [\n    {\n      \"operand\": \"00110001\",\n      \"condition\": \"=\",\n      \"value\": \"3\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/template/field"},"status":"Created","code":201,"_postman_previewlanguage":"plainText","header":[{"name":"Content-Length","key":"Content-Length","value":"0","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 02:31:13 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"38","body":""}],"_postman_id":"077e2cb5-7f8b-3a52-06a6-8c331959b269"},{"name":"Delete data field","id":"fe97f7c8-38fd-6535-da1d-23d6eaaeb29b","request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field/{dataFieldName}","description":"<p>Delete a data field.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","template","field","{dataFieldName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"a737cf3a-7875-192a-f1a6-96e3c4891fbd","name":"delete-datafield-example","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field/DF"},"status":"No Content","code":204,"_postman_previewlanguage":"plainText","header":[{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 02:33:13 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"34","body":""}],"_postman_id":"fe97f7c8-38fd-6535-da1d-23d6eaaeb29b"},{"name":"Get data field bindings","id":"c59d166a-10c4-e988-114a-217006c22510","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field/{dataFieldName}/bindings","description":"<p>Get the data field bindings.</p>\n<p>The binding are all values related to an \"Is Equal To\" condition.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","template","field","{dataFieldName}","bindings"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"04b2f7e1-9850-13bd-a5d0-4cbce973c9bd","name":"get-data-field-bindings-example","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/template/field/DF/bindings"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"9","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Thu, 22 Jun 2017 02:36:34 GMT","description":"The date and time that the message was sent"},{"name":"Server","key":"Server","value":"Apache-Coyote/1.1","description":"A name for the server"}],"cookie":[],"responseTime":"62","body":"[\n  \"3\"\n]"}],"_postman_id":"c59d166a-10c4-e988-114a-217006c22510"},{"name":"Delete data fields","id":"248b5125-a4f6-4af6-a880-5f5c24065ccb","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[  \n  \"{dataFieldName1}\",\n  \"{dataFieldName2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/template/field/delete","description":"<p>Delete a bundle of data fields by name.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","template","field","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"248b5125-a4f6-4af6-a880-5f5c24065ccb"},{"name":"Bulk delete data fields","id":"652c326d-eaaa-4623-8734-454058008879","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"datafields\":[\n    {\n      \"name\":\"{dataFieldName1}\"\n    },\n    {\n      \"name\":\"{dataFieldName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/template/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","template","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"652c326d-eaaa-4623-8734-454058008879"}],"id":"c27e59a3-5d2f-7ee8-32a8-3754c998b886","_postman_id":"c27e59a3-5d2f-7ee8-32a8-3754c998b886","description":""},{"name":"Device Type","item":[{"name":"Define type","id":"07803ad8-5e5b-5e02-b524-c7858196be13","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"TypeTest\",\n  \"type\": \"output\",\n  \"pins\": [\n    {\n      \"reserved\": false,\n      \"number\": 1,\n      \"value\": 0\n    }\n  ],\n  \"actions\": [\n    {\n      \"name\": \"Some description\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"number\": 1,\n          \"value\": 1\n        }\n      ]\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/device-type/","description":"<p>Define an external device type</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device-type",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"07803ad8-5e5b-5e02-b524-c7858196be13"},{"name":"Delete a type","id":"f8ba9561-e601-c019-e89a-010b3c83729d","request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device-type/{deviceTypeName}","description":"<p>Delete a device type by name.</p>\n<p><b>Replace the path parameter placeholder {deviceTypeName} by the actual device type name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device-type","{deviceTypeName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"f8ba9561-e601-c019-e89a-010b3c83729d"},{"name":"Delete types","id":"e7da1f58-04a9-fa73-77a3-f7f542173145","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{DeviceTypeName1}\",\n  \"{DeviceTypeName2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/device-type/delete","description":"<p>Delete multiple device types.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device-type","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"e7da1f58-04a9-fa73-77a3-f7f542173145"},{"name":"List types","id":"79236fc7-bc06-bca1-ecd2-338374c293ae","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device-type","description":"<p>List all device types.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/device-type?fields=name\n<i>This retrieves only the device type names.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device-type"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"7e3a259f-90a6-9b9d-2dc2-0c772f8d3299","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device-type"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:53:16 GMT","description":"The date and time that the message was sent"},{"name":"Transfer-Encoding","key":"Transfer-Encoding","value":"chunked","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[],"responseTime":"76","body":"[\n  {\n    \"name\": \"3-Way Stack Light\",\n    \"type\": \"output\",\n    \"pins\": [\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 2,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"Green\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Red\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Amber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"GreenRed\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"AmberRed\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"GreenAmber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOn\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOff\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"name\": \"4-Way Stack Light\",\n    \"type\": \"output\",\n    \"pins\": [\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 2,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 4,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"Green\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Amber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Red\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Buzzer\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOn\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOff\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"GreenAmber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"AmberRed\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"RedBuzz\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 4,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"name\": \"Laser-Sensor\",\n    \"type\": \"input\",\n    \"pins\": [\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"On\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Off\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"name\": \"Light Indicator\",\n    \"type\": \"output\",\n    \"pins\": [\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"On\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Off\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"name\": \"Presence Sensor\",\n    \"type\": \"input\",\n    \"pins\": [\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"On\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Off\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      }\n    ]\n  }\n]"}],"_postman_id":"79236fc7-bc06-bca1-ecd2-338374c293ae"},{"name":"Get type","id":"20c039d3-2fb4-c34b-2e03-3a923b166410","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device-type/{deviceTypeName}","description":"<p>Get the device type associated with the given name.</p>\n<p><b>Replace the path parameter placeholder {deviceTypeName} by the actual device type name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device-type","{deviceTypeName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"58aa0b35-87b1-150f-30bc-568bef85c4a6","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device-type/3-Way Stack Light"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"6201","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:53:38 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"69","body":"{\n  \"name\": \"3-Way Stack Light\",\n  \"type\": \"output\",\n  \"pins\": [\n    {\n      \"reserved\": false,\n      \"type\": \"input\",\n      \"number\": 1,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"input\",\n      \"number\": 2,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"input\",\n      \"number\": 3,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    }\n  ],\n  \"actions\": [\n    {\n      \"name\": \"Green\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    },\n    {\n      \"name\": \"Red\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    },\n    {\n      \"name\": \"Amber\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    },\n    {\n      \"name\": \"GreenRed\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    },\n    {\n      \"name\": \"AmberRed\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    },\n    {\n      \"name\": \"GreenAmber\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    },\n    {\n      \"name\": \"AllOn\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 1,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    },\n    {\n      \"name\": \"AllOff\",\n      \"pins\": [\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        },\n        {\n          \"reserved\": false,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 0,\n            \"type\": \"input\"\n          }\n        }\n      ]\n    }\n  ]\n}"}],"_postman_id":"20c039d3-2fb4-c34b-2e03-3a923b166410"},{"name":"Bulk delete types","id":"1ce6123b-a5bb-451c-be97-cec388097b27","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"externaldevicetypes\":[\n    {\n      \"name\":\"{externalDeviceType_1}\"\n    },\n    {\n      \"name\":\"{externalDeviceType_2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/device-type/bulk/delete","description":"<p>Bulk delete external device types.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device-type","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"1ce6123b-a5bb-451c-be97-cec388097b27"}],"id":"714ce85d-39a7-ac50-47f7-9d38c7242ed1","description":"<p>Contains all API references regarding external device types.</p>\n","_postman_id":"714ce85d-39a7-ac50-47f7-9d38c7242ed1"},{"name":"Export","item":[{"name":"Export readers","id":"51a4a452-ec5e-4af8-860d-b2fd4d61a00d","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"readers\":[\n    {\n      \"uid\":\"{uid}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/reader","description":"<p>Export selected readers to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","reader"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"c6858297-7510-42cb-b7cc-3d25e2277181","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"readers\":[\n\t\t{\n\t\t\t\"uid\":\"001B5F00C4D1\"\n\t\t},\n\t\t{\n\t\t\t\"uid\":\"001B5F00BDBF\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/reader"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"readers.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"350","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Fri, 18 Jan 2019 16:27:05 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Mac Address\",\"IP Address\",\"Port\",\"Secure\",\"Driver\",\"Model\",\"Username\",\"Password\",\"Antenna\",\"Input\",\"Output\",\"Status\"\n\"001B5F00C4D1\",\"10.0.0.100\",\"0\",\"false\",\"arp\",\"ALR-9900+EMA\",\"alien\",\"password\",\"0,1,2,3\",\"1,2,3,4\",\"1,2,3,4,5,6,7,8\",\"Up\"\n\"001B5F00BDBF\",\"10.0.0.182\",\"0\",\"false\",\"arp\",\"ALR-9680-EMA\",\"alien\",\"password\",\"0,1,2,3\",\"1,2\",\"1,2\",\"Down\"\n"}],"_postman_id":"51a4a452-ec5e-4af8-860d-b2fd4d61a00d"},{"name":"Export logical devices","id":"30954690-dcc3-4f49-93ee-ccba103c3eb0","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"logicaldevices\": [\n    {\n      \"name\":\"{logicalDeviceName}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/logical-device","description":"<p>Export selected logical devices to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","logical-device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"27c636f4-38ca-4197-855c-9478f659489f","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"logicaldevices\": [\n\t\t{\n\t\t\t\"name\":\"Packing_Station_01\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Generate\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/logical-device"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"logical_devices.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"549","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Fri, 18 Jan 2019 16:31:46 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Composite\",\"Logical Device\",\"Logical Device Antenna\",\"Reader Mac Address\",\"Reader Driver\",\"Reader Model\",\"Reader IP\",\"Reader Port\",\"Reader Secure\",\"Reader Username\",\"Reader Password\",\"Reader Antenna\",\"Reader Input\",\"Reader Output\"\n\"Generate\",\"false\",\"\",\"0,1,2,3\",\"001B5F00C4D1\",\"arp\",\"ALR-9900+EMA\",\"10.0.0.100\",\"0\",\"false\",\"alien\",\"password\",\"0,1,2,3\",\"1,2,3,4\",\"1,2,3,4,5,6,7,8\"\n\"Packing_Station_01\",\"false\",\"\",\"0,1,2,3\",\"001B5F00C4D1\",\"arp\",\"ALR-9900+EMA\",\"10.0.0.100\",\"0\",\"false\",\"alien\",\"password\",\"0,1,2,3\",\"1,2,3,4\",\"1,2,3,4,5,6,7,8\"\n"}],"_postman_id":"30954690-dcc3-4f49-93ee-ccba103c3eb0"},{"name":"Export external devices","id":"33ee1b74-ff84-49d6-a43e-86f841c9187a","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"externaldevices\": [\n    {\n      \"name\":\"{externalDeviceName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/device","description":"<p>Export selected external devices to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"cc6dff57-715b-4857-b23b-e1e1e8f097c9","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"externaldevices\": [\n\t\t{\n\t\t\t\"name\":\"DEMO_SENSOR\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"DOCKDOOR_20\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/device"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"external_devices.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"1875","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:25:25 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Reader Mac Address\",\"Pin Port\",\"Type\",\"Type Name\",\"Type Action\",\"Reader Driver\",\"Reader Model\",\"Reader IP\",\"Reader Port\",\"Reader Secure\",\"Reader Username\",\"Reader Password\",\"Reader Antenna\",\"Reader Input\",\"Reader Output\"\n\"DEMO_SENSOR\",\"001B5F00BDBF\",\"{\"\"pin_port\"\":[{\"\"pin\"\":1,\"\"port\"\":1}]}\",\"input\",\"Presence Sensor\",\"{\"\"actions\"\":[{\"\"action\"\":\"\"On\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"Off\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"}]}]}\",\"arp\",\"ALR-9680-EMA\",\"10.0.0.182\",\"0\",\"false\",\"alien\",\"password\",\"0,1,2,3\",\"1,2\",\"1,2\"\n\"DOCKDOOR_20\",\"001B5F00C4D1\",\"{\"\"pin_port\"\":[{\"\"pin\"\":1,\"\"port\"\":1},{\"\"pin\"\":2,\"\"port\"\":2},{\"\"pin\"\":3,\"\"port\"\":3}]}\",\"output\",\"3-Way Stack Light\",\"{\"\"actions\"\":[{\"\"action\"\":\"\"Red\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]},{\"\"action\"\":\"\"Green\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]},{\"\"action\"\":\"\"Amber\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"GreenRed\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]},{\"\"action\"\":\"\"AmberRed\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"GreenAmber\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"AllOn\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"AllOff\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]}]}\",\"arp\",\"ALR-9900+EMA\",\"10.0.0.100\",\"0\",\"false\",\"alien\",\"password\",\"0,1,2,3\",\"1,2,3,4\",\"1,2,3,4,5,6,7,8\"\n"}],"_postman_id":"33ee1b74-ff84-49d6-a43e-86f841c9187a"},{"name":"Export external device types","id":"929ad240-88d6-416e-a64c-ab5efc516f4d","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"externaldevicetypes\":[\n    {\n      \"name\":\"{externalDeviceTypeName}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/device-type","description":"<p>Export selected external device types to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","device-type"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"0659aefc-a979-4d84-b806-632b84404db0","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"externaldevicetypes\":[\n\t\t{\n\t\t\t\"name\":\"Presence Sensor\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"3-Way Stack Light\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Light Indicator\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/device-type"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"external_device_types.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"1463","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:27:54 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Type\",\"Action\"\n\"3-Way Stack Light\",\"output\",\"{\"\"actions\"\":[{\"\"action\"\":\"\"Red\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]},{\"\"action\"\":\"\"Green\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]},{\"\"action\"\":\"\"Amber\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"GreenRed\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]},{\"\"action\"\":\"\"AmberRed\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"GreenAmber\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"AllOn\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"1\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"AllOff\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"2\"\",\"\"value\"\":\"\"0\"\"},{\"\"pin\"\":\"\"3\"\",\"\"value\"\":\"\"0\"\"}]}]}\"\n\"Light Indicator\",\"output\",\"{\"\"actions\"\":[{\"\"action\"\":\"\"On\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"Off\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"}]}]}\"\n\"Presence Sensor\",\"input\",\"{\"\"actions\"\":[{\"\"action\"\":\"\"On\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"1\"\"}]},{\"\"action\"\":\"\"Off\"\",\"\"pins\"\":[{\"\"pin\"\":\"\"1\"\",\"\"value\"\":\"\"0\"\"}]}]}\"\n"}],"_postman_id":"929ad240-88d6-416e-a64c-ab5efc516f4d"},{"name":"Export subscribers","id":"f9827216-da69-498b-8e0a-42c0ac35837d","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"subscribers\":[\n    {\n      \"description\":\"{description}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/subscription","description":"<p>Export selected subscribers to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","subscription"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"c0baf643-2acd-41f4-a1b1-6dd5c820137f","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"subscribers\":[\n\t\t{\n\t\t\t\"description\":\"pubsub\"\n\t\t},\n\t\t{\n\t\t\t\"description\":\"tagstream\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/subscription"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"subscribers.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"109","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:28:59 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Address\",\"Port\",\"Protocol\"\n\"pubsub\",\"127.0.0.1\",\"10472\",\"tcp\"\n\"tagstream\",\"10.0.0.108\",\"12352\",\"tcp\"\n"}],"_postman_id":"f9827216-da69-498b-8e0a-42c0ac35837d"},{"name":"Export activities","id":"5b0b79c4-3ce5-43a5-a9c3-b1f3b7ba2658","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"activities\":[\n    {\n    \"name\":\"{activityName}\"  \n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/activity","description":"<p>Export selected activities to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","activity"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"d2014b24-f932-452a-8e15-84fe3cc298ee","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"activities\":[\n\t\t{\n\t\t\"name\":\"A01_ReadTags\"\t\n\t\t},\n\t\t{\n\t\t\t\"name\":\"A09_SequentialReadAndPublish\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"B01_DecodeDataField\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"C01_InvokeExternalDeviceAction\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Z31_Log\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/activity"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"activities.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"7212","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:37:59 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Category\",\"Description\",\"Return Type\",\"Code\"\n\"A01_ReadTags\",\"A-Tag Reading\",\"ReadTags activity reads tags for a duration and returns an ArrayList of tags. The result contains one record per epc with the \"\"count\"\" field denoting the number of reads and the \"\"time\"\" field denoting the first read time.\",\"ArrayList<Properties>\",\"{{NEWLINE}}@envoy.declare{name:LogicalDevice,type:String,editor:logicaldevices};{{NEWLINE}}@envoy.declare{name:ReadDuration,type:Integer,editor:text};{{NEWLINE}}Object container=null;{{NEWLINE}}{{{NEWLINE}}Method m=proxy.getClass().getMethod(\"\"getGlobalReference\"\",new Class[]{String.class});{{NEWLINE}}container=m.invoke(proxy,new Object[]{\"\"tag-reader\"\"});{{NEWLINE}}}{{NEWLINE}}{{NEWLINE}}{{NEWLINE}}List<Properties> tags=null;{{NEWLINE}}{{{NEWLINE}}Method m=container.getClass().getMethod(\"\"collectTags\"\",new Class[]{String.class,String.class,Integer.class});{{NEWLINE}}tags=(List<Properties>)m.invoke(container,new Object[]{user,LogicalDevice,ReadDuration});{{NEWLINE}}}{{NEWLINE}}return tags;{{NEWLINE}}{{NEWLINE}}\"\n\"A09_SequentialReadAndPublish\",\"A-Tag Reading\",\"SequentialReadAndPublish activity reads tags from multiple logical devices sequentially. In a way it works like consecutive A06_ReadAndPublish activities but each with a different logical device.\",\"ArrayList<Properties>\",\"@envoy.declare{name:\"\"LogicalDevices\"\",type:\"\"ArrayList<String>\"\",editor:\"\"ActivityCheckboxList\"\",activity:\"\"Z41_GetLogicalDeviceNames\"\"};{{NEWLINE}}@envoy.declare{name:\"\"ReadDuration\"\",type:\"\"Integer\"\",editor:\"\"Text\"\"};{{NEWLINE}}@envoy.declare{name:\"\"PauseBetweenReads\"\",type:\"\"Integer\"\",editor:\"\"Text\"\"};{{NEWLINE}}@envoy.declare{name:Report,type:String,editor:reports};{{NEWLINE}}@envoy.declare{name:\"\"TDSFilter\"\",type:String,editor:\"\"ActivityDropDown\"\",activity:\"\"Z09_ReturnTrueFalse\"\"};{{NEWLINE}}@envoy.declare{name:\"\"FormatType\"\",type:\"\"String\"\",editor:\"\"ActivityDropDown\"\",activity:\"\"Z06_ReturnReportTypes\"\"};{{NEWLINE}}@envoy.declare{name:\"\"Commands\"\",type:\"\"String\"\",editor:\"\"Text\"\"};{{NEWLINE}}@envoy.declare{name:\"\"Topic\"\",type:\"\"String\"\",editor:\"\"Text\"\"};{{NEWLINE}}{{NEWLINE}}String res = \"\"\"\";{{NEWLINE}}ArrayList<String> BasicFields = new ArrayList<String>();{{NEWLINE}}ArrayList<String> TDSFields = new ArrayList<String>();{{NEWLINE}}ArrayList<Properties> allTags = new ArrayList<>();{{NEWLINE}}Integer vMilliseconds = 100;{{NEWLINE}}String vParseTDS = \"\"True\"\";{{NEWLINE}}if(PauseBetweenReads != null && PauseBetweenReads > 100){{{NEWLINE}}  vMilliseconds = PauseBetweenReads;{{NEWLINE}}}{{NEWLINE}}{{NEWLINE}}@envoy.Z02_ReturnBasicFields{} > vbasicFields;{{NEWLINE}}@envoy.Z08_ReturnTDSFields{} > vtdsFields;{{NEWLINE}}{{NEWLINE}}TDSFields = new ArrayList<String>((List<String>)vtdsFields);{{NEWLINE}}{{NEWLINE}}ArrayList<String> bfields = new ArrayList<String>((List<String>)vbasicFields);{{NEWLINE}}{{NEWLINE}}for(String f : bfields){{{NEWLINE}}{{NEWLINE}}  @envoy.Z01_GetFieldMapping{Field:f} > vRField;{{NEWLINE}}{{NEWLINE}}  if(vRField != null && !vRField.toString().isEmpty()){{{NEWLINE}}    BasicFields.add(vRField.toString());{{NEWLINE}}  }{{NEWLINE}}  else{{{NEWLINE}}    BasicFields.add(f);{{NEWLINE}}  }{{NEWLINE}}}{{NEWLINE}}ArrayList<Properties> tags ;{{NEWLINE}}{{NEWLINE}}for(String LogicalDevice : LogicalDevices){{{NEWLINE}}  {{NEWLINE}}  @envoy.A01_ReadTags{LogicalDevice:LogicalDevice,ReadDuration:ReadDuration} > vtags;{{NEWLINE}}{{NEWLINE}}  if(vtags != null){{{NEWLINE}}    tags = (ArrayList<Properties>)vtags;{{NEWLINE}}    allTags.addAll(tags);{{NEWLINE}}    @envoy.B03_ProcessReportTags{Report:Report,Fields:BasicFields,Tags:tags} > vreporttags;{{NEWLINE}}    {{NEWLINE}}    if(vreporttags != null){{{NEWLINE}}      tags = (ArrayList<Properties>)vreporttags;{{NEWLINE}}      {{NEWLINE}}      if(TDSFilter.equalsIgnoreCase(\"\"true\"\")){{{NEWLINE}}        {{NEWLINE}}        @envoy.B04_ProcessTDSTags{TDSFields:TDSFields,ParseTDS:vParseTDS,Tags:tags} > vtdstags;{{NEWLINE}}        {{NEWLINE}}        if(vtdstags != null){{{NEWLINE}}          tags = (ArrayList<Properties>)vtdstags;{{NEWLINE}}        }{{NEWLINE}}        else{{{NEWLINE}}          tags = new ArrayList<Properties>();{{NEWLINE}}        }{{NEWLINE}}      }{{NEWLINE}}{{NEWLINE}}      @envoy.B05_FormatTags{FormatType:FormatType,DefaultLocation:LogicalDevice,Commands:Commands,IncludeExtFields:\"\"true\"\",Tags:tags} > vreport;{{NEWLINE}}      {{NEWLINE}}      if(vreport != null){{{NEWLINE}}        res = vreport.toString();{{NEWLINE}}        @envoy.M01_Publish{data:res,topic:Topic};{{NEWLINE}}      }{{NEWLINE}}    }{{NEWLINE}}  }{{NEWLINE}}{{NEWLINE}}  @envoy.Z54_ForceStopRF{LogicalDevice:LogicalDevice};{{NEWLINE}}  {{NEWLINE}}  @envoy.G04_Sleep{Milliseconds:vMilliseconds};{{NEWLINE}}}{{NEWLINE}}{{NEWLINE}}return allTags;\"\n\"B01_DecodeDataField\",\"B-Tag Processing\",\"DecodeDataField activity parses the EPC and returns the value of the data field specified. If the field was not found, the corresponding substring of the EPC is returned.\",\"String\",\"@envoy.declare{name:EPC,type:String,editor:text};{{NEWLINE}}@envoy.declare{name:FieldName,type:String,editor:fields};{{NEWLINE}}Object fieldGenerator=null;{{NEWLINE}}{{{NEWLINE}}Method m=proxy.getClass().getMethod(\"\"getGlobalReference\"\",new Class[]{String.class});{{NEWLINE}}fieldGenerator=m.invoke(proxy,new Object[]{\"\"field-generator\"\"});{{NEWLINE}}}{{NEWLINE}}String response=null;{{NEWLINE}}{{{NEWLINE}}Method m=fieldGenerator.getClass().getMethod(\"\"generateField\"\",new Class[]{String.class,String.class});{{NEWLINE}}response=(String)(m.invoke(fieldGenerator,new Object[]{EPC,FieldName}));{{NEWLINE}}}{{NEWLINE}}return response;\"\n\"C01_InvokeExternalDeviceAction\",\"C-GPIO\",\"InvokeExternalAction activity sends a command to a connected external device.\",\"String\",\"@envoy.declare{name:DeviceName,type:String,editor:iodevice,id:1234};{{NEWLINE}}@envoy.declare{name:DeviceAction,type:String,editor:ioaction,id:1234};{{NEWLINE}}{{NEWLINE}}Object ioInvoker=null;{{NEWLINE}}{{{NEWLINE}}Method m=proxy.getClass().getMethod(\"\"getGlobalReference\"\",new Class[]{String.class});{{NEWLINE}}ioInvoker=m.invoke(proxy,new Object[]{\"\"io-invoker\"\"});{{NEWLINE}}}{{NEWLINE}}String response=null;{{NEWLINE}}{{{NEWLINE}}Method m=ioInvoker.getClass().getMethod(\"\"invoke\"\",new Class[]{String.class,String.class});{{NEWLINE}}response=(String)(m.invoke(ioInvoker,new Object[]{DeviceName,DeviceAction}));{{NEWLINE}}}{{NEWLINE}}return response;{{NEWLINE}}{{NEWLINE}}\"\n\"Z31_Log\",\"Z-System Activities\",\"Log activity is used to to report messages to the System Log in the portal.\",\"String\",\"@envoy.declare{name:\"\"level\"\",type:\"\"String\"\",editor:\"\"ActivityDropDown\"\",activity:\"\"Z12_ReturnLogLevels\"\"};{{NEWLINE}}@envoy.declare{name:\"\"text\"\",type:\"\"String\"\",editor:\"\"Text\"\"};{{NEWLINE}}try{{{NEWLINE}}   Method getGlobalReference=proxy.getClass().getMethod(\"\"getGlobalReference\"\",new Class[]{String.class});{{NEWLINE}}   Object logger=getGlobalReference.invoke(proxy,\"\"activities-logger\"\");{{NEWLINE}}   Method logMethod=logger.getClass().getMethod(level.trim().toLowerCase(),new Class[]{String.class});{{NEWLINE}}   logMethod.invoke(logger,text);{{NEWLINE}}{{NEWLINE}}   getGlobalReference=null;{{NEWLINE}}   logMethod=null;{{NEWLINE}}   logger=null;{{NEWLINE}}   return null;{{NEWLINE}}}catch(Exception ex){{{NEWLINE}}   return ex.getMessage();{{NEWLINE}}}\"\n"}],"_postman_id":"5b0b79c4-3ce5-43a5-a9c3-b1f3b7ba2658"},{"name":"Export workflows","id":"849422f1-b927-4863-baeb-aefcb2284719","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"workflows\":[\n    {\n      \"name\":\"{workflowName}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/workflow","description":"<p>Export selected workflows to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","workflow"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"1908e833-59b8-4fde-ac68-47b1a30f0f4d","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"workflows\":[\n\t\t{\n\t\t\t\"name\":\"Generate_READ\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/workflow"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"workflows.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:39:25 GMT","name":"Date","description":"The date and time that the message was sent"},{"key":"Transfer-Encoding","value":"chunked","name":"Transfer-Encoding","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Started\",\"Auto Start\",\"Start Trigger\",\"Stop Trigger\",\"Runtime\",\"Meta\"\n\"Generate_READ\",\"false\",\"true\",\"\",\"\",\"int stop = 0;String next = null;String FS01_ReadTagsAndPubBatchValue0;{{NEWLINE}}public void start() throws Exception {stop = 0; {{NEWLINE}}__ReferenceID0();{{NEWLINE}}while(next != null && stop == 0){ Thread.sleep(100);if(next.equals(\"\"__ReferenceID0\"\")){next = null ;__ReferenceID0();continue;}}}{{NEWLINE}}{{NEWLINE}}                public void __ReferenceID0() throws Exception{{NEWLINE}}{{NEWLINE}}                {{{NEWLINE}}{{NEWLINE}}                    if(stop == 1){return;} String vLocation = \"\"Generate\"\";{{NEWLINE}}{{NEWLINE}} Integer vDuration = 3000;{{NEWLINE}}{{NEWLINE}}@envoy.FS01_ReadTagsAndPubBatch{Location:vLocation,Duration:vDuration} > V7fb8e6b8a0954c95ac21c172f7493cb9;{{NEWLINE}}{{NEWLINE}}FS01_ReadTagsAndPubBatchValue0 = (String)V7fb8e6b8a0954c95ac21c172f7493cb9;{{NEWLINE}}{{NEWLINE}}next = \"\"__ReferenceID0\"\";{{NEWLINE}}{{NEWLINE}}                }{{NEWLINE}}public void stop() throws Exception {stop = 1;}\",\"<Activity mc:Ignorable=\"\"sap sap2010 sads\"\" x:Class=\"\"AI.ActiveEnvoy.UI.Flowchart\"\" mva:VisualBasic.Settings=\"\"{x:Null}\"\" sap2010:WorkflowViewState.IdRef=\"\"AI.ActiveEnvoy.UI.Flowchart_1\"\"{{NEWLINE}}{{NEWLINE}} xmlns=\"\"http://schemas.microsoft.com/netfx/2009/xaml/activities\"\"{{NEWLINE}}{{NEWLINE}} xmlns:aau=\"\"clr-namespace:AI.ActiveEnvoy.UI;assembly=AI.ActiveEnvoy.UI\"\"{{NEWLINE}}{{NEWLINE}} xmlns:aaum=\"\"clr-namespace:AI.ActiveEnvoy.UI.Models;assembly=AI.ActiveEnvoy.UI.Models\"\"{{NEWLINE}}{{NEWLINE}} xmlns:av=\"\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\"\"{{NEWLINE}}{{NEWLINE}} xmlns:mc=\"\"http://schemas.openxmlformats.org/markup-compatibility/2006\"\"{{NEWLINE}}{{NEWLINE}} xmlns:mva=\"\"clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities\"\"{{NEWLINE}}{{NEWLINE}} xmlns:sads=\"\"http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger\"\"{{NEWLINE}}{{NEWLINE}} xmlns:sap=\"\"http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation\"\"{{NEWLINE}}{{NEWLINE}} xmlns:sap2010=\"\"http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation\"\"{{NEWLINE}}{{NEWLINE}} xmlns:scg=\"\"clr-namespace:System.Collections.Generic;assembly=mscorlib\"\"{{NEWLINE}}{{NEWLINE}} xmlns:sco=\"\"clr-namespace:System.Collections.ObjectModel;assembly=mscorlib\"\"{{NEWLINE}}{{NEWLINE}} xmlns:x=\"\"http://schemas.microsoft.com/winfx/2006/xaml\"\">{{NEWLINE}}{{NEWLINE}}  <TextExpression.NamespacesForImplementation>{{NEWLINE}}{{NEWLINE}}    <sco:Collection x:TypeArguments=\"\"x:String\"\">{{NEWLINE}}{{NEWLINE}}      <x:String>System.Activities</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Activities.Statements</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Activities.Expressions</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Activities.Validation</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Activities.XamlIntegration</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Controls</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Documents</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Shapes</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Shell</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Navigation</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Data</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Controls.Primitives</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Media.Animation</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Input</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Media</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Diagnostics</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Automation</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Media.TextFormatting</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Ink</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Media.Effects</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Media.Imaging</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Media.Media3D</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Forms.Integration</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>Microsoft.VisualBasic</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>Microsoft.VisualBasic.Activities</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Activities.Debugger</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Collections.Generic</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Data</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Linq</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Text</x:String>{{NEWLINE}}{{NEWLINE}}      <x:String>System.Windows.Markup</x:String>{{NEWLINE}}{{NEWLINE}}    </sco:Collection>{{NEWLINE}}{{NEWLINE}}  </TextExpression.NamespacesForImplementation>{{NEWLINE}}{{NEWLINE}}  <TextExpression.ReferencesForImplementation>{{NEWLINE}}{{NEWLINE}}    <sco:Collection x:TypeArguments=\"\"AssemblyReference\"\">{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>System.Activities</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>PresentationFramework</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>WindowsBase</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>PresentationCore</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>WindowsFormsIntegration</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>System</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>mscorlib</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>System.Xml</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>System.Core</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>System.ServiceModel</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>System.Data</AssemblyReference>{{NEWLINE}}{{NEWLINE}}      <AssemblyReference>System.Xaml</AssemblyReference>{{NEWLINE}}{{NEWLINE}}    </sco:Collection>{{NEWLINE}}{{NEWLINE}}  </TextExpression.ReferencesForImplementation>{{NEWLINE}}{{NEWLINE}}  <Flowchart sap2010:WorkflowViewState.IdRef=\"\"Flowchart_1\"\">{{NEWLINE}}{{NEWLINE}}    <Flowchart.Variables>{{NEWLINE}}{{NEWLINE}}      <Variable x:TypeArguments=\"\"x:String\"\" Name=\"\"FS01_ReadTagsAndPubBatchValue0\"\" />{{NEWLINE}}{{NEWLINE}}    </Flowchart.Variables>{{NEWLINE}}{{NEWLINE}}    <Flowchart.StartNode>{{NEWLINE}}{{NEWLINE}}      <FlowStep x:Name=\"\"__ReferenceID0\"\" sap2010:WorkflowViewState.IdRef=\"\"FlowStep_1\"\">{{NEWLINE}}{{NEWLINE}}        <aau:EnvoyActivity Code=\"\"if(stop == 1){return;}  String vLocation = &quot;Generate&quot;;&#xD;&#xA;  Integer vDuration = 3000;&#xD;&#xA;@envoy.FS01_ReadTagsAndPubBatch{Location:vLocation,Duration:vDuration} &gt; V7fb8e6b8a0954c95ac21c172f7493cb9;&#xA;&#xD;FS01_ReadTagsAndPubBatchValue0 = V7fb8e6b8a0954c95ac21c172f7493cb9;&#xA;&#xD;\"\" DisplayName=\"\"FS01_ReadTagsAndPubBatch\"\" ID=\"\"c84f4b59-b206-45d7-8e1f-d9840d031561\"\" sap2010:WorkflowViewState.IdRef=\"\"EnvoyActivity_1\"\" Name=\"\"FS01_ReadTagsAndPubBatch\"\" ReturnType=\"\"String\"\" ReturnVariable=\"\"FS01_ReadTagsAndPubBatchValue0\"\">{{NEWLINE}}{{NEWLINE}}          <aau:EnvoyActivity.Props>{{NEWLINE}}{{NEWLINE}}            <scg:List x:TypeArguments=\"\"aaum:CActivityPropertyModel\"\" Capacity=\"\"4\"\">{{NEWLINE}}{{NEWLINE}}              <aaum:CActivityPropertyModel Activity=\"\"{x:Null}\"\" Name=\"\"Location\"\" Type=\"\"String\"\" TypeEditor=\"\"LogicalDevices\"\" Value=\"\"Generate\"\" />{{NEWLINE}}{{NEWLINE}}              <aaum:CActivityPropertyModel Activity=\"\"{x:Null}\"\" Name=\"\"Duration\"\" Type=\"\"Integer\"\" TypeEditor=\"\"Text\"\" Value=\"\"3000\"\" />{{NEWLINE}}{{NEWLINE}}            </scg:List>{{NEWLINE}}{{NEWLINE}}          </aau:EnvoyActivity.Props>{{NEWLINE}}{{NEWLINE}}        </aau:EnvoyActivity>{{NEWLINE}}{{NEWLINE}}        <FlowStep.Next>{{NEWLINE}}{{NEWLINE}}          <x:Reference>__ReferenceID0</x:Reference>{{NEWLINE}}{{NEWLINE}}        </FlowStep.Next>{{NEWLINE}}{{NEWLINE}}      </FlowStep>{{NEWLINE}}{{NEWLINE}}    </Flowchart.StartNode>{{NEWLINE}}{{NEWLINE}}    <x:Reference>__ReferenceID0</x:Reference>{{NEWLINE}}{{NEWLINE}}    <sads:DebugSymbol.Symbol>dw1DOlxFbXB0eS54YW1sAA==</sads:DebugSymbol.Symbol>{{NEWLINE}}{{NEWLINE}}  </Flowchart>{{NEWLINE}}{{NEWLINE}}  <sap2010:WorkflowViewState.ViewStateManager>{{NEWLINE}}{{NEWLINE}}    <sap2010:ViewStateManager>{{NEWLINE}}{{NEWLINE}}      <sap2010:ViewStateData Id=\"\"EnvoyActivity_1\"\" sap:VirtualizedContainerService.HintSize=\"\"276,94\"\">{{NEWLINE}}{{NEWLINE}}        <sap:WorkflowViewStateService.ViewState>{{NEWLINE}}{{NEWLINE}}          <scg:Dictionary x:TypeArguments=\"\"x:String, x:Object\"\">{{NEWLINE}}{{NEWLINE}}            <x:Boolean x:Key=\"\"IsExpanded\"\">True</x:Boolean>{{NEWLINE}}{{NEWLINE}}          </scg:Dictionary>{{NEWLINE}}{{NEWLINE}}        </sap:WorkflowViewStateService.ViewState>{{NEWLINE}}{{NEWLINE}}      </sap2010:ViewStateData>{{NEWLINE}}{{NEWLINE}}      <sap2010:ViewStateData Id=\"\"FlowStep_1\"\">{{NEWLINE}}{{NEWLINE}}        <sap:WorkflowViewStateService.ViewState>{{NEWLINE}}{{NEWLINE}}          <scg:Dictionary x:TypeArguments=\"\"x:String, x:Object\"\">{{NEWLINE}}{{NEWLINE}}            <av:Point x:Key=\"\"ShapeLocation\"\">162,127.5</av:Point>{{NEWLINE}}{{NEWLINE}}            <av:Size x:Key=\"\"ShapeSize\"\">276,94</av:Size>{{NEWLINE}}{{NEWLINE}}            <av:PointCollection x:Key=\"\"ConnectorLocation\"\">300,221.5 300,234.5 468,234.5 468,174.5 438,174.5</av:PointCollection>{{NEWLINE}}{{NEWLINE}}          </scg:Dictionary>{{NEWLINE}}{{NEWLINE}}        </sap:WorkflowViewStateService.ViewState>{{NEWLINE}}{{NEWLINE}}      </sap2010:ViewStateData>{{NEWLINE}}{{NEWLINE}}      <sap2010:ViewStateData Id=\"\"Flowchart_1\"\" sap:VirtualizedContainerService.HintSize=\"\"614,636\"\">{{NEWLINE}}{{NEWLINE}}        <sap:WorkflowViewStateService.ViewState>{{NEWLINE}}{{NEWLINE}}          <scg:Dictionary x:TypeArguments=\"\"x:String, x:Object\"\">{{NEWLINE}}{{NEWLINE}}            <x:Boolean x:Key=\"\"IsExpanded\"\">False</x:Boolean>{{NEWLINE}}{{NEWLINE}}            <av:Point x:Key=\"\"ShapeLocation\"\">270,2.5</av:Point>{{NEWLINE}}{{NEWLINE}}            <av:Size x:Key=\"\"ShapeSize\"\">60,75</av:Size>{{NEWLINE}}{{NEWLINE}}            <av:PointCollection x:Key=\"\"ConnectorLocation\"\">300,77.5 300,127.5</av:PointCollection>{{NEWLINE}}{{NEWLINE}}          </scg:Dictionary>{{NEWLINE}}{{NEWLINE}}        </sap:WorkflowViewStateService.ViewState>{{NEWLINE}}{{NEWLINE}}      </sap2010:ViewStateData>{{NEWLINE}}{{NEWLINE}}      <sap2010:ViewStateData Id=\"\"AI.ActiveEnvoy.UI.Flowchart_1\"\" sap:VirtualizedContainerService.HintSize=\"\"654,716\"\" />{{NEWLINE}}{{NEWLINE}}    </sap2010:ViewStateManager>{{NEWLINE}}{{NEWLINE}}  </sap2010:WorkflowViewState.ViewStateManager>{{NEWLINE}}{{NEWLINE}}</Activity>\"\n"}],"_postman_id":"849422f1-b927-4863-baeb-aefcb2284719"},{"name":"Export global settings","id":"2c2b6007-5d3a-4806-b564-4c325d27fd8b","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"globalsettings\":[\n    {\n      \"name\":\"{globalSettingName}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/global","description":"<p>Export selected global settings to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","global"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"aad76290-cfc5-4b30-ac41-060415e9fe71","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"globalsettings\":[\n\t\t{\n\t\t\t\"name\":\"MYSQL_HOST\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"MYSQL_PORT\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"MYSQL_DBNAME\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/global"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"global_settings.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"117","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:42:06 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Type\",\"Value\"\n\"MYSQL_PORT\",\"integer\",\"3306\"\n\"MYSQL_DBNAME\",\"text\",\"tags\"\n\"MYSQL_HOST\",\"text\",\"192.168.1.208\"\n"}],"_postman_id":"2c2b6007-5d3a-4806-b564-4c325d27fd8b"},{"name":"Export data fields","id":"e3006e56-38c1-4a24-a9e5-03d57a79026e","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"datafields\":[\n    {\n      \"name\":\"{dataFieldName}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/template","description":"<p>Export selected data fields to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","template"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"3863f6ae-c699-48e4-adf2-49158bcf3512","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"datafields\":[\n\t\t{\n\t\t\t\"name\":\"COO\"\n\t\t}\t\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/template"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"data_fields.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"1208","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:42:33 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Type\",\"Offset\",\"Length\",\"Binding\"\n\"COO\",\"binary\",\"58\",\"6\",\"{\"\"bindings\"\":[{\"\"operand\"\":\"\"000001\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"IT\"\"},{\"\"operand\"\":\"\"000010\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"US\"\"},{\"\"operand\"\":\"\"100000\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"U4\"\"},{\"\"operand\"\":\"\"110000\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"CO\"\"},{\"\"operand\"\":\"\"100001\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"IN\"\"},{\"\"operand\"\":\"\"011000\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"MX\"\"},{\"\"operand\"\":\"\"001000\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"VN\"\"},{\"\"operand\"\":\"\"100100\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"KR\"\"},{\"\"operand\"\":\"\"010000\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"CN\"\"},{\"\"operand\"\":\"\"000011\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"KH\"\"},{\"\"operand\"\":\"\"001100\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"DO\"\"},{\"\"operand\"\":\"\"010001\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"Hong Kong\"\"},{\"\"operand\"\":\"\"100010\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"ID\"\"},{\"\"operand\"\":\"\"010100\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"TW\"\"},{\"\"operand\"\":\"\"000110\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"VU\"\"},{\"\"operand\"\":\"\"101000\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"BD\"\"},{\"\"operand\"\":\"\"000100\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"CA\"\"},{\"\"operand\"\":\"\"010010\"\",\"\"condition\"\":\"\"=\"\",\"\"value\"\":\"\"MM\"\"}]}\"\n"}],"_postman_id":"e3006e56-38c1-4a24-a9e5-03d57a79026e"},{"name":"Export reports","id":"c44235cb-6e9f-4486-b1fd-4a40d33790a7","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"reports\":[\n    {\n      \"reportName\":\"{reportName}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/report","description":"<p>Export selected reports to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","report"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"7466a7ea-4cba-45bb-917d-ca1f35c59a27","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"reports\":[\n\t\t{\n\t\t\t\"reportName\":\"General\"\n\t\t},\n\t\t{\n\t\t\t\"reportName\":\"custom\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/report"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"reports.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"179","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:43:30 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Output Field\",\"Filter\"\n\"General\",\"\",\"{\"\"filters\"\":[]}\"\n\"custom\",\"test,COO\",\"{\"\"filters\"\":[{\"\"list\"\":[{\"\"operand\"\":\"\"COO\"\",\"\"condition\"\":\"\"EndWith\"\",\"\"value\"\":\"\"IT\"\"}]}]}\"\n"}],"_postman_id":"c44235cb-6e9f-4486-b1fd-4a40d33790a7"},{"name":"Export logical device groups","id":"3f599078-a904-49c7-8d1b-d6d0a44d484f","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"logicaldevicegroups\":[\n    {\n      \"name\":\"{logicalDeviceGroupName}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/group","description":"<p>Export selected logical device groups to a csv file.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","export","group"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"c38f274e-ef9a-4e2e-a612-59f356e808a3","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"logicaldevicegroups\":[\n\t\t{\n\t\t\t\"name\":\"SHIP_GROUP\"\n\t\t}\t\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/export/group"},"status":"OK","code":200,"_postman_previewlanguage":"raw","header":[{"key":"Content-Disposition","value":"attachment; filename=\"logical_device_groups.csv\"","name":"Content-Disposition","description":"An opportunity to raise a \"File Download\" dialogue box for a known MIME type"},{"key":"Content-Length","value":"542","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/octet-stream","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 07:44:52 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"\"Name\",\"Driver\",\"Model\",\"Cron Expression\",\"Logical Device\",\"Property\"\n\"SHIP_GROUP\",\"arp\",\"ALR-9900+EMA\",\"\",\"{\"\"logicalDevices\"\":[{\"\"isCorrect\"\":true,\"\"model\"\":\"\"ALR-9900+EMA\"\",\"\"name\"\":\"\"Shipping_Dock_02\"\",\"\"vendor\"\":\"\"arp\"\",\"\"uid\"\":\"\"001B5F00C4D1\"\"},{\"\"isCorrect\"\":true,\"\"model\"\":\"\"ALR-9900+EMA\"\",\"\"name\"\":\"\"Shipping_Dock_03\"\",\"\"vendor\"\":\"\"arp\"\",\"\"uid\"\":\"\"001B5F00C4D1\"\"},{\"\"isCorrect\"\":true,\"\"model\"\":\"\"ALR-9900+EMA\"\",\"\"name\"\":\"\"Shipping_Dock_04\"\",\"\"vendor\"\":\"\"arp\"\",\"\"uid\"\":\"\"001B5F00C4D1\"\"}]}\",\"RFAttenuation:0 30;1 30;2 30;3 30,@tid:on\"\n"}],"_postman_id":"3f599078-a904-49c7-8d1b-d6d0a44d484f"}],"id":"309e1163-b4a2-4a89-9c28-1b366a0ead2b","description":"<p>Contains all API references regarding exporting data.</p>\n","_postman_id":"309e1163-b4a2-4a89-9c28-1b366a0ead2b"},{"name":"External Device","item":[{"name":"List external devices","id":"f02ebac3-ff77-c6de-838a-e47309789b0c","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device","description":"<p>Lists all external devices.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/device?fields=name\n<i>This retrieves only the external devies name.</i></pre>\n\n<p>This path may also be provided with a 'type' query string to filter by external device types.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/device?type=input\n<i>This retrieves only the external devices with type input.</i></pre>\n\n<p>The supported types are: input and output. By default both input and output devices are included.</p>\n<p>One can combine those two query strings as follows:</p>\n<pre>http://10.0.0.74:8080/ALE/api/device?fields=name&amp;type=input\n<i>This retrieves only the devices with type input and they include only their names.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"f93fe5e1-abe6-6dc1-ae01-92eb8f78a35c","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:54:28 GMT","description":"The date and time that the message was sent"},{"name":"Transfer-Encoding","key":"Transfer-Encoding","value":"chunked","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[],"responseTime":"241","body":"[\n  {\n    \"name\": \"DVF_Dock_Load\",\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00F323\",\n    \"device\": {\n      \"name\": \"Laser-Sensor\",\n      \"type\": \"input\",\n      \"pins\": [\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 2,\n            \"type\": \"input\"\n          }\n        }\n      ],\n      \"actions\": [\n        {\n          \"name\": \"On\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Off\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        }\n      ]\n    }\n  },\n  {\n    \"name\": \"DVF_Dock_Stack\",\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00F323\",\n    \"device\": {\n      \"name\": \"4-Way Stack Light\",\n      \"type\": \"output\",\n      \"pins\": [\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 1,\n            \"type\": \"output\"\n          }\n        },\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 2,\n            \"type\": \"output\"\n          }\n        },\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 3,\n            \"type\": \"output\"\n          }\n        },\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 4,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 4,\n            \"type\": \"output\"\n          }\n        }\n      ],\n      \"actions\": [\n        {\n          \"name\": \"Green\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Amber\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Red\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Buzzer\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"AllOn\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"AllOff\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"GreenAmber\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"AmberRed\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"RedBuzz\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        }\n      ]\n    }\n  },\n  {\n    \"name\": \"DVF_Dock_Unload\",\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00F323\",\n    \"device\": {\n      \"name\": \"Laser-Sensor\",\n      \"type\": \"input\",\n      \"pins\": [\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 1,\n            \"type\": \"input\"\n          }\n        }\n      ],\n      \"actions\": [\n        {\n          \"name\": \"On\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Off\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        }\n      ]\n    }\n  },\n  {\n    \"name\": \"Devolder_Dock_Load\",\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00337B\",\n    \"device\": {\n      \"name\": \"Laser-Sensor\",\n      \"type\": \"input\",\n      \"pins\": [\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 1,\n            \"type\": \"input\"\n          }\n        }\n      ],\n      \"actions\": [\n        {\n          \"name\": \"On\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Off\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        }\n      ]\n    }\n  },\n  {\n    \"name\": \"Devolder_Dock_Stack\",\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00337B\",\n    \"device\": {\n      \"name\": \"4-Way Stack Light\",\n      \"type\": \"output\",\n      \"pins\": [\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 1,\n            \"type\": \"output\"\n          }\n        },\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 2,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 2,\n            \"type\": \"output\"\n          }\n        },\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 3,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 3,\n            \"type\": \"output\"\n          }\n        },\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 4,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 4,\n            \"type\": \"output\"\n          }\n        }\n      ],\n      \"actions\": [\n        {\n          \"name\": \"Green\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Amber\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Red\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Buzzer\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"AllOn\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"AllOff\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"GreenAmber\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"AmberRed\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"RedBuzz\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 2,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 3,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            },\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 4,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        }\n      ]\n    }\n  },\n  {\n    \"name\": \"Devolder_Dock_Unload\",\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00337B\",\n    \"device\": {\n      \"name\": \"Laser-Sensor\",\n      \"type\": \"input\",\n      \"pins\": [\n        {\n          \"reserved\": true,\n          \"type\": \"input\",\n          \"number\": 1,\n          \"value\": 0,\n          \"connection\": {\n            \"number\": 2,\n            \"type\": \"input\"\n          }\n        }\n      ],\n      \"actions\": [\n        {\n          \"name\": \"On\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 0,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        },\n        {\n          \"name\": \"Off\",\n          \"pins\": [\n            {\n              \"reserved\": false,\n              \"type\": \"input\",\n              \"number\": 1,\n              \"value\": 1,\n              \"connection\": {\n                \"number\": 0,\n                \"type\": \"input\"\n              }\n            }\n          ]\n        }\n      ]\n    }\n  }\n]"}],"_postman_id":"f02ebac3-ff77-c6de-838a-e47309789b0c"},{"name":"List device actions","id":"fb5ad424-b149-018b-dc43-0031bf5a1de1","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device/{deviceName}/action","description":"<p>Lists the actions that this device supports.</p>\n<p><b>Replace the path parameter placeholder {deviceName} by the actual device name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device","{deviceName}","action"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"fb5ad424-b149-018b-dc43-0031bf5a1de1"},{"name":"Get external device","id":"7acbd6d9-c992-47af-254a-4d6645383ebc","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device/{deviceName}","description":"<p>Get the external device by name.</p>\n<p><b>Replace the path parameter placeholder {deviceName} by the actual device name.</b></p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/device/SomeDeviceName</pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device","{deviceName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"c915ceb8-4b21-6543-a7c6-a5b1ec4e6308","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device/DVF_Dock_Load"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"974","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:55:52 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"32","body":"{\n  \"name\": \"DVF_Dock_Load\",\n  \"vendor\": \"arp\",\n  \"uid\": \"001B5F00F323\",\n  \"device\": {\n    \"name\": \"Laser-Sensor\",\n    \"type\": \"input\",\n    \"pins\": [\n      {\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 2,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"On\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      },\n      {\n        \"name\": \"Off\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1,\n            \"connection\": {\n              \"number\": 0,\n              \"type\": \"input\"\n            }\n          }\n        ]\n      }\n    ]\n  }\n}"}],"_postman_id":"7acbd6d9-c992-47af-254a-4d6645383ebc"},{"name":"Invoke action","id":"5622e7b1-269f-e26b-a4e2-c501388ff442","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"deviceName\":\"{deviceName}\",\n  \"deviceAction\":\"{deviceAction}\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/device/invoke","description":"<p>Invoke an external device action</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device","invoke"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"5622e7b1-269f-e26b-a4e2-c501388ff442"},{"name":"Define an external device","id":"d41ba510-135d-046b-be4f-3d8b6cf8dce9","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"TestDevice\",\n  \"vendor\": \"arp\",\n  \"uid\": \"001B5F00BDBF\",\n  \"device\": {\n    \"name\": \"3-Way Stack Light\",\n    \"type\": \"output\",\n    \"pins\": [\n      {\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 1,\n          \"type\": \"output\"\n        }\n      },\n      {\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 2,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 2,\n          \"type\": \"output\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3,\n        \"value\": 0\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"Red\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      },\n      {\n        \"name\": \"Green\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      },\n      {\n        \"name\": \"Amber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"GreenRed\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      },\n      {\n        \"name\": \"AmberRed\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"GreenAmber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOn\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOff\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      }\n    ]\n  }\n}"},"url":"http://{{host}}:{{port}}/ALE/api/device","description":"<p>Create or replace an external device.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"d41ba510-135d-046b-be4f-3d8b6cf8dce9"},{"name":"Update an external device","id":"ed0de97e-fb37-01ee-75f8-3f020f108986","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"TestDevice\",\n  \"vendor\": \"arp\",\n  \"uid\": \"001B5F00BDBF\",\n  \"device\": {\n    \"name\": \"3-Way Stack Light\",\n    \"type\": \"output\",\n    \"pins\": [\n      {\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 1,\n          \"type\": \"output\"\n        }\n      },\n      {\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 2,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 2,\n          \"type\": \"output\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3,\n        \"value\": 0\n      }\n    ],\n    \"actions\": [\n      {\n        \"name\": \"Red\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      },\n      {\n        \"name\": \"Green\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      },\n      {\n        \"name\": \"Amber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"GreenRed\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      },\n      {\n        \"name\": \"AmberRed\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"GreenAmber\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOn\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 1\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 1\n          }\n        ]\n      },\n      {\n        \"name\": \"AllOff\",\n        \"pins\": [\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 1,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 2,\n            \"value\": 0\n          },\n          {\n            \"reserved\": false,\n            \"type\": \"input\",\n            \"number\": 3,\n            \"value\": 0\n          }\n        ]\n      }\n    ]\n  }\n}"},"url":"http://{{host}}:{{port}}/ALE/api/device/update","description":"<p>Updates an external device.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device","update"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"ed0de97e-fb37-01ee-75f8-3f020f108986"},{"name":"Delete an external device","id":"1e1eca13-9f7e-b391-b59d-b70f45caefac","request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/device/{deviceName}","description":"<p>Delete an external device.</p>\n<p><b>Replace the path parameter placeholder {deviceName} by the actual device name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device","{deviceName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"1e1eca13-9f7e-b391-b59d-b70f45caefac"},{"name":"Delete multiple external devices","id":"fca8f3c3-c2b6-1a2b-6248-36cd7cd3911d","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{DeviceName1}\",\n  \"{DeviceName2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/device/delete","description":"<p>Delete multiple external devices by their name.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"fca8f3c3-c2b6-1a2b-6248-36cd7cd3911d"},{"name":"Bulk delete external devices","id":"ff918d54-b3f8-4705-93ec-896663ddd183","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"externaldevices\":[\n    {\n      \"name\":\"{externalDeviceName1}\"\n    },\n    {\n      \"name\":\"{externalDeviceName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/device/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","device","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"ff918d54-b3f8-4705-93ec-896663ddd183"}],"id":"5f98d468-d4a8-0731-3b13-c07e4663c323","description":"<p>Contains all API references regarding external devices.</p>\n","_postman_id":"5f98d468-d4a8-0731-3b13-c07e4663c323"},{"name":"Firmware","item":[{"name":"List firmwares","id":"7b20bd37-0aea-8c36-8910-761713bd18fe","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/firmware/:vendor","description":"<p>List the available firmwares according that are related to a specific vendor (driver).</p>\n<p><b>Replace the {vendor} path parameters with the appropriate vendor name (driver name).</b></p>\n<p>This will list the currently uploaded firmwares, the path of each one, and the reader model.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","firmware",":vendor"],"host":["{{host}}"],"query":[],"variable":[{"description":{"content":"<p>The vendor or driver name</p>\n","type":"text/plain"},"type":"any","value":":vendor","key":"vendor"}]}},"response":[{"id":"d47fe2d4-aa96-0d35-bb1a-8f3b6dcc2129","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/firmware/arp"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"474","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:58:17 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"129","body":"[\n  {\n    \"model\": \"ALR-8800\",\n    \"firmware\": null\n  },\n  {\n    \"model\": \"ALR-9650\",\n    \"firmware\": null\n  },\n  {\n    \"model\": \"ALR-9680-EMA\",\n    \"firmware\": null\n  },\n  {\n    \"model\": \"ALR-9800\",\n    \"firmware\": null\n  },\n  {\n    \"model\": \"ALR-9900\",\n    \"firmware\": null\n  },\n  {\n    \"model\": \"ALR-9900+\",\n    \"firmware\": null\n  },\n  {\n    \"model\": \"ALR-9900+EMA\",\n    \"firmware\": null\n  },\n  {\n    \"model\": \"ALR-F800\",\n    \"firmware\": \"ALRx800_fw_140701.tar.aef\"\n  }\n]"}],"_postman_id":"7b20bd37-0aea-8c36-8910-761713bd18fe"},{"name":"Upload firmware","id":"4829f63a-1e46-83f4-7243-62bdff82aed8","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":"ALRx800_fw_140701.tar.aef","value":null}]},"url":"http://{{host}}:{{port}}/ALE/api/firmware/upload/{vendor}/{modelName}","description":"<p>Upload a firmware for a model that is assigned to a specific driver.</p>\n<p><b>Replace the {vendor} and {modelName} path parameters by the appropriate vendor name (driver name) and reader's model name respectively.</b></p>\n<p><i>NOTE: This service expects a file to be received along with its content disposition (file details).</i></p>\n<p><i>NOTE: A Bad Request status code will be returned if the file was not received or the data was incomplete.</i></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","firmware","upload","{vendor}","{modelName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"4829f63a-1e46-83f4-7243-62bdff82aed8"}],"id":"c0dc152c-6d43-78e3-87bd-8d5e7f9980fe","_postman_id":"c0dc152c-6d43-78e3-87bd-8d5e7f9980fe","description":""},{"name":"Global Settings","item":[{"name":"List global settings","id":"a3071a6a-060e-67e5-5d7a-fec1d1a70707","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/global","description":"<p>List all global settings.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/global?fields=name\n<i>This retrieves only the name of all global settings.</i></pre>\n\n<pre>Example: http://10.0.0.74:8080/ALE/api/global?fields=name;type\n<i>This retrieves only the name and type of all global settings.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","global"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"7f084912-8c25-620b-0a92-1d4b16747f58","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/global"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"3913","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:46:39 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"77","body":"[\n  {\n    \"name\": \"MYSQL_USER\",\n    \"value\": \"root\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_DBNAME\",\n    \"value\": \"data\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_PORT\",\n    \"value\": \"8080\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"GPS\",\n    \"value\": \"42.4902427,-82.3526395\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_HOST\",\n    \"value\": \"10.0.0.66\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"Z_LAST_FILL_TID\",\n    \"value\": \"abc887ae-6c6d-465f-be88-2aaeb16e1d43\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"DEBUG\",\n    \"value\": \"0\",\n    \"type\": \"integer\",\n    \"settingsType\": {\n      \"name\": \"integer\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"^((-)|(\\\\+))?([0-9])+$\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_HOST\",\n    \"value\": \"127.0.0.1\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_APP_NAME\",\n    \"value\": \"app\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_USER\",\n    \"value\": \"envoy\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_TABLENAME\",\n    \"value\": \"transaction\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_PORT\",\n    \"value\": \"3306\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLIENT_ID\",\n    \"value\": \"DEMO_CLIENT\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_PWD\",\n    \"value\": \"Active.Envoy\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_PWD\",\n    \"value\": \"root\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"ENVOY_ID\",\n    \"value\": \"OFFICE3\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"VAR_DELETE_AFTER_SYNC\",\n    \"value\": \"0\",\n    \"type\": \"integer\",\n    \"settingsType\": {\n      \"name\": \"integer\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"^((-)|(\\\\+))?([0-9])+$\"\n    }\n  }\n]"},{"id":"fa923e61-1d98-1462-6fdd-5bff1e3a121b","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/global"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"3913","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 07:59:38 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"44","body":"[\n  {\n    \"name\": \"MYSQL_USER\",\n    \"value\": \"root\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_DBNAME\",\n    \"value\": \"data\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_PORT\",\n    \"value\": \"8080\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"GPS\",\n    \"value\": \"42.4902427,-82.3526395\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_HOST\",\n    \"value\": \"10.0.0.66\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"Z_LAST_FILL_TID\",\n    \"value\": \"abc887ae-6c6d-465f-be88-2aaeb16e1d43\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"DEBUG\",\n    \"value\": \"0\",\n    \"type\": \"integer\",\n    \"settingsType\": {\n      \"name\": \"integer\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"^((-)|(\\\\+))?([0-9])+$\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_HOST\",\n    \"value\": \"127.0.0.1\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_APP_NAME\",\n    \"value\": \"app\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_USER\",\n    \"value\": \"envoy\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_TABLENAME\",\n    \"value\": \"transaction\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_PORT\",\n    \"value\": \"3306\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLIENT_ID\",\n    \"value\": \"DEMO_CLIENT\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"CLOUD_PWD\",\n    \"value\": \"Active.Envoy\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"MYSQL_PWD\",\n    \"value\": \"root\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"ENVOY_ID\",\n    \"value\": \"OFFICE3\",\n    \"type\": \"text\",\n    \"settingsType\": {\n      \"name\": \"text\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"(.)*\"\n    }\n  },\n  {\n    \"name\": \"VAR_DELETE_AFTER_SYNC\",\n    \"value\": \"0\",\n    \"type\": \"integer\",\n    \"settingsType\": {\n      \"name\": \"integer\",\n      \"shape\": {\n        \"shapeName\": \"TextField\"\n      },\n      \"validationExpression\": \"^((-)|(\\\\+))?([0-9])+$\"\n    }\n  }\n]"}],"_postman_id":"a3071a6a-060e-67e5-5d7a-fec1d1a70707"},{"name":"Get global settings","id":"7fb036fb-5aaa-220b-6484-4d02807e740d","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/global/{key}","description":"<p>Get global settings by key</p>\n<p><b>Replace the path parameter placeholder {key} by the global settings name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","global","{key}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"23b4401f-2058-103b-90af-d2a733b93e26","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/global/MYSQL_USER"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"196","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:00:17 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"97","body":"{\n  \"name\": \"MYSQL_USER\",\n  \"value\": \"root\",\n  \"type\": \"text\",\n  \"settingsType\": {\n    \"name\": \"text\",\n    \"shape\": {\n      \"shapeName\": \"TextField\"\n    },\n    \"validationExpression\": \"(.)*\"\n  }\n}"}],"_postman_id":"7fb036fb-5aaa-220b-6484-4d02807e740d"},{"name":"Define global settings","id":"bd688c0c-4774-a3d6-c977-6d597b5dfe20","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"name\":\"global settings key\",\n\t\"value\":\"global settings value\",\n\t\"type\":\"global settings type\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/global","description":"<p>Create global settings.</p>\n<p><i>NOTE: the accepted types are boolean,text,password,decimal,integer, and date.</i></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","global"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"bd688c0c-4774-a3d6-c977-6d597b5dfe20"},{"name":"List types","id":"0792ebef-fd13-86f5-e4f1-9913bef0b5ad","request":{"method":"POST","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/global/type","description":"<p>List global settings types.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","global","type"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"0792ebef-fd13-86f5-e4f1-9913bef0b5ad"},{"name":"Delete global settings","id":"29b633db-a9dd-02ac-58f9-a3a3f29dd45a","request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/global/{key}","description":"<p>Delete global settings by key</p>\n<p><b>Replace the path parameter placeholder {key} by the global settings name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","global","{key}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"29b633db-a9dd-02ac-58f9-a3a3f29dd45a"},{"name":"Delete multiple global settings","id":"4cf4c6e0-5b6c-742c-f8ef-9ff48bc7c144","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{GlobalSettingsName1}\",\n  \"{GlobalSettingsName2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/global/delete","description":"<p>Delete multiple global settings.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","global","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"4cf4c6e0-5b6c-742c-f8ef-9ff48bc7c144"},{"name":"Bulk delete global settings","id":"34ba90da-3ab5-4aa9-8377-bb9283adbd16","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"globalsettings\":[\n    {\n      \"name\":\"{globalSettingName1}\"\n    },\n    {\n      \"name\":\"{globalSettingName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/global/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","global","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"34ba90da-3ab5-4aa9-8377-bb9283adbd16"}],"id":"12e0244e-4e4f-bdbd-d1f6-04d9678cae72","description":"<p>Contains all API references regarding global settings.</p>\n","_postman_id":"12e0244e-4e4f-bdbd-d1f6-04d9678cae72"},{"name":"Group Template","item":[{"name":"Default group","id":"e0305ebf-4099-7cba-6d9e-8527acbe7b34","request":{"method":"POST","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/default","description":"<p>Get the default group template.</p>\n<p>This will retrieve the available logical devices along with the default values that should be used in order to create a valid template.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","default"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"7b528ac1-80ff-a396-c479-353e1c75e59d","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/default"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"476","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:01:11 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"71","body":"{\"name\":null,\"model\":null,\"propertyList\":[],\"defaultProperties\":[],\"logicalDevices\":[],\"remainingLogicalDevices\":[{\"model\":\"ALR-F800\",\"name\":\"DVF-Dock-Master\",\"vendor\":\"arp\",\"uid\":\"001B5F00F323\"},{\"model\":\"ALR-F800\",\"name\":\"DVF-Dock-Slave\",\"vendor\":\"arp\",\"uid\":\"001B5F00F323\"},{\"model\":\"ALR-9900+\",\"name\":\"Devolder_Dock\",\"vendor\":\"arp\",\"uid\":\"001B5F00337B\"},{\"model\":\"ALR-9680-EMA\",\"name\":\"UsefulName\",\"vendor\":\"arp\",\"uid\":\"001B5F00BDBF\"}],\"vendor\":null,\"cronExpression\":null}"}],"_postman_id":"e0305ebf-4099-7cba-6d9e-8527acbe7b34"},{"name":"Delete group","id":"af362e0d-69a2-37b2-7549-cd1da5f76ba6","request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/{groupName}","description":"<p>Delete a group by name.</p>\n<p><b>Replace the path parameter placeholder {groupName} by the group name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","{groupName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"af362e0d-69a2-37b2-7549-cd1da5f76ba6"},{"name":"List models","id":"f26ac35f-a33d-3378-221d-2b01e1578876","request":{"method":"POST","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/model","description":"<p>List all available models that can be used to create a group template.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","model"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"f26ac35f-a33d-3378-221d-2b01e1578876"},{"name":"List groups","id":"34425707-4c87-59db-c209-b85d382553a7","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/","description":"<p>List all group templates.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/group?fields=name\n<i>This retrieves only the name of all group templates.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"34425707-4c87-59db-c209-b85d382553a7"},{"name":"Get default properties","id":"dc92b435-0eae-b843-7209-51e5da8a3b16","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/{vendor}/{model}","description":"<p>List the default properties for a specific model related to a vendor (driver)</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","{vendor}","{model}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"dc92b435-0eae-b843-7209-51e5da8a3b16"},{"name":"Get group","id":"6bcd10b1-2f3b-65c8-34b4-cf5fbdfb4668","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/{groupName}","description":"<p>Get a group by name.</p>\n<p><b>Replace the path parameter placeholder {groupName} by the group name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","{groupName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"6bcd10b1-2f3b-65c8-34b4-cf5fbdfb4668"},{"name":"Define group","id":"1750798f-0c87-14fe-04e4-3d1ba5555d73","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"GT1\",\n  \"cronExpression\":\"* * * * *\",\n  \"propertyList\": [\n  \t{\n  \t\t\"name\":\"RFAttenuation\",\n  \t\t\"value\":\"60\"\n  \t},\n  \t{\n  \t\t\"name\":\"DHCPTimeOut\",\n  \t\t\"value\":\"95\"\n  \t}\n  \t],\n  \"logicalDevices\": [\n  \t{\n  \t\t\"name\":\"S2_S\"\n  \t}\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/group","description":"<p>Create a group template.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"1750798f-0c87-14fe-04e4-3d1ba5555d73"},{"name":"Push group properties","id":"b113e8a1-f1b3-5cae-4533-55f99dddff2c","request":{"method":"POST","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/push/{groupName}","description":"<p>Push the group template properties to the defined readers within that group along with the Envoy settings.</p>\n<p><b>Replace the path parameter placeholder {groupName} by the group name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","push","{groupName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"b113e8a1-f1b3-5cae-4533-55f99dddff2c"},{"name":"Update group firmware","id":"542b020c-261c-0919-aff9-148718cc91c9","request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/group/update-firmware/{groupName}","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","update-firmware","{groupName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"542b020c-261c-0919-aff9-148718cc91c9"},{"name":"Bulk delete logical device groups","id":"f00d3de1-a459-4992-bc40-619e37fe8aa3","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"logicaldevicegroups\":[\n    {\n      \"name\":\"{ldGroup1}\"\n    },\n    {\n      \"name\":\"{ldGroup2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/group/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","group","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"f00d3de1-a459-4992-bc40-619e37fe8aa3"}],"id":"160bd412-1ed1-368b-4695-7f780d2e870f","description":"<p>Contains all API references regarding group templates.</p>\n","_postman_id":"160bd412-1ed1-368b-4695-7f780d2e870f"},{"name":"Import","item":[{"name":"Upload readers file","id":"fe81067c-3382-4dab-8eb9-8b6e47a71f02","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded"}],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/import/reader","description":"<p>Upload csv file with readers info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","import","reader"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"bd7874a9-1225-4955-83c3-34017873ad86","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded"}],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/reader"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"345","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 08:24:07 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"readers\":[{\"uid\":\"001B5F00C4D1\",\"ip\":\"10.0.0.100\",\"vendor\":\"arp\",\"port\":\"0\",\"secure\":\"false\",\"username\":\"alien\",\"password\":\"password\",\"status\":\"Updated\"},{\"uid\":\"001B5F00BDBF\",\"ip\":\"10.0.0.182\",\"vendor\":\"arp\",\"port\":\"0\",\"secure\":\"false\",\"username\":\"alien\",\"password\":\"password\",\"status\":\"Added\"}],\"uuid\":\"8884dd96-f54c-488c-8da7-23cd7b3404b3\"}"}],"_postman_id":"fe81067c-3382-4dab-8eb9-8b6e47a71f02"},{"name":"Import selected readers","id":"71836525-4cdd-44a7-b074-ed5d9feb58cb","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"readers\":[\n    {\n      \"uid\":\"{readerMACAddress}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/reader","description":"<p>Import selected readers after uploading the file. The call expects the file's generated UUID and the readers' UIDs.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","reader"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"6e148a30-e4dd-48ae-95ec-2972d0db2ee9","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"8884dd96-f54c-488c-8da7-23cd7b3404b3\",\n\t\"readers\":[\n\t\t{\n\t\t\t\"uid\":\"001B5F00BDBF\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/reader"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"130","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 08:24:44 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"readers\":[{\"uid\":\"001B5F00BDBF\",\"ip\":\"10.0.0.182\",\"vendor\":\"arp\",\"success\":true}],\"uuid\":\"8884dd96-f54c-488c-8da7-23cd7b3404b3\"}"}],"_postman_id":"71836525-4cdd-44a7-b074-ed5d9feb58cb"},{"name":"Upload logical devices file","id":"3a38c189-b83c-4dbb-9974-314b4b6e87b6","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/logical-device","description":"<p>Upload csv file with logical devices info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","logical-device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"db72c0b3-ea55-4923-a286-afcc85953364","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/logical-device"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"951","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 08:50:20 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"logicaldevices\":[{\"name\":\"Generate\",\"uid\":\"001B5F00C4D1\",\"antenna\":\"0,1,2,3\",\"composite\":false,\"readerIP\":\"10.0.0.100\",\"readerUid\":\"001B5F00C4D1\",\"readerVendor\":\"arp\",\"status\":\"Updated\"},{\"name\":\"Receive_RFID_Box_01\",\"uid\":\"001B5F00BDBF\",\"antenna\":\"0,1,2,3\",\"composite\":false,\"readerIP\":\"10.0.0.182\",\"readerUid\":\"001B5F00BDBF\",\"readerVendor\":\"arp\",\"status\":\"Updated\"},{\"name\":\"Shipping_Dock_02\",\"uid\":\"001B5F00C4D1\",\"antenna\":\"0,1,2,3\",\"composite\":false,\"readerIP\":\"10.0.0.100\",\"readerUid\":\"001B5F00C4D1\",\"readerVendor\":\"arp\",\"status\":\"Updated\"},{\"name\":\"Shipping_Dock_03\",\"uid\":\"001B5F00C4D1\",\"antenna\":\"0,1,2,3\",\"composite\":false,\"readerIP\":\"10.0.0.100\",\"readerUid\":\"001B5F00C4D1\",\"readerVendor\":\"arp\",\"status\":\"Updated\"},{\"name\":\"Shipping_Dock_04\",\"uid\":\"001B5F00C4D1\",\"antenna\":\"0,1,2,3\",\"composite\":false,\"readerIP\":\"10.0.0.100\",\"readerUid\":\"001B5F00C4D1\",\"readerVendor\":\"arp\",\"status\":\"Updated\"}],\"uuid\":\"d1d5dafd-32f2-49c7-bcad-e6d44b997da3\"}"}],"_postman_id":"3a38c189-b83c-4dbb-9974-314b4b6e87b6"},{"name":"Import selected logical devices","id":"beac7e5c-c25d-4043-bf5c-7803524b42b2","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"logicaldevices\":[\n    {\n      \"name\":\"{logicalDeviceName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/logical-device","description":"<p>Import selected logical devices after uploading the file. The call expects the file's generated UUID and the logical devices' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","logical-device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"b02c1240-b096-43c6-97bf-b2cc091d1600","name":"sample-reponse","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"d1d5dafd-32f2-49c7-bcad-e6d44b997da3\",\n\t\"logicaldevices\":[\n\t\t{\n\t\t\t\"name\":\"Shipping_Dock_04\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/logical-device"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"127","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 08:52:46 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"logicaldevices\":[{\"name\":\"Shipping_Dock_04\",\"composite\":false,\"success\":true}],\"uuid\":\"d1d5dafd-32f2-49c7-bcad-e6d44b997da3\"}"}],"_postman_id":"beac7e5c-c25d-4043-bf5c-7803524b42b2"},{"name":"Upload external devices file","id":"0dba1ce4-c5d1-4d50-86da-febee9e66af0","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/device","description":"<p>Upload csv file with external devices info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"ec53d769-f571-4794-952d-b3cb549dbac9","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/device"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"282","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 08:59:02 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"externaldevices\":[{\"name\":\"DEMO_SENSOR\",\"type\":\"input\",\"readerUid\":\"001B5F00BDBF\",\"readerIP\":\"10.0.0.182\",\"status\":\"Added\"},{\"name\":\"DOCKDOOR_20\",\"type\":\"output\",\"readerUid\":\"001B5F00C4D1\",\"readerIP\":\"10.0.0.100\",\"status\":\"Updated\"}],\"uuid\":\"0cc889a0-7cb2-4810-b182-e18b9080a934\"}"}],"_postman_id":"0dba1ce4-c5d1-4d50-86da-febee9e66af0"},{"name":"Import selected external devices ","id":"0b6946dd-1fb3-4f8b-ba9d-457790ddc6e5","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"externaldevices\":[\n    {\n      \"name\":\"{externalDeviceName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/device","description":"<p>Import selected external devices after uploading the file. The call expects the file's generated UUID and the external devices' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"81cba6eb-4a11-4781-8be5-7badcff154ab","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"0cc889a0-7cb2-4810-b182-e18b9080a934\",\n\t\"externaldevices\":[\n\t\t{\n\t\t\t\"name\":\"DOCKDOOR_20\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"DEMO_SENSOR\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/device"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"143","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 08:59:27 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"externaldevices\":[{\"name\":\"DOCKDOOR_20\",\"success\":true},{\"name\":\"DEMO_SENSOR\",\"success\":true}],\"uuid\":\"0cc889a0-7cb2-4810-b182-e18b9080a934\"}"}],"_postman_id":"0b6946dd-1fb3-4f8b-ba9d-457790ddc6e5"},{"name":"Upload external device templates","id":"04e02082-42ba-4d3d-8fb7-4d4fb03ab4b4","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/device-type","description":"<p>Upload csv file with external device templates info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","device-type"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"b3625660-694f-46ad-92c1-811dbfe1cc79","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/device-type"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"133","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:04:01 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"externaldevicetypes\":[{\"name\":\"4-Way Stack Light\",\"type\":\"output\",\"status\":\"Added\"}],\"uuid\":\"5ca772f3-7393-4aaf-9e36-cbd72bfd83f6\"}"}],"_postman_id":"04e02082-42ba-4d3d-8fb7-4d4fb03ab4b4"},{"name":"Import selected external device templates","id":"46b445dc-90c1-4bae-ab7f-d760cf03b12f","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"generatedUUID\",\n  \"externaldevicetypes\":[\n    {\n      \"name\":\"externalDeviceTypeName\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/device-type","description":"<p>Import selected external device templates after uploading the file. The call expects the file's generated UUID and the device types' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","device-type"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"bd60b41a-bc44-4d2d-8dea-f6b8bc392e1b","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"5ca772f3-7393-4aaf-9e36-cbd72bfd83f6\",\n\t\"externaldevicetypes\":[\n\t\t{\n\t\t\t\"name\":\"4-Way Stack Light\"\n\t\t}\t\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/device-type"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"115","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:04:36 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"externaldevicetypes\":[{\"name\":\"4-Way Stack Light\",\"success\":true}],\"uuid\":\"5ca772f3-7393-4aaf-9e36-cbd72bfd83f6\"}"}],"_postman_id":"46b445dc-90c1-4bae-ab7f-d760cf03b12f"},{"name":"Upload subscribers file","id":"8d64bcee-238c-4fa3-b7ea-f59e0db0cde4","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/subscription","description":"<p>Upload csv file with subscribers info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","subscription"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"a0d90650-6f99-4c18-bae9-a4f1b74c63c6","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/subscription"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"307","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:15:36 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"subscribers\":[{\"description\":\"Debug-EMC\",\"address\":\"10.0.0.79\",\"port\":55555,\"status\":\"Updated\"},{\"description\":\"pubsub\",\"address\":\"127.0.0.1\",\"port\":10472,\"status\":\"Updated\"},{\"description\":\"tagstream\",\"address\":\"10.0.0.108\",\"port\":12352,\"status\":\"Updated\"}],\"uuid\":\"bd84a1dc-4c9c-485b-b289-6cf3a1a6f42b\"}"}],"_postman_id":"8d64bcee-238c-4fa3-b7ea-f59e0db0cde4"},{"name":"Import selected subscribers","id":"5625697a-2410-4b5f-84ee-2038e0667247","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"subscribers\":[\n    {\n      \"description\":\"{subscriberName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/subscription","description":"<p>Import selected subscribers after uploading the file. The call expects the file's generated UUID and the subscribers' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","subscription"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"65c2234d-eff1-47b3-86dd-f3a2d63fe749","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"bd84a1dc-4c9c-485b-b289-6cf3a1a6f42b\",\n\t\"subscribers\":[\n\t\t{\n\t\t\t\"description\":\"tagstream\"\n\t\t},\n\t\t{\n\t\t\t\"description\":\"pubsub\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/subscription"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"164","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:17:29 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"subscribers\":[{\"description\":\"tagstream\",\"port\":0,\"success\":true},{\"description\":\"pubsub\",\"port\":0,\"success\":true}],\"uuid\":\"bd84a1dc-4c9c-485b-b289-6cf3a1a6f42b\"}"}],"_postman_id":"5625697a-2410-4b5f-84ee-2038e0667247"},{"name":"Upload activities file","id":"a2afa64f-8ce2-4e29-8086-2318108d2cbe","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/activity","description":"<p>Upload csv file with activities info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","activity"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"feb16daa-1048-49bc-a31d-ca652a5c302e","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/activity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"1520","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:21:48 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"activities\":[{\"name\":\"A01_ReadTags\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Updated\"},{\"name\":\"A02_StreamTags\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Added\"},{\"name\":\"A03_ReadAndSend\",\"category\":\"A-Tag Reading\",\"return_type\":\"String\",\"status\":\"Updated\"},{\"name\":\"A04_ReadTagsPersist\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Updated\"},{\"name\":\"A05_StreamTagsPersist\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Updated\"},{\"name\":\"A06_ReadAndPublish\",\"category\":\"A-Tag Reading\",\"return_type\":\"String\",\"status\":\"Updated\"},{\"name\":\"A07_SequentialRead\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Updated\"},{\"name\":\"A08_SequentialReadAndSend\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Updated\"},{\"name\":\"A09_SequentialReadAndPublish\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Added\"},{\"name\":\"A10_ReadAndSendToTagViewer\",\"category\":\"A-Tag Reading\",\"return_type\":\"String\",\"status\":\"Updated\"},{\"name\":\"A11_SequentialReadAndSendToTagViewer\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Updated\"},{\"name\":\"A12_StreamAggregateAndProcessTags\",\"category\":\"A-Tag Reading\",\"return_type\":\"ArrayList\\u003cProperties\\u003e\",\"status\":\"Updated\"}],\"uuid\":\"54640d28-3722-4f61-ac4c-ad3f0dd65a71\"}"}],"_postman_id":"a2afa64f-8ce2-4e29-8086-2318108d2cbe"},{"name":"Import selected activities","id":"6d09e997-f967-4a15-a90a-909491c23b5b","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"activities\":[\n    {\n      \"name\":\"{activityName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/activity","description":"<p>Import selected activities after uploading the file. The call expects the file's generated UUID and the activities' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","activity"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"8ecfc15e-221a-42cb-b981-6a2a96dd3f61","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"54640d28-3722-4f61-ac4c-ad3f0dd65a71\",\n\t\"activities\":[\n\t\t{\n\t\t\t\"name\":\"A02_StreamTags\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"A09_SequentialReadAndPublish\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/activity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"158","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:22:57 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"activities\":[{\"name\":\"A02_StreamTags\",\"success\":true},{\"name\":\"A09_SequentialReadAndPublish\",\"success\":true}],\"uuid\":\"54640d28-3722-4f61-ac4c-ad3f0dd65a71\"}"}],"_postman_id":"6d09e997-f967-4a15-a90a-909491c23b5b"},{"name":"Upload workflows file","id":"2c37b2cc-b838-40dd-86f5-18f721961249","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/workflow","description":"<p>Upload csv file with workflows info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","workflow"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"2bbc9883-348c-4895-ac38-2a03dfd5cf8d","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/workflow"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"138","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:26:59 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"workflows\":[{\"name\":\"Generate_READ\",\"status\":\"Updated\"},{\"name\":\"demo\",\"status\":\"Added\"}],\"uuid\":\"b611271b-67b8-42e3-808a-a51690fa6185\"}"}],"_postman_id":"2c37b2cc-b838-40dd-86f5-18f721961249"},{"name":"Import selected workflows","id":"a3eb3195-1bf0-4768-8e1c-22c30978ea70","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"workflows\":[\n    {\n      \"name\":\"{workflowName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/workflow","description":"<p>Import selected workflows after uploading the file. The call expects the file's generated UUID and the workflows' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","workflow"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"17976de1-2624-4771-ab97-ad26afd062b1","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"b611271b-67b8-42e3-808a-a51690fa6185\",\n\t\"workflows\":[\n\t\t{\n\t\t\t\"name\":\"demo\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/workflow"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"92","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:27:26 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"workflows\":[{\"name\":\"demo\",\"success\":true}],\"uuid\":\"b611271b-67b8-42e3-808a-a51690fa6185\"}"}],"_postman_id":"a3eb3195-1bf0-4768-8e1c-22c30978ea70"},{"name":"Upload global settings file","id":"1b844c50-87b6-47bf-bacf-9f529c0dbeb2","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/global","description":"<p>Upload csv file with global settings info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","global"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"71a379e6-8247-498a-b161-4f32bbab2cf4","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/global"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"185","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:30:41 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"globalsettings\":[{\"name\":\"MYSQL_DBNAME\",\"value\":\"tags\",\"status\":\"Added\"},{\"name\":\"MYSQL_HOST\",\"value\":\"192.168.1.208\",\"status\":\"Added\"}],\"uuid\":\"8db3c0ff-675c-4a48-a34b-288bd2ea6065\"}"}],"_postman_id":"1b844c50-87b6-47bf-bacf-9f529c0dbeb2"},{"name":"Import selected global settings","id":"af30c5ed-9e9c-4de3-830b-f5503cd14ab5","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"globalsettings\":[\n    {\n      \"name\":\"{globalSettingsName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/global","description":"<p>Import selected global settings after uploading the file. The call expects the file's generated UUID and the global settings' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","global"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"3f7f55cd-4777-4efa-be7b-70a0d184b653","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"8db3c0ff-675c-4a48-a34b-288bd2ea6065\",\n\t\"globalsettings\":[\n\t\t{\n\t\t\t\"name\":\"MYSQL_DBNAME\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"MYSQL_HOST\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/global"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"142","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:31:28 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"globalsettings\":[{\"name\":\"MYSQL_DBNAME\",\"success\":true},{\"name\":\"MYSQL_HOST\",\"success\":true}],\"uuid\":\"8db3c0ff-675c-4a48-a34b-288bd2ea6065\"}"}],"_postman_id":"af30c5ed-9e9c-4de3-830b-f5503cd14ab5"},{"name":"Upload data fields file","id":"b3801f00-475f-40a1-840c-76ba9e52a4a7","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/template","description":"<p>Upload csv file with data fields info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","template"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"facc272f-ee85-4da1-b337-17d10201b78d","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/template"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"134","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:34:52 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"datafields\":[{\"name\":\"df_test\",\"status\":\"Updated\"},{\"name\":\"COO\",\"status\":\"Updated\"}],\"uuid\":\"c41f6879-3b33-4f44-8239-360275d11ebe\"}"}],"_postman_id":"b3801f00-475f-40a1-840c-76ba9e52a4a7"},{"name":"Import selected data fields","id":"95c58ff5-7c36-4550-b549-37636d9e8223","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"datafields\":[\n    {\n      \"name\":\"{datafieldName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/template","description":"<p>Import selected data fields after uploading the file. The call expects the file's generated UUID and the data fields' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","template"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"36b457ee-2896-4a77-9ce4-3287ca95f426","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"c41f6879-3b33-4f44-8239-360275d11ebe\",\n\t\"datafields\":[\n\t\t{\n\t\t\t\"name\":\"COO\"\n\t\t},\n\t\t{\n\t\t\t\"name\":\"df_test\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/template"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"126","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:35:28 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"datafields\":[{\"name\":\"COO\",\"success\":true},{\"name\":\"df_test\",\"success\":true}],\"uuid\":\"c41f6879-3b33-4f44-8239-360275d11ebe\"}"}],"_postman_id":"95c58ff5-7c36-4550-b549-37636d9e8223"},{"name":"Upload reports file","id":"84c0c110-f5a5-4a92-8dcc-b81cebf62c3e","request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/report","description":"<p>Upload csv file with reports info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","report"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"5138dbad-e3c2-4a5c-ac3c-e15da178ead0","name":"sample-response","originalRequest":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/report"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"144","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:38:14 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"reports\":[{\"reportName\":\"General\",\"status\":\"Updated\"},{\"reportName\":\"custom\",\"status\":\"Added\"}],\"uuid\":\"4088464c-e395-405f-8506-8c9a7e659bd8\"}"}],"_postman_id":"84c0c110-f5a5-4a92-8dcc-b81cebf62c3e"},{"name":"Import selected reports","id":"75a4b780-ce61-46b6-8623-4afb4da7c0ed","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"reports\":[\n    {\n      \"reportName\":\"{reportName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/report","description":"<p>Import selected reports after uploading the file. The call expects the file's generated UUID and the reports' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","report"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"cab51f33-61b4-4582-ac07-ce5b2b9ed505","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"4088464c-e395-405f-8506-8c9a7e659bd8\",\n\t\"reports\":[\n\t\t{\n\t\t\t\"reportName\":\"custom\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/report"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"98","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:38:53 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"reports\":[{\"reportName\":\"custom\",\"success\":true}],\"uuid\":\"4088464c-e395-405f-8506-8c9a7e659bd8\"}"}],"_postman_id":"75a4b780-ce61-46b6-8623-4afb4da7c0ed"},{"name":"Upload logical device groups file","id":"a7454cde-32da-4bee-afa1-fcfdc10a7605","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded"}],"body":{"mode":"formdata","formdata":[{"key":"file","value":null,"type":"file"}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/group","description":"<p>Upload csv file with logical device groups info. The call will generate a UUID for the file and return the file's info for the user to choose what to import.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","group"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"efee1330-68dc-4904-bc9b-15f58811bf32","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/x-www-form-urlencoded"}],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":null}]},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/group"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"127","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:42:43 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"logicaldevicegroups\":[{\"name\":\"test\",\"model\":\"ALR-9900+EMA\",\"status\":\"Added\"}],\"uuid\":\"25293af6-afff-45ef-8bc4-0609005e9c1d\"}"}],"_postman_id":"a7454cde-32da-4bee-afa1-fcfdc10a7605"},{"name":"Import selected logical device groups","id":"d831a34e-6188-492a-a884-cc1bb03e2d80","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uuid\":\"{generatedUUID}\",\n  \"logicaldevicegroups\":[\n    {\n      \"name\":\"{logicalDeviceGroupName}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/group","description":"<p>Import selected logical device groups after uploading the file. The call expects the file's generated UUID and the logical device groups' names.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","importexport","import","selective","group"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"6f6dbe3e-13d2-4298-9391-30e180490f33","name":"sample-response","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"uuid\":\"25293af6-afff-45ef-8bc4-0609005e9c1d\",\n\t\"logicaldevicegroups\":[\n\t\t{\n\t\t\t\"name\":\"test\"\n\t\t}\n\t]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/importexport/import/selective/group"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"102","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 09:43:13 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\"logicaldevicegroups\":[{\"name\":\"test\",\"success\":true}],\"uuid\":\"25293af6-afff-45ef-8bc4-0609005e9c1d\"}"}],"_postman_id":"d831a34e-6188-492a-a884-cc1bb03e2d80"}],"id":"95d8ba0f-0cca-4a2b-8180-2350256fa15d","description":"<p>Contains all API references regarding importing data.</p>\n","_postman_id":"95d8ba0f-0cca-4a2b-8180-2350256fa15d"},{"name":"IOState","item":[{"name":"List IO states","id":"1ac2d60e-2a6f-4fdb-ac36-dddf20f843d2","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/iostate/device","description":"<p>List the IO states for all devices.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","iostate","device"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"1ac2d60e-2a6f-4fdb-ac36-dddf20f843d2"},{"name":"Get IO state","id":"08553c01-0d36-423e-9036-07ecccac9820","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/iostate/device/{deviceName}","description":"<p>Get the IO state for a specific device.</p>\n<p><b>Replace the path parameter placeholder {deviceName} by the device name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","iostate","device","{deviceName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"08553c01-0d36-423e-9036-07ecccac9820"},{"name":"Get IO states queue and flicker status of running devices","id":"a9d02c46-72b8-40ac-b2c7-e11cbc97086f","request":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/iostate/flicker","description":"<p>Retrieves IO state history and flicker history of input devices.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","iostate","flicker"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"a9d02c46-72b8-40ac-b2c7-e11cbc97086f"},{"name":"Get IO states queue and flicker status of a specific device","id":"5f47b1f0-e0a4-4882-a8a9-55a516b4c9ae","request":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/iostate/flicker/{deviceName}","description":"<p>Retrieves IO state history and flicker history of an input device.</p>\n<p><b>Replace the path parameter placeholder {deviceName} by the external device name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","iostate","flicker","{deviceName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"135cafa8-9c8e-4d84-b25b-050acdb9336a","name":"sample-response","originalRequest":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/iostate/flicker/DEMO_SENSOR"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"429","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Mon, 21 Jan 2019 15:50:02 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"1D4D65F45D77411784EBBC5B3D7AE3C9","key":"JSESSIONID"}],"responseTime":null,"body":"{\n  \"ioStatesQueue\": [\n    {\n      \"currentAction\": \"On\",\n      \"timeStamp\": 1548085294115\n    },\n    {\n      \"currentAction\": \"Off\",\n      \"timeStamp\": 1548085294404\n    },\n    {\n      \"currentAction\": \"On\",\n      \"timeStamp\": 1548085294404\n    },\n    {\n      \"currentAction\": \"Off\",\n      \"timeStamp\": 1548085294692\n    },\n    {\n      \"currentAction\": \"On\",\n      \"timeStamp\": 1548085294693\n    }\n  ],\n  \"isFlickering\": false\n}"}],"_postman_id":"5f47b1f0-e0a4-4882-a8a9-55a516b4c9ae"}],"id":"6741564b-42c5-e576-5676-2ad2681d0a57","description":"<p>Contains all API references regarding the io state.</p>\n","_postman_id":"6741564b-42c5-e576-5676-2ad2681d0a57"},{"name":"Log Level","item":[{"name":"Get the log level","id":"53a6cf19-4a43-6981-d980-4acf4df2deae","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/loglevel/","description":"<p>Get the current log level.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","loglevel",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"192d42cd-0fd1-c4d8-e66d-4375ec97e305","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/loglevel/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"19","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:04:11 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"124","body":"{\"logLevel\":\"INFO\"}"}],"_postman_id":"53a6cf19-4a43-6981-d980-4acf4df2deae"},{"name":"Change the log level","id":"bda13009-5e5c-1a66-f030-c2bdaf849745","request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/loglevel/{level}","description":"<p>Change the current log level.</p>\n<p><b>Replace the {level} path parameter with the appropriate log level.</b></p>\n<pre>Example: http:10.0.0.74:8080/api/loglevel/DEBUG\n<i>This will change the log level to DEBUG mode.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","loglevel","{level}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"bda13009-5e5c-1a66-f030-c2bdaf849745"}],"id":"11ad2701-a696-2cf9-d3f1-db95fd615cea","_postman_id":"11ad2701-a696-2cf9-d3f1-db95fd615cea","description":""},{"name":"Logical Device","item":[{"name":"List logical devices","id":"f19f723d-0e2b-41ea-e92b-bb3a0dd1658d","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/","description":"<p>List all logical devices.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/logical-device?fields=name\n<i>This retrieves only the name of all logical devices.</i></pre>\n\n<pre>Example: http://10.0.0.74:8080/ALE/api/logical-device?fields=name;uid\n<i>This retrieves only the name and uuid of all logical devices.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","logical-device",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"aba8cd7a-8eaa-8585-6aaa-ce6709e5d278","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"960","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 10:52:05 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"162","body":"[\n  {\n    \"name\": \"DVF-Dock\",\n    \"composite\": true,\n    \"logicalReaders\": [\n      \"DVF-Dock-Master\",\n      \"DVF-Dock-Slave\"\n    ],\n    \"vendor\": \"\",\n    \"uid\": \"\",\n    \"antennas\": []\n  },\n  {\n    \"name\": \"DVF-Dock-Master\",\n    \"composite\": false,\n    \"logicalReaders\": [],\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00F323\",\n    \"antennas\": [\n      0,\n      1,\n      2,\n      3\n    ]\n  },\n  {\n    \"name\": \"DVF-Dock-Slave\",\n    \"composite\": false,\n    \"logicalReaders\": [],\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00F323\",\n    \"antennas\": [\n      0,\n      1,\n      2,\n      3\n    ]\n  },\n  {\n    \"name\": \"Devolder_Dock\",\n    \"composite\": false,\n    \"logicalReaders\": [],\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00337B\",\n    \"antennas\": [\n      0,\n      1,\n      2,\n      3\n    ]\n  },\n  {\n    \"name\": \"UsefulName\",\n    \"composite\": false,\n    \"logicalReaders\": [],\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00BDBF\",\n    \"antennas\": [\n      0,\n      1,\n      3\n    ]\n  }\n]"}],"_postman_id":"f19f723d-0e2b-41ea-e92b-bb3a0dd1658d"},{"name":"Delete logical device","id":"a43ded4d-7855-f029-3acd-e26fc7a2adf0","request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/{logicalDeviceName}","description":"<p>Delete a logical device by name.</p>\n<p><b>Replace {logicalDeviceName} by the name of the logical device.</b></p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/logical-device/LD1</pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","logical-device","{logicalDeviceName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"a43ded4d-7855-f029-3acd-e26fc7a2adf0"},{"name":"Get logical device","id":"dc0258e5-9304-d283-7573-4bfcb420b109","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/{logicalDeviceName}","description":"<p>Fetch a logical device by name.</p>\n<p><b>Replace the path parameter placeholder {logicalDeviceName} by the logical device name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","logical-device","{logicalDeviceName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"e30e5057-4494-feb5-75ce-17410cc1b471","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/DVF-Dock"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"147","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 10:56:33 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"162","body":"{\"sampleProperty\":null,\"name\":\"DVF-Dock\",\"composite\":true,\"logicalReaders\":[\"DVF-Dock-Master\",\"DVF-Dock-Slave\"],\"vendor\":\"\",\"uid\":\"\",\"antennas\":[]}"}],"_postman_id":"dc0258e5-9304-d283-7573-4bfcb420b109"},{"name":"Delete logical devices","id":"4e576dd2-2b49-ccce-5033-3f134742115a","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{LogicalDeviceName1}\",\n  \"{LogicalDeviceName2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/delete","description":"<p>Delete a bundle of logical devices by name.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","logical-device","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"4e576dd2-2b49-ccce-5033-3f134742115a"},{"name":"Define logical device","id":"49cb6523-9a96-a923-71ce-73cbc81209ac","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"Demo\",\n  \"composite\": false,\n  \"logicalReaders\": null,\n  \"vendor\": \"arp\",\n  \"uid\": \"001B5F00BDBF\",\n  \"antennas\": [\n    0,\n    1,\n    2\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/","description":"<p>Create/Update logical device.</p>\n<p>A logical device is indexed by its name.</p>\n<p>A logical device may be a composite (one logical device composed of many other logical devices) or non-composite. If a logical device is composite is must define an array of logical readers (logical devices' name).</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","logical-device",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"49cb6523-9a96-a923-71ce-73cbc81209ac"},{"name":"Bulk delete logical devices","id":"fec4e509-5422-4e24-911d-3efb8a0c8747","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"logicaldevices\":[\n    {\n      \"name\":\"{logicalDeviceName1}\"\n    },\n    {\n      \"name\":\"{logicalDeviceName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/logical-device/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","logical-device","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"fec4e509-5422-4e24-911d-3efb8a0c8747"}],"id":"2943d3c1-0201-e0ec-cfa3-7bef77299fc5","description":"<p>Contains all API references regarding logical devices.</p>\n","_postman_id":"2943d3c1-0201-e0ec-cfa3-7bef77299fc5"},{"name":"Property","item":[{"name":"Get property","id":"70f0aaef-f9fc-855d-512d-8a686bbca95c","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/property/{propertyName}","description":"<p>Retrieve the property according to the property name.</p>\n<p><b>Replace the {propertyName} path parameter by the appropriate property name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","property","{propertyName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"272bef05-3a75-f4a3-528a-8167e81b8cd4","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/property/something"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"20","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:05:08 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"36","body":"{\"value\":\"valuable\"}"}],"_postman_id":"70f0aaef-f9fc-855d-512d-8a686bbca95c"},{"name":"Set property","id":"7d2b4734-ac66-f0ee-fbef-f509c306c460","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"key\":\"{propertyName}\",\n\t\"value\":\"{propertyValue}\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/property/","description":"<p>Set property.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","property",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"7d2b4734-ac66-f0ee-fbef-f509c306c460"}],"id":"3ff80b09-ff6e-fd8d-a74c-002975ad590d","_postman_id":"3ff80b09-ff6e-fd8d-a74c-002975ad590d","description":""},{"name":"Reader","item":[{"name":"Get readers","id":"b62f5bfc-df77-4e0b-b5ec-ce171262728a","request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"vendor\":\"arp\",\n  \"ip\":\"10.0.0.11\",\n  \n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/","description":"<p>Get all readers with a description if available.</p>\n<p>This path support properties filtering.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/reader?fields=uid;ipAdress\n<i>This will only return the uid and the ipAdress of each reader.</i></pre>\n\n<p>This path also support level 1 search.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/reader?down=false&amp;enabled=true\n<i>This will only return the readers that have<br />the property down = false and the property enabled = true</i></pre>\n\n<p>You can combine filtering and searching.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/reader?fields=uid;ipAdress&amp;down=false&amp;enabled=true\n<i>This will only retrieve the uid and ipAdress<br />of the readers that have the property down = false and enabled = true</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"8dcb2700-0b32-487a-b746-4b0352ccb9c5","name":"sample-response","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"vendor\":\"arp\",\n  \"ip\":\"10.0.0.11\",\n  \n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Wed, 13 Feb 2019 18:39:09 GMT","name":"Date","description":"The date and time that the message was sent"},{"key":"Transfer-Encoding","value":"chunked","name":"Transfer-Encoding","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.243","path":"/ALE","secure":false,"value":"6EDFB5A67F1AA94C7F7A4CDCD018E5F8","key":"JSESSIONID"}],"responseTime":null,"body":"[\n  {\n    \"description\": {\n      \"readerName\": \"Reader N123\",\n      \"readerVersion\": \"17.04.07.00B\",\n      \"readerModel\": \"ALR-9900+EMA\"\n    },\n    \"sampleProperty\": null,\n    \"enabled\": true,\n    \"down\": false,\n    \"uid\": \"001B5F00C4D1\",\n    \"macAdress\": null,\n    \"ipAdress\": \"10.0.0.100\",\n    \"port\": 23.0,\n    \"secure\": false,\n    \"vendor\": \"arp\",\n    \"pins\": [\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 5.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 6.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 7.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 8.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"authentication\": {\n      \"sampleProperty\": null,\n      \"name\": null,\n      \"properties\": []\n    },\n    \"properties\": [],\n    \"antennas\": [\n      {\n        \"sampleProperty\": null,\n        \"id\": 0.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 1.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 2.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 3.0,\n        \"enabled\": false\n      }\n    ]\n  },\n  {\n    \"description\": {\n      \"readerName\": \"Alien RFID Reader\",\n      \"readerVersion\": \"18.02.28.00\",\n      \"readerModel\": \"ALR-F800\"\n    },\n    \"sampleProperty\": null,\n    \"enabled\": true,\n    \"down\": true,\n    \"uid\": \"001B5F011A91\",\n    \"macAdress\": null,\n    \"ipAdress\": \"10.103.160.143\",\n    \"port\": 0.0,\n    \"secure\": false,\n    \"vendor\": \"arp\",\n    \"pins\": [\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 5.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 6.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 7.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 8.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"authentication\": {\n      \"sampleProperty\": null,\n      \"name\": null,\n      \"properties\": []\n    },\n    \"properties\": [],\n    \"antennas\": [\n      {\n        \"sampleProperty\": null,\n        \"id\": 0.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 1.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 2.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 3.0,\n        \"enabled\": false\n      }\n    ]\n  },\n  {\n    \"description\": {\n      \"readerName\": \"Alien RFID Reader\",\n      \"readerVersion\": \"18.02.28.00\",\n      \"readerModel\": \"ALR-F800\"\n    },\n    \"sampleProperty\": null,\n    \"enabled\": true,\n    \"down\": true,\n    \"uid\": \"001B5F01145A\",\n    \"macAdress\": null,\n    \"ipAdress\": \"10.103.160.145\",\n    \"port\": 0.0,\n    \"secure\": false,\n    \"vendor\": \"arp\",\n    \"pins\": [\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"output\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"output\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"output\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"output\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 5.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"output\",\n        \"number\": 6.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 7.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 8.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": true,\n        \"type\": \"input\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"authentication\": {\n      \"sampleProperty\": null,\n      \"name\": null,\n      \"properties\": []\n    },\n    \"properties\": [],\n    \"antennas\": [\n      {\n        \"sampleProperty\": null,\n        \"id\": 0.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 1.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 2.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 3.0,\n        \"enabled\": false\n      }\n    ]\n  },\n  {\n    \"description\": {\n      \"readerName\": \"Alien RFID Reader\",\n      \"readerVersion\": \"18.02.28.00\",\n      \"readerModel\": \"ALR-F800\"\n    },\n    \"sampleProperty\": null,\n    \"enabled\": true,\n    \"down\": true,\n    \"uid\": \"001B5F010DF5\",\n    \"macAdress\": null,\n    \"ipAdress\": \"10.103.160.144\",\n    \"port\": 0.0,\n    \"secure\": false,\n    \"vendor\": \"arp\",\n    \"pins\": [\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 5.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 6.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 7.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 8.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"authentication\": {\n      \"sampleProperty\": null,\n      \"name\": null,\n      \"properties\": []\n    },\n    \"properties\": [],\n    \"antennas\": [\n      {\n        \"sampleProperty\": null,\n        \"id\": 0.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 1.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 2.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 3.0,\n        \"enabled\": false\n      }\n    ]\n  },\n  {\n    \"description\": {\n      \"readerName\": \"Alien RFID Reader\",\n      \"readerVersion\": \"18.09.24.00\",\n      \"readerModel\": \"ALR-F800\"\n    },\n    \"sampleProperty\": null,\n    \"enabled\": false,\n    \"down\": true,\n    \"uid\": \"001B5F0108DA\",\n    \"macAdress\": \"001B5F0108DA\",\n    \"ipAdress\": \"10.0.0.33\",\n    \"port\": 23.0,\n    \"secure\": false,\n    \"vendor\": \"arp\",\n    \"pins\": [],\n    \"authentication\": {\n      \"sampleProperty\": null,\n      \"name\": null,\n      \"properties\": []\n    },\n    \"properties\": [],\n    \"antennas\": []\n  },\n  {\n    \"description\": {\n      \"readerName\": \"Alien RFID Reader\",\n      \"readerVersion\": \"14.07.01.00\",\n      \"readerModel\": \"ALR-9680-EMA\"\n    },\n    \"sampleProperty\": null,\n    \"enabled\": false,\n    \"down\": true,\n    \"uid\": \"001B5F00BDBF\",\n    \"macAdress\": \"001B5F00BDBF\",\n    \"ipAdress\": \"10.0.0.182\",\n    \"port\": 23.0,\n    \"secure\": false,\n    \"vendor\": \"arp\",\n    \"pins\": [],\n    \"authentication\": {\n      \"sampleProperty\": null,\n      \"name\": null,\n      \"properties\": []\n    },\n    \"properties\": [],\n    \"antennas\": []\n  },\n  {\n    \"description\": {\n      \"readerName\": \"SpeedwayR-11-7A-7F\",\n      \"readerVersion\": \"5.12.3.240\",\n      \"readerModel\": \"Speedway R220\"\n    },\n    \"sampleProperty\": null,\n    \"enabled\": true,\n    \"down\": false,\n    \"uid\": \"001625117A7F\",\n    \"macAdress\": null,\n    \"ipAdress\": \"10.0.0.120\",\n    \"port\": 5084.0,\n    \"secure\": false,\n    \"vendor\": \"octane\",\n    \"pins\": [\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 2.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 3.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"sampleProperty\": null,\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 4.0,\n        \"value\": 0.0,\n        \"connection\": {\n          \"sampleProperty\": null,\n          \"number\": 0.0,\n          \"type\": \"input\"\n        }\n      }\n    ],\n    \"authentication\": {\n      \"sampleProperty\": null,\n      \"name\": null,\n      \"properties\": []\n    },\n    \"properties\": [],\n    \"antennas\": [\n      {\n        \"sampleProperty\": null,\n        \"id\": 1.0,\n        \"enabled\": false\n      },\n      {\n        \"sampleProperty\": null,\n        \"id\": 2.0,\n        \"enabled\": false\n      }\n    ]\n  }\n]"}],"_postman_id":"b62f5bfc-df77-4e0b-b5ec-ce171262728a"},{"name":"Get reader","id":"4b5dc1ff-e268-42fd-a0a6-965e4b9cd1f0","request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"vendor\":\"arp\",\n  \"ip\":\"10.0.0.11\",\n  \n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}/{uid}","description":"<p>Fetch the reader according to the vendor and uid.</p>\n<p><b>Replace the path parameter {vendor} by the vendor, and {uid} by the UID.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}","{uid}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"bfd8d22c-56c2-4dd4-ab78-8a706ff2fd45","name":"sample-response","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"vendor\":\"arp\",\n  \"ip\":\"10.0.0.11\",\n  \n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/arp/001B5F00C4D1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Length","value":"2702","name":"Content-Length","description":"The length of the response body in octets (8-bit bytes)"},{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Wed, 13 Feb 2019 18:40:47 GMT","name":"Date","description":"The date and time that the message was sent"}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.243","path":"/ALE","secure":false,"value":"6EDFB5A67F1AA94C7F7A4CDCD018E5F8","key":"JSESSIONID"}],"responseTime":null,"body":"{\n  \"description\": {\n    \"readerName\": \"Reader N123\",\n    \"readerVersion\": \"17.04.07.00B\",\n    \"readerModel\": \"ALR-9900+EMA\"\n  },\n  \"enabled\": true,\n  \"down\": false,\n  \"uid\": \"001B5F00C4D1\",\n  \"macAdress\": null,\n  \"ipAdress\": \"10.0.0.100\",\n  \"port\": 23,\n  \"secure\": false,\n  \"vendor\": \"arp\",\n  \"pins\": [\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 1,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 2,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 3,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 4,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 5,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 6,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 7,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"output\",\n      \"number\": 8,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"input\",\n      \"number\": 1,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"input\",\n      \"number\": 2,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"input\",\n      \"number\": 3,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    },\n    {\n      \"reserved\": false,\n      \"type\": \"input\",\n      \"number\": 4,\n      \"value\": 0,\n      \"connection\": {\n        \"number\": 0,\n        \"type\": \"input\"\n      }\n    }\n  ],\n  \"authentication\": {\n    \"name\": null,\n    \"properties\": []\n  },\n  \"properties\": [],\n  \"antennas\": [\n    {\n      \"id\": 0,\n      \"enabled\": false\n    },\n    {\n      \"id\": 1,\n      \"enabled\": false\n    },\n    {\n      \"id\": 2,\n      \"enabled\": false\n    },\n    {\n      \"id\": 3,\n      \"enabled\": false\n    }\n  ]\n}"}],"_postman_id":"4b5dc1ff-e268-42fd-a0a6-965e4b9cd1f0"},{"name":"Delete readers","id":"1d73fd56-a449-420f-4c21-9b261a6c381b","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n\t{\n\t\t\"vendor\":\"{vendor}\",\n\t\t\"uid\":\"{uid}\"\n\t}\n]"},"url":"http://{{host}}:{{port}}/ALE/api/reader/delete","description":"<p>Delete specific readers according to the vendor and uid.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"1d73fd56-a449-420f-4c21-9b261a6c381b"},{"name":"Get device configuration groups","event":[{"listen":"test","script":{"type":"text/javascript","exec":["tests[\"Status code is 200\"] = responseCode.code === 200;"]}}],"id":"2bd74dde-89c5-f386-581a-c3071e8910a3","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}/{uid}/config","description":"<p><b>Replace {vendor} and {uid} by the appropriate reader's vendor and uid respectively.</b></p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/reader/arp/001B5F00C4D1/config</pre>\n\n<p>This path supports field filtering.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/reader/arp/001B5F00C4D1/config?fields=groupName\n<i>Returns the configuration objects with only the group name property</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}","{uid}","config"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"abcb7196-24c4-0836-a915-c81b834e1d6e","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/arp/001B5F00BDBF/config"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:07:32 GMT","description":"The date and time that the message was sent"},{"name":"Transfer-Encoding","key":"Transfer-Encoding","value":"chunked","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[],"responseTime":"2063","body":"[\n  {\n    \"groupName\": \"General Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"ReaderName\",\n        \"displayName\": \"Reader Name\",\n        \"requireRestart\": false,\n        \"tooltip\": \"An arbitrary name to be associated with the reader.\\\\n1-254 charaters.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^.{1,254}$\",\n        \"value\": \"TestReader\",\n        \"error\": \"The Reader Name can\\u0027t be longer than 254 characters!\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"ReaderType\",\n        \"displayName\": \"Reader Type\",\n        \"requireRestart\": false,\n        \"tooltip\": \"A description of the reader type.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"Alien RFID Tag Reader, Model: ALR-9680-EMA (Four Antenna / Gen 2 / EN 302.208v1.3.1)\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"ReaderVersion\",\n        \"displayName\": \"Reader Version\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Reader software/hardware versions.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"14.07.01.00\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"DSPVersion\",\n        \"displayName\": \"DSP Version\",\n        \"requireRestart\": false,\n        \"tooltip\": \"DSP firmware version and configuration.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"DSP:02.003.050-01.003.000 reader:09 country:13 radio:32 board:21\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"ReaderNumber\",\n        \"displayName\": \"Reader Number\",\n        \"requireRestart\": false,\n        \"tooltip\": \"An arbitrary number to be associated with the reader.\\\\nBetween 1 and 255.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\\\\b0*([1-9][0-9]?|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\\\b\",\n        \"value\": \"255\",\n        \"error\": \"The Reader Number must be between 1 and 255!\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"BaudRate\",\n        \"displayName\": \"Baud Rate\",\n        \"requireRestart\": true,\n        \"tooltip\": \"The serial interface baud rate.\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"57600\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"9600\",\n            \"description\": \"9600\"\n          },\n          {\n            \"value\": \"19200\",\n            \"description\": \"19200\"\n          },\n          {\n            \"value\": \"38400\",\n            \"description\": \"38400\"\n          },\n          {\n            \"value\": \"57600\",\n            \"description\": \"57600\"\n          },\n          {\n            \"value\": \"115200\",\n            \"description\": \"115200\"\n          }\n        ]\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"Uptime\",\n        \"displayName\": \"Up Time\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Number of seconds that have elapsed since the reader was last booted.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"955900\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"MyData\",\n        \"displayName\": \"My Data\",\n        \"requireRestart\": false,\n        \"tooltip\": \"A general scratch-pad for your personal data.\\\\n0-254 characters\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^.{0,254}$\",\n        \"value\": \"MySpecial_test1\",\n        \"error\": \"My Data can\\u0027t be longer than 254 characters!\",\n        \"propertyList\": []\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Radio Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"3\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"MaxAntenna\",\n        \"displayName\": \"Max. Antenna\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The maximum addressable antenna port number.\\\\n(Total number of antennas is MaxAntenna+1).\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"3\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"0 1 2 3\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"AntennaSequence\",\n        \"displayName\": \"Antenna Sequence\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The antenna port sequence the reader will use.\",\n        \"typeEditor\": \"AntennaSequence\",\n        \"validationExpression\": \"\",\n        \"value\": \"0 1 2 3\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"0 0;1 0;2 0;3 0\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 120,\n        \"minimumValue\": 0,\n        \"name\": \"RFAttenuation\",\n        \"displayName\": \"RF Attenuation\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The amount of digital attenuation to apply to the emitted RF.\",\n        \"typeEditor\": \"RFAttenuation\",\n        \"validationExpression\": \"\",\n        \"value\": \"0 39;1 39;2 39;3 39\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"RFLevel\",\n        \"displayName\": \"RF Level\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The output power.\\\\n(RFLevel \\u003d MaxPower – RFAttenuation)\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"251\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"RFModulation\",\n        \"displayName\": \"RF Modulation\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The Class1/Gen2 modulation scheme.\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"DRM\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"STD\",\n            \"description\": \"STD\"\n          },\n          {\n            \"value\": \"HS\",\n            \"description\": \"HS\"\n          },\n          {\n            \"value\": \"DRM\",\n            \"description\": \"DRM\"\n          },\n          {\n            \"value\": \"25FM0\",\n            \"description\": \"25FM0\"\n          },\n          {\n            \"value\": \"06FM0\",\n            \"description\": \"06FM0\"\n          },\n          {\n            \"value\": \"25m4\",\n            \"description\": \"25M4\"\n          },\n          {\n            \"value\": \"12M4\",\n            \"description\": \"12M4\"\n          },\n          {\n            \"value\": \"06M4\",\n            \"description\": \"06M4\"\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Network Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"MACAddress\",\n        \"displayName\": \"MAC Address\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The Reader\\u0027s MAC address – an identifier unique to every reader.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"00:1B:5F:00:BD:BF\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"ON\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"DHCP\",\n        \"displayName\": \"DHCP\",\n        \"requireRestart\": true,\n        \"tooltip\": \"If DHCP is on, the reader automatically configures its network settings on power-up.\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"ON\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"ON\",\n            \"description\": \"ON\"\n          },\n          {\n            \"value\": \"OFF\",\n            \"description\": \"OFF\"\n          }\n        ]\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"DHCPTimeOut\",\n        \"displayName\": \"DHCP Time Out\",\n        \"requireRestart\": true,\n        \"tooltip\": \"Number of seconds the reader should wait for a reply from a DHCP server.\\\\nBetween 0 and 1000 seconds\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\\\\b0*([0-9]{1,3}|1000)\\\\b\",\n        \"value\": \"89\",\n        \"error\": \"The DHCP TimeOut must be between 0 and 1000 seconds\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": false,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"IPAddress\",\n        \"displayName\": \"IP Address\",\n        \"requireRestart\": true,\n        \"tooltip\": \"The network IP address of the reader. If DHCP isenabled this is set automatically.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\\\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$\",\n        \"value\": \"10.0.0.182\",\n        \"error\": \"Invalid IP Address Format!\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"Gateway\",\n        \"displayName\": \"Gateway\",\n        \"requireRestart\": true,\n        \"tooltip\": \"The network Gateway. If DHCP is enabled this is set automatically.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\\\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$\",\n        \"value\": \"10.0.0.1\",\n        \"error\": \"Invalid IP Address Format!\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"Netmask\",\n        \"displayName\": \"Netmask\",\n        \"requireRestart\": true,\n        \"tooltip\": \"The subnet mask. If DHCP is enabled this is set automatically.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\\\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$\",\n        \"value\": \"255.255.255.0\",\n        \"error\": \"Invalid IP Address Format!\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"DNS\",\n        \"displayName\": \"DNS\",\n        \"requireRestart\": true,\n        \"tooltip\": \"The network Domain Name Server. If DHCP is enabled this is set automatically.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\\\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$\",\n        \"value\": \"10.0.0.1\",\n        \"error\": \"Invalid IP Address Format!\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": false,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"Host\",\n        \"displayName\": \"Host\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The network Host. May be overridden by the DHCP server.\\\\n 1-16 characters.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^.{1,16}$\",\n        \"value\": \"alien-00BDBF\",\n        \"error\": \"The Host can\\u0027t be longer than 16 characters.\",\n        \"propertyList\": []\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Acquire Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"INVENTORY\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"AcquireMode\",\n        \"displayName\": \"Acquire Mode\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The inventory mode used to reads tags.\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"Global Scroll\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"INVENTORY\",\n            \"description\": \"INVENTORY\"\n          },\n          {\n            \"value\": \"GLOBAL SCROLL\",\n            \"description\": \"GLOBAL SCROLL\"\n          }\n        ]\n      },\n      {\n        \"defaultValue\": \"1\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 255,\n        \"minimumValue\": 0,\n        \"name\": \"AcqG2Cycles\",\n        \"displayName\": \"Acq G2 Cycles\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Number of acquisition cycles to perform during each Gen2 tag inventory.\",\n        \"typeEditor\": \"Slider\",\n        \"validationExpression\": \"\",\n        \"value\": \"255\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"2\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 255,\n        \"minimumValue\": 0,\n        \"name\": \"AcqG2Count\",\n        \"displayName\": \"Acq G2 Count\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Number of reads to perform in each Gen2 inventory cycle.\",\n        \"typeEditor\": \"Slider\",\n        \"validationExpression\": \"\",\n        \"value\": \"165\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"3\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 7,\n        \"minimumValue\": 0,\n        \"name\": \"AcqG2Q\",\n        \"displayName\": \"Acq G2 Q\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Starting Q value to use in each Gen2 inventory.\",\n        \"typeEditor\": \"Slider\",\n        \"validationExpression\": \"\",\n        \"value\": \"3\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"7\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 15,\n        \"minimumValue\": 0,\n        \"name\": \"AcqG2QMax\",\n        \"displayName\": \"Acq G2 Max\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Maximum value of Q parameter during Gen 2 reads.\",\n        \"typeEditor\": \"Slider\",\n        \"validationExpression\": \"\",\n        \"value\": \"5\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"1\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 255,\n        \"minimumValue\": 0,\n        \"name\": \"AcqG2Select\",\n        \"displayName\": \"Acq G2 Select\",\n        \"requireRestart\": false,\n        \"tooltip\": \"How many times a B-\\u003eA Select is issued at the start of a Gen2 inventory.\",\n        \"typeEditor\": \"Slider\",\n        \"validationExpression\": \"\",\n        \"value\": \"0\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"1\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 3,\n        \"minimumValue\": 0,\n        \"name\": \"AcqG2Session\",\n        \"displayName\": \"Acq G2 Session\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The G2 Session to use when inventorying tags.\",\n        \"typeEditor\": \"Slider\",\n        \"validationExpression\": \"\",\n        \"value\": \"1\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"A\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 255,\n        \"minimumValue\": 0,\n        \"name\": \"AcqG2Target\",\n        \"displayName\": \"Acq G2 Target\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Set the Class1/Gen2 inventory target.\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"A\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"A\",\n            \"description\": \"A\"\n          },\n          {\n            \"value\": \"B\",\n            \"description\": \"B\"\n          },\n          {\n            \"value\": \"AB\",\n            \"description\": \"AB\"\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Program Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"Word\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"ProgDataUnit\",\n        \"displayName\": \"Prog Data Unit\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Specifies the data unit size when writing Gen2 tags.\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"Block\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"Word\",\n            \"description\": \"Word\"\n          },\n          {\n            \"value\": \"Block\",\n            \"description\": \"Block\"\n          }\n        ]\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Notify Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"OFF\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyMode\",\n        \"displayName\": \"Enable Notify Mode\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"OFF\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"ON\",\n            \"description\": \"ON\"\n          },\n          {\n            \"value\": \"OFF\",\n            \"description\": \"OFF\"\n          }\n        ]\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyAddress\",\n        \"displayName\": \"Notify Address\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"(Not Set)\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"Text\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyFormat\",\n        \"displayName\": \"Notify Format\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"Text\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"Text\",\n            \"description\": \"Text\"\n          },\n          {\n            \"value\": \"Terse\",\n            \"description\": \"Terse\"\n          },\n          {\n            \"value\": \"XML\",\n            \"description\": \"XML\"\n          },\n          {\n            \"value\": \"Custom\",\n            \"description\": \"Custom\"\n          }\n        ]\n      },\n      {\n        \"defaultValue\": \"OFF\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyHeader\",\n        \"displayName\": \"Notify Header\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"ON\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"ON\",\n            \"description\": \"ON\"\n          },\n          {\n            \"value\": \"OFF\",\n            \"description\": \"OFF\"\n          }\n        ]\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyTime\",\n        \"displayName\": \"Notify Time\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"0\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"OFF\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyTrigger\",\n        \"displayName\": \"Notify Trigger\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Selector\",\n        \"validationExpression\": \"\",\n        \"value\": \"OFF\",\n        \"error\": \"\",\n        \"propertyList\": [\n          {\n            \"value\": \"OFF\",\n            \"description\": \"OFF\"\n          },\n          {\n            \"value\": \"Add\",\n            \"description\": \"Add\"\n          },\n          {\n            \"value\": \"Remove\",\n            \"description\": \"Remove\"\n          },\n          {\n            \"value\": \"AddRemove\",\n            \"description\": \"AddRemove\"\n          },\n          {\n            \"value\": \"Change\",\n            \"description\": \"Change\"\n          },\n          {\n            \"value\": \"True\",\n            \"description\": \"True\"\n          },\n          {\n            \"value\": \"False\",\n            \"description\": \"False\"\n          },\n          {\n            \"value\": \"TrueFalse\",\n            \"description\": \"TrueFalse\"\n          }\n        ]\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyKeepAliveTime\",\n        \"displayName\": \"Notify Keep Alive Time\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"30\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyRetryCount\",\n        \"displayName\": \"Notify Retry Count\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"-1\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyRetryPause\",\n        \"displayName\": \"Notify Retry Pause\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"10\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyQueueLimit\",\n        \"displayName\": \"Notify Queue Limit\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"100\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"NotifyInclude\",\n        \"displayName\": \"Notify Include\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"Tags\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"MailServer\",\n        \"displayName\": \"Mail Server\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"(Not Set)\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"MailFrom\",\n        \"displayName\": \"Mail From\",\n        \"requireRestart\": false,\n        \"tooltip\": \"\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"\\\"Alien RFID Reader\\\"\",\n        \"error\": \"\",\n        \"propertyList\": []\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Time Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"TimeServer\",\n        \"displayName\": \"Time Server\",\n        \"requireRestart\": true,\n        \"tooltip\": \"The IP Address of a network time server.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^\\\\*$|^(?:\\\\d|1?\\\\d\\\\d|2[0-4]\\\\d|25[0-5])(?:\\\\.(?:\\\\d|1?\\\\d\\\\d|2[0-4]\\\\d|25[0-5])){3}(?:\\\\s* \\\\s*(?:\\\\d|1?\\\\d\\\\d|2[0-4]\\\\d|25[0-5])(?:\\\\.(?:\\\\d|1?\\\\d\\\\d|2[0-4]\\\\d|25[0-5])){3})*$\",\n        \"value\": \"132.163.4.103\",\n        \"error\": \"Invalid IP Address!\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"0\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 12,\n        \"minimumValue\": -12,\n        \"name\": \"TimeZone\",\n        \"displayName\": \"Time Zone\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The time zone offset from UTC for the reader\\u0027s clock.\",\n        \"typeEditor\": \"Slider\",\n        \"validationExpression\": \"\",\n        \"value\": \"12\",\n        \"error\": \"\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": -12,\n        \"minimumValue\": 0,\n        \"name\": \"Time\",\n        \"displayName\": \"Time\",\n        \"requireRestart\": false,\n        \"tooltip\": \"The time on the reader\\u0027s clock.\\\\nTime Format : YYYY/MM/DD hh:mm:ss\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"^([0-9]{4})/([0-1][0-9])/([0-3][0-9])\\\\s([0-1][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])$\",\n        \"value\": \"2017/05/15 20:14:49\",\n        \"error\": \"Invalid date format!\",\n        \"propertyList\": []\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Authentication Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"username\",\n        \"displayName\": \"Username\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Sets the reader username.\",\n        \"typeEditor\": \"Text\",\n        \"validationExpression\": \"\",\n        \"value\": \"alien\",\n        \"error\": \"The Password cannot be set.\",\n        \"propertyList\": []\n      },\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": false,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"password\",\n        \"displayName\": \"Password\",\n        \"requireRestart\": false,\n        \"tooltip\": \"Sets the reader password.\",\n        \"typeEditor\": \"Password\",\n        \"validationExpression\": \"\",\n        \"value\": \"\",\n        \"error\": \"The UserName cannot be set.\",\n        \"propertyList\": []\n      }\n    ]\n  },\n  {\n    \"groupName\": \"Commands\",\n    \"properties\": [\n      {\n        \"defaultValue\": \"\",\n        \"readOnly\": true,\n        \"required\": false,\n        \"visible\": true,\n        \"maximumValue\": 0,\n        \"minimumValue\": 0,\n        \"name\": \"factorysettings\",\n        \"displayName\": \"Set Factory Setting\",\n        \"requireRestart\": true,\n        \"tooltip\": \"Resets the reader to the default settings.\",\n        \"typeEditor\": \"Command\",\n        \"validationExpression\": \"\",\n        \"value\": \"\",\n        \"error\": \"The Reader cannot be reset.\",\n        \"propertyList\": []\n      }\n    ]\n  }\n]"}],"_postman_id":"2bd74dde-89c5-f386-581a-c3071e8910a3"},{"name":"Get device configuration for a specific group","event":[{"listen":"test","script":{"type":"text/javascript","exec":["tests[\"Status code is 200\"] = responseCode.code === 200;"]}}],"id":"1807c80c-8718-a286-dbb9-a536c5b54c2d","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}/{uid}/{groupName}/config","description":"<p><b>Replace {vendor}, {uid}, and {groupName} by the appropriate reader's vendor, uid, and group name respectively.</b></p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/reader/arp/001B5F00C4D1/General%20Commands/config</pre>\n\n<p><i>NOTE: This will result in an error if the connection to the reader couldn't be established.</i></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}","{uid}","{groupName}","config"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"7523c63c-43b6-a247-e73d-1935bd257e3d","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/arp/001B5F00BDBF/General Commands/config"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"4516","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:09:39 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"247","body":"{\n  \"name\": \"General Commands\",\n  \"properties\": [\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": false,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"ReaderName\",\n      \"displayName\": \"Reader Name\",\n      \"requireRestart\": false,\n      \"tooltip\": \"An arbitrary name to be associated with the reader.\\\\n1-254 charaters.\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"^.{1,254}$\",\n      \"value\": \"TestReader\",\n      \"error\": \"The Reader Name can\\u0027t be longer than 254 characters!\",\n      \"propertyList\": []\n    },\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": true,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"ReaderType\",\n      \"displayName\": \"Reader Type\",\n      \"requireRestart\": false,\n      \"tooltip\": \"A description of the reader type.\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"\",\n      \"value\": \"Alien RFID Tag Reader, Model: ALR-9680-EMA (Four Antenna / Gen 2 / EN 302.208v1.3.1)\",\n      \"error\": \"\",\n      \"propertyList\": []\n    },\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": true,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"ReaderVersion\",\n      \"displayName\": \"Reader Version\",\n      \"requireRestart\": false,\n      \"tooltip\": \"Reader software/hardware versions.\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"\",\n      \"value\": \"14.07.01.00\",\n      \"error\": \"\",\n      \"propertyList\": []\n    },\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": true,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"DSPVersion\",\n      \"displayName\": \"DSP Version\",\n      \"requireRestart\": false,\n      \"tooltip\": \"DSP firmware version and configuration.\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"\",\n      \"value\": \"DSP:02.003.050-01.003.000 reader:09 country:13 radio:32 board:21\",\n      \"error\": \"\",\n      \"propertyList\": []\n    },\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": false,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"ReaderNumber\",\n      \"displayName\": \"Reader Number\",\n      \"requireRestart\": false,\n      \"tooltip\": \"An arbitrary number to be associated with the reader.\\\\nBetween 1 and 255.\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"\\\\b0*([1-9][0-9]?|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\\\b\",\n      \"value\": \"255\",\n      \"error\": \"The Reader Number must be between 1 and 255!\",\n      \"propertyList\": []\n    },\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": false,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"BaudRate\",\n      \"displayName\": \"Baud Rate\",\n      \"requireRestart\": true,\n      \"tooltip\": \"The serial interface baud rate.\",\n      \"typeEditor\": \"Selector\",\n      \"validationExpression\": \"\",\n      \"value\": \"57600\",\n      \"error\": \"\",\n      \"propertyList\": [\n        {\n          \"value\": \"9600\",\n          \"description\": \"9600\"\n        },\n        {\n          \"value\": \"19200\",\n          \"description\": \"19200\"\n        },\n        {\n          \"value\": \"38400\",\n          \"description\": \"38400\"\n        },\n        {\n          \"value\": \"57600\",\n          \"description\": \"57600\"\n        },\n        {\n          \"value\": \"115200\",\n          \"description\": \"115200\"\n        }\n      ]\n    },\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": true,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"Uptime\",\n      \"displayName\": \"Up Time\",\n      \"requireRestart\": false,\n      \"tooltip\": \"Number of seconds that have elapsed since the reader was last booted.\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"\",\n      \"value\": \"956028\",\n      \"error\": \"\",\n      \"propertyList\": []\n    },\n    {\n      \"defaultValue\": \"\",\n      \"readOnly\": false,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"MyData\",\n      \"displayName\": \"My Data\",\n      \"requireRestart\": false,\n      \"tooltip\": \"A general scratch-pad for your personal data.\\\\n0-254 characters\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"^.{0,254}$\",\n      \"value\": \"MySpecial_test1\",\n      \"error\": \"My Data can\\u0027t be longer than 254 characters!\",\n      \"propertyList\": []\n    }\n  ]\n}"}],"_postman_id":"1807c80c-8718-a286-dbb9-a536c5b54c2d"},{"name":"Get reader's config group names","id":"e721d4f7-2893-f9b0-5c2b-c719470878e4","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}/{uid}/configname","description":"<p>Retrieve the reader's configuration names</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}","{uid}","configname"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"56dc246c-de78-8136-8f46-7772260bc03c","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/arp/001B5F00BDBF/configname"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"193","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:10:42 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"52","body":"[\n  \"General Commands\",\n  \"Radio Commands\",\n  \"Network Commands\",\n  \"Acquire Commands\",\n  \"Program Commands\",\n  \"Notify Commands\",\n  \"Time Commands\",\n  \"Authentication Commands\",\n  \"Commands\"\n]"}],"_postman_id":"e721d4f7-2893-f9b0-5c2b-c719470878e4"},{"name":"List physical IO ports","id":"a53a6d9c-da4f-00ee-a040-91cdeb02684a","request":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/reader/ioports","description":"<p>List the physical IO ports.\nThis path may be provided by a 'fields' query string to filter some unwanted fields.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/reader/ioports?fields=pins\n<i>This retrieves only the pins of the readers' IO ports.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","ioports"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"d291d077-8cc4-a52c-0f1c-ba3395306c94","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/ioports"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"871","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:11:03 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"122","body":"[\n  {\n    \"vendor\": \"arp\",\n    \"uid\": \"001B5F00BDBF\",\n    \"down\": false,\n    \"pins\": [\n      {\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"output\",\n        \"number\": 2,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 1,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      },\n      {\n        \"reserved\": false,\n        \"type\": \"input\",\n        \"number\": 2,\n        \"value\": 0,\n        \"connection\": {\n          \"number\": 0,\n          \"type\": \"input\"\n        }\n      }\n    ]\n  }\n]"}],"_postman_id":"a53a6d9c-da4f-00ee-a040-91cdeb02684a"},{"name":"Add reader","id":"00eb4879-d8d1-b5c4-833b-8276d3f21eeb","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"{vendor}\",\n\t\"ip\":\"{IP Address}\",\n\t\"authentication\":{\n\t\t\"name\":\"Authentication\",\n\t\t\"properties\":[\n\t\t\t{\n\t\t\t\t\"name\":\"username\",\n\t\t\t\t\"value\":\"{username}\"\n\t\t\t},{\n\t\t\t\t\"name\":\"password\",\n\t\t\t\t\"value\":\"{password}\"\n\t\t\t}\n\t\t]\n\t}\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/","description":"<p>Add reader by ip address.</p>\n<p>In order for this service to execute properly the reader must be reachable and not reserved by any other Envoy.</p>\n<p>If the driver does not need authentication to be able to connect to the reader, then there is no need to add the authentication property.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"00eb4879-d8d1-b5c4-833b-8276d3f21eeb"},{"name":"Add reader offline","id":"25be3c6d-8724-65b0-2191-eeafaa2e8e78","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"{vendor}\",\n\t\"uid\":\"{uid}\",\n\t\"ip\":\"{IP Address}\",\n\t\"model\":\"{readerModel}\",\n\t\"port\": 23,\n\t\"secure\": false,\n\t\"authentication\":{\n\t\t\"name\":\"Authentication\",\n\t\t\"properties\":[\n\t\t\t{\n\t\t\t\t\"name\":\"username\",\n\t\t\t\t\"value\":\"{username}\"\n\t\t\t},{\n\t\t\t\t\"name\":\"password\",\n\t\t\t\t\"value\":\"{password}\"\n\t\t\t}\n\t\t]\n\t}\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/offline","description":"<p>Add reader by ip and MAC address.</p>\n<p>Using this service the reader can be added even if it is unreachable.</p>\n<p>If the driver does not need authentication to be able to connect to the reader, then there is no need to add the authentication property.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","offline"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"25be3c6d-8724-65b0-2191-eeafaa2e8e78"},{"name":"Enable a disabled reader","id":"4d79f08d-d95a-d2d4-b38e-8c75bc6caf6c","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"{vendor}\",\n\t\"uid\":\"{uid}\",\n\t\"authentication\":{\n\t\t\"name\":\"Authentication\",\n\t\t\"properties\":[\n\t\t\t{\n\t\t\t\t\"name\":\"username\",\n\t\t\t\t\"value\":\"{username}\"\n\t\t\t},{\n\t\t\t\t\"name\":\"password\",\n\t\t\t\t\"value\":\"{password}\"\n\t\t\t}\n\t\t]\n\t}\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/enable","description":"<p>Enable reader by UID.</p>\n<p>In order for this service to execute properly the reader must be reachable and not reserved by any other Envoy.</p>\n<p>If the driver does not need authentication to be able to connect to the reader, then there is no need to add the authentication property.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","enable"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"4d79f08d-d95a-d2d4-b38e-8c75bc6caf6c"},{"name":"Reboot reader","id":"36e06564-eaf2-f36b-96c5-76f2c89b94ad","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"{vendor}\",\n\t\"uid\":\"{uid}\",\n\t\"authentication\":{\n\t\t\"name\":\"Authentication\",\n\t\t\"properties\":[\n\t\t\t{\n\t\t\t\t\"name\":\"username\",\n\t\t\t\t\"value\":\"{username}\"\n\t\t\t},{\n\t\t\t\t\"name\":\"password\",\n\t\t\t\t\"value\":\"{password}\"\n\t\t\t}\n\t\t]\n\t}\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/reboot","description":"<p>Reboot reader by UID.</p>\n<p>In order for this service to execute properly the reader must be reachable and not reserved by any other Envoy.</p>\n<p>If the driver does not need authentication to be able to connect to the reader, then there is no need to add the authentication property.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","reboot"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"36e06564-eaf2-f36b-96c5-76f2c89b94ad"},{"name":"Execute reader command","id":"f303ad11-ab3f-0bc2-1b57-3a3f4f7ebeb1","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"{vendor}\",\n\t\"uid\":\"{uid}\",\n\t\"command\":\"{command}\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/command","description":"<p>Execute reader command by uid.</p>\n<p>In order for this service to execute properly the reader must be reachable and not reserved by any other Envoy.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","command"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"f303ad11-ab3f-0bc2-1b57-3a3f4f7ebeb1"},{"name":"Delete reader","id":"1d2cdc7b-9ad1-f0da-0bcc-62400cd084c5","request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}/{uid}","description":"<p>Delete specific reader according to the vendor and uid.</p>\n<p><b>Replace the path parameter {vendor} by the vendor, and {uid} by the UID.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}","{uid}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"1d2cdc7b-9ad1-f0da-0bcc-62400cd084c5"},{"name":"Restore Envoy settings","id":"a5aab0c5-519b-c76d-5acb-8a36ca883f8f","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"vendor\":\"{vendor}\",\n  \"uid\":\"{uid}\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/restore","description":"<p>Restore the Envoy settings plus all the logical group templates properties ordered by creation date of each property within all groups.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","restore"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"a5aab0c5-519b-c76d-5acb-8a36ca883f8f"},{"name":"Get authentication info","id":"4248c848-5fbf-d5c1-8089-a3c1f7560964","request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"vendor\":\"arp\",\n  \"ip\":\"10.0.0.11\",\n  \n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}","description":"<p>Retrieve the authentication information related to the driver name.</p>\n<p><b>Replace the {vendor} path parameter by the appropriate vendor name (driver name).</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"5cdab28b-362c-a202-5908-8e9a5d31023c","name":"sample-response-auth","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","description":"The mime type of this content"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"arp\",\n\t\"ip\":\"10.0.0.11\",\n\t\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/arp"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"973","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:11:40 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"143","body":"{\n  \"name\": \"authentication\",\n  \"properties\": [\n    {\n      \"defaultValue\": \"alien\",\n      \"readOnly\": false,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"username\",\n      \"displayName\": \"Username\",\n      \"requireRestart\": false,\n      \"tooltip\": \"Sets the reader username.\",\n      \"typeEditor\": \"Text\",\n      \"validationExpression\": \"\",\n      \"value\": null,\n      \"error\": \"The Password cannot be set.\",\n      \"propertyList\": []\n    },\n    {\n      \"defaultValue\": \"password\",\n      \"readOnly\": false,\n      \"required\": false,\n      \"visible\": true,\n      \"maximumValue\": 0,\n      \"minimumValue\": 0,\n      \"name\": \"password\",\n      \"displayName\": \"Password\",\n      \"requireRestart\": false,\n      \"tooltip\": \"Sets the reader password.\",\n      \"typeEditor\": \"Password\",\n      \"validationExpression\": \"\",\n      \"value\": null,\n      \"error\": \"The UserName cannot be set.\",\n      \"propertyList\": []\n    }\n  ]\n}"},{"id":"8ede9608-d51a-8da2-cf69-8799c416d8b2","name":"sample-response-no-auth","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","description":"The mime type of this content"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"arp\",\n\t\"ip\":\"10.0.0.11\",\n\t\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/llrp"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"50","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:12:03 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"48","body":"{\n  \"name\": \"authentication\",\n  \"properties\": []\n}"}],"_postman_id":"4248c848-5fbf-d5c1-8089-a3c1f7560964"},{"name":"Get reader description","id":"0f23a979-1278-ffb3-42f9-2867ef407185","request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"vendor\":\"arp\",\n  \"ip\":\"10.0.0.11\",\n  \n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}/{uid}/description","description":"<p>Retrieve the reader description information.</p>\n<p><b>Replace the {vendor} and {uid} by the appropriate vendor name (driver name) and reader's uid respectively.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}","{uid}","description"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"f743050c-cfd1-f6a3-7021-1d76547706bf","name":"sample-response","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","description":"The mime type of this content"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"arp\",\n\t\"ip\":\"10.0.0.11\",\n\t\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/arp/001B5F00BDBF/description"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"99","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:12:28 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"113","body":"{\n  \"ReaderVersion\": \"14.07.01.00\",\n  \"ReaderName\": \"TestReader\",\n  \"ReaderModel\": \"ALR-9680-EMA\"\n}"}],"_postman_id":"0f23a979-1278-ffb3-42f9-2867ef407185"},{"name":"Bulk enable readers","id":"f010afc2-424f-48c0-9c0c-cf9ec47ec2b2","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n  \"readers\":[\r\n\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false,\r\n      \"username\":\"{username}\",\r\n      \"password\":\"{password}\"\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false,\r\n      \"username\":\"{username}\",\r\n      \"password\":\"{password}\"\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false,\r\n      \"username\":\"{username}\",\r\n      \"password\":\"{password}\"\r\n    }\r\n  ]\r\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/bulk/enable","description":"<p>Bulk enable readers by UIDs.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","bulk","enable"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"f010afc2-424f-48c0-9c0c-cf9ec47ec2b2"},{"name":"Bulk disable readers","id":"3b941bd8-1699-46ac-9341-813c6f751371","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n  \"readers\":[\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    }\r\n  ]\r\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/bulk/disable","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","bulk","disable"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"3b941bd8-1699-46ac-9341-813c6f751371"},{"name":"Bulk delete readers","id":"c601ac5c-4716-4a39-9269-fb6e1a769b84","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n  \"readers\":[\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    }\r\n  ]\r\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"c601ac5c-4716-4a39-9269-fb6e1a769b84"},{"name":"Bulk restore readers","id":"f8ba78cc-5948-4ff8-878f-a4e802a53104","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n  \"readers\":[\r\n\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    }\r\n  ]\r\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/bulk/restore","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","bulk","restore"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"f8ba78cc-5948-4ff8-878f-a4e802a53104"},{"name":"Bulk reboot readers","id":"f7fedfff-0695-4279-803b-5f47bf0d741f","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n  \"readers\":[\r\n\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    },\r\n    {\r\n      \"uid\":\"{readerMACAddress}\",\r\n      \"ip\":\"{readerIPAddress}\",\r\n      \"readerModel\":\"{readerModel}\",\r\n      \"vendor\":\"{readerVendorName}\",\r\n      \"port\":23,\r\n      \"secure\":false\r\n    }\r\n  ]\r\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/bulk/reboot","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","bulk","reboot"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"f7fedfff-0695-4279-803b-5f47bf0d741f"},{"name":"Get available reader models","id":"8e435295-8b7a-4d83-b44b-4d06410411dc","request":{"method":"POST","header":[],"url":"http://{{host}}:{{port}}/ALE/api/reader/model","description":"<p>Get a list of all the available reader models from different vendors.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","model"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"8e435295-8b7a-4d83-b44b-4d06410411dc"},{"name":"Get reader property","id":"71657df9-0373-49bf-a724-eff1de1f7f3a","request":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/reader/{vendor}/{uid}/property/{propertyName}","description":"<p>Retrieves a property related to a reader according to the property name.</p>\n<p><b>Replace the {propertyName} path parameter by the appropriate property name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","{vendor}","{uid}","property","{propertyName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"71657df9-0373-49bf-a724-eff1de1f7f3a"},{"name":"Set reader properties","id":"a2f89f52-cefe-4ea6-9fb1-8c3e3ec5b0cb","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"uid\":\"{readerMACAddress}\",\n  \"vendor\":\"{readerVendorName}\",\n  \"properties\":[\n    {\n      \"name\": \"{name}\",\n      \"value\": \"{value}\"\n    }  \n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/reader/config","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reader","config"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"a2f89f52-cefe-4ea6-9fb1-8c3e3ec5b0cb"}],"id":"261c1354-153f-1ef7-bbaa-ebbabaa90a30","description":"<p>Contains all Reader related REST Service Paths</p>\n","_postman_id":"261c1354-153f-1ef7-bbaa-ebbabaa90a30"},{"name":"Subscription","item":[{"name":"List subscriptions","id":"6e65bead-7be2-8d86-8996-fe5944124e13","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/subscription","description":"<p>List all subscriptions.</p>\n<p>This path support properties filtering.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/subscription?fields=address;port\n<i>This will only return the address and port of each subscriber.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","subscription"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"1fa6b449-9ea2-e733-10d6-539bb15eb767","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/subscription"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"395","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:12:42 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"37","body":"[\n  {\n    \"description\": \"LT-DVF-DOCK-EMC\",\n    \"uri\": \"\",\n    \"protocol\": \"tcp\",\n    \"address\": \"192.168.100.99\",\n    \"port\": 55555\n  },\n  {\n    \"description\": \"RAMY-THINK-EMC\",\n    \"uri\": \"\",\n    \"protocol\": \"tcp\",\n    \"address\": \"10.0.0.56\",\n    \"port\": 55555\n  },\n  {\n    \"description\": \"USER-PC-EMC\",\n    \"uri\": \"\",\n    \"protocol\": \"tcp\",\n    \"address\": \"10.0.0.63\",\n    \"port\": 55555\n  }\n]"}],"_postman_id":"6e65bead-7be2-8d86-8996-fe5944124e13"},{"name":"Get subscriber","id":"c9c3846c-894f-44f9-8503-218847003db9","request":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/subscription/{subscriptionName}","description":"<p>Fetch a subscriber by name.</p>\n<p><b>Replace {subscriptionName} by the name of the subscriber.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","subscription","{subscriptionName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"c9c3846c-894f-44f9-8503-218847003db9"},{"name":"Add subscriber","id":"6696d831-0b92-32b4-70df-e832fcee46f6","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"address\":\"{IP Address}\",\n\t\"port\":55555,\n\t\"protocol\":\"{protocol}\",\n\t\"description\":\"{description}\"\n}"},"url":"http://{{host}}:{{port}}/ALE/api/subscription/","description":"<p>Add a subscriber.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","subscription",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"6696d831-0b92-32b4-70df-e832fcee46f6"},{"name":"Delete subscriber","id":"5e11a2f5-1e77-1faa-ae62-96de47891494","request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/subscription/{subscriptionName}","description":"<p>Delete a subscriber.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","subscription","{subscriptionName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"5e11a2f5-1e77-1faa-ae62-96de47891494"},{"name":"Delete subscriptions","id":"96252fa4-a13b-9070-f5c4-62dd434358d5","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{Subscriber1}\",\n  \"{Subscriber2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/subscription/delete","description":"<p>Delete subscriptions.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","subscription","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"96252fa4-a13b-9070-f5c4-62dd434358d5"},{"name":"Bulk delete subscribers","id":"b05ce30c-ffb7-45ef-b921-cc9a15316379","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"subscribers\":[\n    {\n      \"description\":\"{subscriberName1}\"\n    },\n    {\n      \"description\":\"{subscriberName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/subscription/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","subscription","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"b05ce30c-ffb7-45ef-b921-cc9a15316379"}],"id":"d8185441-7ab3-ef3d-7fb5-7a6b409fc280","_postman_id":"d8185441-7ab3-ef3d-7fb5-7a6b409fc280","description":""},{"name":"Workflow","item":[{"name":"List workflows","id":"05ba8c3c-5034-4a95-8877-58bc822dd75e","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/workflow","description":"<p>List all workflows.</p>\n<p>This path may be provided by a 'fields' query string to filter some unwanted properties.</p>\n<pre>Example: http://10.0.0.74:8080/ALE/api/workflow?fields=name\n<i>This retrieves only the name of all workflows.</i></pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"b52db2dc-fe4a-4b20-a4e6-8c2324f51d04","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/workflow"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Thu, 14 Feb 2019 13:07:30 GMT","name":"Date","description":"The date and time that the message was sent"},{"key":"Transfer-Encoding","value":"chunked","name":"Transfer-Encoding","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"35393DDB987E0F901518B9F0704FB701","key":"JSESSIONID"}],"responseTime":null,"body":"[\n  {\n    \"name\": \"A_Debug_Read\",\n    \"logicalReaders\": [],\n    \"started\": false,\n    \"autoStart\": true,\n    \"startTriggers\": [],\n    \"stopTriggers\": [],\n    \"meta\": \"\\u003cActivity mc:Ignorable\\u003d\\\"sap sap2010 sads\\\" x:Class\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart\\\" mva:VisualBasic.Settings\\u003d\\\"{x:Null}\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart_1\\\"\\r\\n xmlns\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities\\\"\\r\\n xmlns:aau\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI;assembly\\u003dAI.ActiveEnvoy.UI\\\"\\r\\n xmlns:aaum\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI.Models;assembly\\u003dAI.ActiveEnvoy.UI.Models\\\"\\r\\n xmlns:av\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\\\"\\r\\n xmlns:mc\\u003d\\\"http://schemas.openxmlformats.org/markup-compatibility/2006\\\"\\r\\n xmlns:mva\\u003d\\\"clr-namespace:Microsoft.VisualBasic.Activities;assembly\\u003dSystem.Activities\\\"\\r\\n xmlns:sads\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger\\\"\\r\\n xmlns:sap\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation\\\"\\r\\n xmlns:sap2010\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation\\\"\\r\\n xmlns:scg\\u003d\\\"clr-namespace:System.Collections.Generic;assembly\\u003dmscorlib\\\"\\r\\n xmlns:sco\\u003d\\\"clr-namespace:System.Collections.ObjectModel;assembly\\u003dmscorlib\\\"\\r\\n xmlns:x\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml\\\"\\u003e\\r\\n  \\u003cTextExpression.NamespacesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"x:String\\\"\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Statements\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Expressions\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Validation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.XamlIntegration\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Documents\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shapes\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shell\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Navigation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls.Primitives\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Animation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Input\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Diagnostics\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Media3D\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Ink\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.TextFormatting\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Effects\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Imaging\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Automation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Forms.Integration\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Debugger\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Collections.Generic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Linq\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Text\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Markup\\u003c/x:String\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.NamespacesForImplementation\\u003e\\r\\n  \\u003cTextExpression.ReferencesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"AssemblyReference\\\"\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Activities\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationFramework\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eWindowsBase\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationCore\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eWindowsFormsIntegration\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003emscorlib\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xml\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Core\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.ServiceModel\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Data\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xaml\\u003c/AssemblyReference\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.ReferencesForImplementation\\u003e\\r\\n  \\u003cFlowchart sap2010:WorkflowViewState.IdRef\\u003d\\\"Flowchart_1\\\"\\u003e\\r\\n    \\u003cFlowchart.Variables\\u003e\\r\\n      \\u003cVariable x:TypeArguments\\u003d\\\"x:Object\\\" Name\\u003d\\\"A01_ReadTagsValue0\\\" /\\u003e\\r\\n      \\u003cVariable x:TypeArguments\\u003d\\\"x:String\\\" Name\\u003d\\\"B05_FormatTagsValue0\\\" /\\u003e\\r\\n    \\u003c/Flowchart.Variables\\u003e\\r\\n    \\u003cFlowchart.StartNode\\u003e\\r\\n      \\u003cFlowStep x:Name\\u003d\\\"__ReferenceID0\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"FlowStep_3\\\"\\u003e\\r\\n        \\u003caau:EnvoyActivity Code\\u003d\\\"if(stop \\u003d\\u003d 1){return;}\\tString vLogicalDevice \\u003d \\u0026quot;Station_7NG3\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tInteger vReadDuration \\u003d 3000;\\u0026#xD;\\u0026#xA;@envoy.A01_ReadTags{LogicalDevice:vLogicalDevice,ReadDuration:vReadDuration} \\u0026gt; Va39f873afd394329ae766d08543036e7;\\u0026#xA;\\u0026#xD;A01_ReadTagsValue0 \\u003d Va39f873afd394329ae766d08543036e7;\\u0026#xA;\\u0026#xD;\\\" DisplayName\\u003d\\\"A01_ReadTags\\\" ID\\u003d\\\"9b284fc0-24df-46d5-b967-6bd3aa7acb3b\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"EnvoyActivity_1\\\" Name\\u003d\\\"A01_ReadTags\\\" ReturnType\\u003d\\\"ArrayList\\u0026lt;Properties\\u0026gt;\\\" ReturnVariable\\u003d\\\"A01_ReadTagsValue0\\\"\\u003e\\r\\n          \\u003caau:EnvoyActivity.Props\\u003e\\r\\n            \\u003cscg:List x:TypeArguments\\u003d\\\"aaum:CActivityPropertyModel\\\" Capacity\\u003d\\\"4\\\"\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"LogicalDevice\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"LogicalDevices\\\" Value\\u003d\\\"Station_7NG3\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"ReadDuration\\\" Type\\u003d\\\"Integer\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"3000\\\" /\\u003e\\r\\n            \\u003c/scg:List\\u003e\\r\\n          \\u003c/aau:EnvoyActivity.Props\\u003e\\r\\n        \\u003c/aau:EnvoyActivity\\u003e\\r\\n        \\u003cFlowStep.Next\\u003e\\r\\n          \\u003cFlowStep x:Name\\u003d\\\"__ReferenceID1\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"FlowStep_2\\\"\\u003e\\r\\n            \\u003caau:EnvoyActivity Code\\u003d\\\"if(stop \\u003d\\u003d 1){return;}\\tString vFormatType \\u003d \\u0026quot;ActiveALE\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vDefaultLocation \\u003d \\u0026quot;Station_7NG3\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vCommands \\u003d \\u0026quot;\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vIncludeExtFields \\u003d \\u0026quot;True\\u0026quot;;\\u0026#xD;\\u0026#xA;@envoy.B05_FormatTags{FormatType:vFormatType,DefaultLocation:vDefaultLocation,Commands:vCommands,IncludeExtFields:vIncludeExtFields,Tags:A01_ReadTagsValue0} \\u0026gt; Ve1981faeb885474d97e245517aaa649a;\\u0026#xA;\\u0026#xD;B05_FormatTagsValue0 \\u003d Ve1981faeb885474d97e245517aaa649a;\\u0026#xA;\\u0026#xD;\\\" DisplayName\\u003d\\\"B05_FormatTags\\\" ID\\u003d\\\"00a31782-4f2d-48d0-aa0b-b79d3ce6710c\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"EnvoyActivity_2\\\" Name\\u003d\\\"B05_FormatTags\\\" ReturnType\\u003d\\\"String\\\" ReturnVariable\\u003d\\\"B05_FormatTagsValue0\\\"\\u003e\\r\\n              \\u003caau:EnvoyActivity.Props\\u003e\\r\\n                \\u003cscg:List x:TypeArguments\\u003d\\\"aaum:CActivityPropertyModel\\\" Capacity\\u003d\\\"8\\\"\\u003e\\r\\n                  \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"Z06_ReturnReportTypes\\\" Name\\u003d\\\"FormatType\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"ActivityDropDown\\\" Value\\u003d\\\"ActiveALE\\\" /\\u003e\\r\\n                  \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"DefaultLocation\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"LogicalDevices\\\" Value\\u003d\\\"Station_7NG3\\\" /\\u003e\\r\\n                  \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Commands\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"\\\" /\\u003e\\r\\n                  \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"Z09_ReturnTrueFalse\\\" Name\\u003d\\\"IncludeExtFields\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"ActivityDropDown\\\" Value\\u003d\\\"True\\\" /\\u003e\\r\\n                  \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Tags\\\" Type\\u003d\\\"ArrayList\\u0026lt;Properties\\u0026gt;\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"[A01_ReadTagsValue0]\\\" /\\u003e\\r\\n                \\u003c/scg:List\\u003e\\r\\n              \\u003c/aau:EnvoyActivity.Props\\u003e\\r\\n            \\u003c/aau:EnvoyActivity\\u003e\\r\\n            \\u003cFlowStep.Next\\u003e\\r\\n              \\u003cFlowStep x:Name\\u003d\\\"__ReferenceID2\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"FlowStep_1\\\"\\u003e\\r\\n                \\u003caau:EnvoyActivity Code\\u003d\\\"if(stop \\u003d\\u003d 1){return;}\\u0026#xD;\\u0026#xA;\\tArrayList\\u0026lt;String\\u0026gt; Subscribers \\u003d new ArrayList\\u0026lt;String\\u0026gt;();\\u0026#xD;\\u0026#xA;\\tSubscribers.add(\\u0026quot;Debug-EMC\\u0026quot;);\\u0026#xD;\\u0026#xA;@envoy.D02_SocketSend{Subscribers:Subscribers,Message:B05_FormatTagsValue0} \\u0026gt; V2b7e878065f445428417f6ab1fb88006;\\u0026#xA;\\u0026#xD;\\\" DisplayName\\u003d\\\"D02_SocketSend\\\" ID\\u003d\\\"619d2884-b94a-4f51-b0fc-f5566f449c1d\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"EnvoyActivity_3\\\" Name\\u003d\\\"D02_SocketSend\\\" ReturnType\\u003d\\\"void\\\" ReturnVariable\\u003d\\\"D02_SocketSendValue0\\\"\\u003e\\r\\n                  \\u003caau:EnvoyActivity.Props\\u003e\\r\\n                    \\u003cscg:List x:TypeArguments\\u003d\\\"aaum:CActivityPropertyModel\\\" Capacity\\u003d\\\"4\\\"\\u003e\\r\\n                      \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Subscribers\\\" Type\\u003d\\\"ArrayList\\u0026lt;String\\u0026gt;\\\" TypeEditor\\u003d\\\"Subscribers\\\" Value\\u003d\\\"Debug-EMC\\\" /\\u003e\\r\\n                      \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Message\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"[B05_FormatTagsValue0]\\\" /\\u003e\\r\\n                    \\u003c/scg:List\\u003e\\r\\n                  \\u003c/aau:EnvoyActivity.Props\\u003e\\r\\n                \\u003c/aau:EnvoyActivity\\u003e\\r\\n                \\u003cFlowStep.Next\\u003e\\r\\n                  \\u003cx:Reference\\u003e__ReferenceID0\\u003c/x:Reference\\u003e\\r\\n                \\u003c/FlowStep.Next\\u003e\\r\\n              \\u003c/FlowStep\\u003e\\r\\n            \\u003c/FlowStep.Next\\u003e\\r\\n          \\u003c/FlowStep\\u003e\\r\\n        \\u003c/FlowStep.Next\\u003e\\r\\n      \\u003c/FlowStep\\u003e\\r\\n    \\u003c/Flowchart.StartNode\\u003e\\r\\n    \\u003cx:Reference\\u003e__ReferenceID0\\u003c/x:Reference\\u003e\\r\\n    \\u003cx:Reference\\u003e__ReferenceID1\\u003c/x:Reference\\u003e\\r\\n    \\u003cx:Reference\\u003e__ReferenceID2\\u003c/x:Reference\\u003e\\r\\n    \\u003csads:DebugSymbol.Symbol\\u003edw1DOlxFbXB0eS54YW1sAA\\u003d\\u003d\\u003c/sads:DebugSymbol.Symbol\\u003e\\r\\n  \\u003c/Flowchart\\u003e\\r\\n  \\u003csap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n    \\u003csap2010:ViewStateManager\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"EnvoyActivity_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"276,94\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eTrue\\u003c/x:Boolean\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"EnvoyActivity_2\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"276,181\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eTrue\\u003c/x:Boolean\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"EnvoyActivity_3\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"276,96\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eTrue\\u003c/x:Boolean\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"FlowStep_1\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e162,442\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e276,96\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e438,490 468,490 468,170 448,170\\u003c/av:PointCollection\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"FlowStep_2\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e162,239.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e276,181\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e300,420.5 300,442\\u003c/av:PointCollection\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"FlowStep_3\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e172,123\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e276,94\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e310,217 300,217 300,239.5\\u003c/av:PointCollection\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"614,636\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eFalse\\u003c/x:Boolean\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e270,2.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e60,75\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e300,77.5 300,107.5 310,107.5 310,123\\u003c/av:PointCollection\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"654,716\\\" /\\u003e\\r\\n    \\u003c/sap2010:ViewStateManager\\u003e\\r\\n  \\u003c/sap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n\\u003c/Activity\\u003e\",\n    \"runtime\": \"int stop \\u003d 0;String next \\u003d null;String B05_FormatTagsValue0;\\nArrayList\\u003cProperties\\u003e A01_ReadTagsValue0;\\npublic void start() throws Exception {stop \\u003d 0; \\n__ReferenceID0();\\nwhile(next !\\u003d null \\u0026\\u0026 stop \\u003d\\u003d 0){ Thread.sleep(100);if(next.equals(\\\"__ReferenceID0\\\")){next \\u003d null ;__ReferenceID0();continue;}if(next.equals(\\\"__ReferenceID1\\\")){next \\u003d null ;__ReferenceID1();continue;}if(next.equals(\\\"__ReferenceID2\\\")){next \\u003d null ;__ReferenceID2();continue;}}}\\r\\n                public void __ReferenceID0() throws Exception\\r\\n                {\\r\\n                    if(stop \\u003d\\u003d 1){return;} String vLogicalDevice \\u003d \\\"Station_7NG3\\\";\\r\\n Integer vReadDuration \\u003d 3000;\\r\\n@envoy.A01_ReadTags{LogicalDevice:vLogicalDevice,ReadDuration:vReadDuration} \\u003e Va39f873afd394329ae766d08543036e7;\\n\\rA01_ReadTagsValue0 \\u003d (ArrayList\\u003cProperties\\u003e)Va39f873afd394329ae766d08543036e7;\\n\\rnext \\u003d \\\"__ReferenceID1\\\";\\n\\r\\n                }\\n\\r\\n                public void __ReferenceID1() throws Exception\\r\\n                {\\r\\n                    if(stop \\u003d\\u003d 1){return;} String vFormatType \\u003d \\\"ActiveALE\\\";\\r\\n String vDefaultLocation \\u003d \\\"Station_7NG3\\\";\\r\\n String vCommands \\u003d \\\"\\\";\\r\\n String vIncludeExtFields \\u003d \\\"True\\\";\\r\\n@envoy.B05_FormatTags{FormatType:vFormatType,DefaultLocation:vDefaultLocation,Commands:vCommands,IncludeExtFields:vIncludeExtFields,Tags:A01_ReadTagsValue0} \\u003e Ve1981faeb885474d97e245517aaa649a;\\n\\rB05_FormatTagsValue0 \\u003d (String)Ve1981faeb885474d97e245517aaa649a;\\n\\rnext \\u003d \\\"__ReferenceID2\\\";\\n\\r\\n                }\\n\\r\\n                public void __ReferenceID2() throws Exception\\r\\n                {\\r\\n                    if(stop \\u003d\\u003d 1){return;}\\r\\n ArrayList\\u003cString\\u003e Subscribers \\u003d new ArrayList\\u003cString\\u003e();\\r\\n Subscribers.add(\\\"Debug-EMC\\\");\\r\\n@envoy.D02_SocketSend{Subscribers:Subscribers,Message:B05_FormatTagsValue0} \\u003e V2b7e878065f445428417f6ab1fb88006;\\n\\rnext \\u003d \\\"__ReferenceID0\\\";\\r\\n                }\\npublic void stop() throws Exception {stop \\u003d 1;}\",\n    \"properties\": []\n  },\n  {\n    \"name\": \"ReadAndSend\",\n    \"logicalReaders\": [],\n    \"started\": false,\n    \"autoStart\": false,\n    \"startTriggers\": [\n      {\n        \"device\": \"DEMO_SENSOR\",\n        \"action\": \"On\"\n      }\n    ],\n    \"stopTriggers\": [\n      {\n        \"device\": \"DEMO_SENSOR\",\n        \"action\": \"Off\"\n      }\n    ],\n    \"meta\": \"\\u003cActivity mc:Ignorable\\u003d\\\"sap sap2010 sads\\\" x:Class\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart\\\" mva:VisualBasic.Settings\\u003d\\\"{x:Null}\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart_1\\\"\\r\\n xmlns\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities\\\"\\r\\n xmlns:aau\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI;assembly\\u003dAI.ActiveEnvoy.UI\\\"\\r\\n xmlns:aaum\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI.Models;assembly\\u003dAI.ActiveEnvoy.UI.Models\\\"\\r\\n xmlns:av\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\\\"\\r\\n xmlns:mc\\u003d\\\"http://schemas.openxmlformats.org/markup-compatibility/2006\\\"\\r\\n xmlns:mva\\u003d\\\"clr-namespace:Microsoft.VisualBasic.Activities;assembly\\u003dSystem.Activities\\\"\\r\\n xmlns:sads\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger\\\"\\r\\n xmlns:sap\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation\\\"\\r\\n xmlns:sap2010\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation\\\"\\r\\n xmlns:scg\\u003d\\\"clr-namespace:System.Collections.Generic;assembly\\u003dmscorlib\\\"\\r\\n xmlns:sco\\u003d\\\"clr-namespace:System.Collections.ObjectModel;assembly\\u003dmscorlib\\\"\\r\\n xmlns:x\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml\\\"\\u003e\\r\\n  \\u003cTextExpression.NamespacesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"x:String\\\"\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Statements\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Expressions\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Validation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.XamlIntegration\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Documents\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shapes\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shell\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Navigation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls.Primitives\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Animation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Input\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Diagnostics\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Ink\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Automation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.TextFormatting\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Effects\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Imaging\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Media3D\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Debugger\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Collections.Generic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Linq\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Text\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Markup\\u003c/x:String\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.NamespacesForImplementation\\u003e\\r\\n  \\u003cTextExpression.ReferencesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"AssemblyReference\\\"\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Activities\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationFramework\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eWindowsBase\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationCore\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003emscorlib\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xml\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Core\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.ServiceModel\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Data\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xaml\\u003c/AssemblyReference\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.ReferencesForImplementation\\u003e\\r\\n  \\u003cFlowchart sap2010:WorkflowViewState.IdRef\\u003d\\\"Flowchart_1\\\"\\u003e\\r\\n    \\u003cFlowchart.Variables\\u003e\\r\\n      \\u003cVariable x:TypeArguments\\u003d\\\"x:String\\\" Name\\u003d\\\"A10_ReadAndSendToTagViewerValue0\\\" /\\u003e\\r\\n    \\u003c/Flowchart.Variables\\u003e\\r\\n    \\u003cFlowchart.StartNode\\u003e\\r\\n      \\u003cFlowStep x:Name\\u003d\\\"__ReferenceID0\\\"\\u003e\\r\\n        \\u003caau:EnvoyActivity Code\\u003d\\\"if(stop \\u003d\\u003d 1){return;}\\tString vLogicalDevice \\u003d \\u0026quot;DEMO\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tInteger vDuration \\u003d 3000;\\u0026#xD;\\u0026#xA;\\tString vReport \\u003d \\u0026quot;General\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vTDSFilter \\u003d \\u0026quot;True\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vCommands \\u003d \\u0026quot;\\u0026quot;;\\u0026#xD;\\u0026#xA;@envoy.A10_ReadAndSendToTagViewer{LogicalDevice:vLogicalDevice,Duration:vDuration,Report:vReport,TDSFilter:vTDSFilter,Commands:vCommands} \\u0026gt; V7c173ed062be457fa506ba3ad0fe15ab;\\u0026#xA;\\u0026#xD;A10_ReadAndSendToTagViewerValue0 \\u003d V7c173ed062be457fa506ba3ad0fe15ab;\\u0026#xA;\\u0026#xD;\\\" DisplayName\\u003d\\\"A10_ReadAndSendToTagViewer\\\" ID\\u003d\\\"52403abb-1f26-4bfb-9a75-7238c68026ef\\\" Name\\u003d\\\"A10_ReadAndSendToTagViewer\\\" ReturnType\\u003d\\\"String\\\" ReturnVariable\\u003d\\\"A10_ReadAndSendToTagViewerValue0\\\"\\u003e\\r\\n          \\u003caau:EnvoyActivity.Props\\u003e\\r\\n            \\u003cscg:List x:TypeArguments\\u003d\\\"aaum:CActivityPropertyModel\\\" Capacity\\u003d\\\"8\\\"\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"LogicalDevice\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"LogicalDevices\\\" Value\\u003d\\\"DEMO\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Duration\\\" Type\\u003d\\\"Integer\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"3000\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Report\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Reports\\\" Value\\u003d\\\"General\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"Z09_ReturnTrueFalse\\\" Name\\u003d\\\"TDSFilter\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"ActivityDropDown\\\" Value\\u003d\\\"True\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Commands\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"\\\" /\\u003e\\r\\n            \\u003c/scg:List\\u003e\\r\\n          \\u003c/aau:EnvoyActivity.Props\\u003e\\r\\n          \\u003csap2010:WorkflowViewState.IdRef\\u003eEnvoyActivity_12\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n        \\u003c/aau:EnvoyActivity\\u003e\\r\\n        \\u003cFlowStep.Next\\u003e\\r\\n          \\u003cx:Reference\\u003e__ReferenceID0\\u003c/x:Reference\\u003e\\r\\n        \\u003c/FlowStep.Next\\u003e\\r\\n        \\u003csap2010:WorkflowViewState.IdRef\\u003eFlowStep_12\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n      \\u003c/FlowStep\\u003e\\r\\n    \\u003c/Flowchart.StartNode\\u003e\\r\\n    \\u003cx:Reference\\u003e__ReferenceID0\\u003c/x:Reference\\u003e\\r\\n    \\u003csads:DebugSymbol.Symbol\\u003edw1DOlxFbXB0eS54YW1sAA\\u003d\\u003d\\u003c/sads:DebugSymbol.Symbol\\u003e\\r\\n  \\u003c/Flowchart\\u003e\\r\\n  \\u003csap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n    \\u003csap2010:ViewStateManager\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"EnvoyActivity_12\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"276,181\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eTrue\\u003c/x:Boolean\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"FlowStep_12\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e162,127.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e276,181\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e300,308.5 300,338 468,338 468,218 438,218\\u003c/av:PointCollection\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"614,664\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eFalse\\u003c/x:Boolean\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e270,2.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e60,75\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e300,77.5 300,127.5\\u003c/av:PointCollection\\u003e\\r\\n            \\u003cx:Double x:Key\\u003d\\\"Height\\\"\\u003e628\\u003c/x:Double\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"654,744\\\" /\\u003e\\r\\n    \\u003c/sap2010:ViewStateManager\\u003e\\r\\n  \\u003c/sap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n\\u003c/Activity\\u003e\",\n    \"runtime\": \"int stop \\u003d 0;String next \\u003d null;String A10_ReadAndSendToTagViewerValue0;\\npublic void start() throws Exception {stop \\u003d 0; \\n__ReferenceID0();\\nwhile(next !\\u003d null \\u0026\\u0026 stop \\u003d\\u003d 0){ Thread.sleep(100);if(next.equals(\\\"__ReferenceID0\\\")){next \\u003d null ;__ReferenceID0();continue;}}}\\r\\n                public void __ReferenceID0() throws Exception\\r\\n                {\\r\\n                    if(stop \\u003d\\u003d 1){return;} String vLogicalDevice \\u003d \\\"DEMO\\\";\\r\\n Integer vDuration \\u003d 3000;\\r\\n String vReport \\u003d \\\"General\\\";\\r\\n String vTDSFilter \\u003d \\\"True\\\";\\r\\n String vCommands \\u003d \\\"\\\";\\r\\n@envoy.A10_ReadAndSendToTagViewer{LogicalDevice:vLogicalDevice,Duration:vDuration,Report:vReport,TDSFilter:vTDSFilter,Commands:vCommands} \\u003e V7c173ed062be457fa506ba3ad0fe15ab;\\n\\rA10_ReadAndSendToTagViewerValue0 \\u003d (String)V7c173ed062be457fa506ba3ad0fe15ab;\\n\\rnext \\u003d \\\"__ReferenceID0\\\";\\r\\n                }\\npublic void stop() throws Exception {stop \\u003d 1;}\",\n    \"properties\": []\n  },\n  {\n    \"name\": \"TCP_Dump\",\n    \"logicalReaders\": null,\n    \"started\": false,\n    \"autoStart\": true,\n    \"startTriggers\": [],\n    \"stopTriggers\": [],\n    \"meta\": \"\\u003cActivity mc:Ignorable\\u003d\\\"sap sap2010 sads\\\" x:Class\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart\\\" mva:VisualBasic.Settings\\u003d\\\"{x:Null}\\\"\\r\\n xmlns\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities\\\"\\r\\n xmlns:aau\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI;assembly\\u003dAI.ActiveEnvoy.UI\\\"\\r\\n xmlns:aaum\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI.Models;assembly\\u003dAI.ActiveEnvoy.UI.Models\\\"\\r\\n xmlns:av\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\\\"\\r\\n xmlns:mc\\u003d\\\"http://schemas.openxmlformats.org/markup-compatibility/2006\\\"\\r\\n xmlns:mva\\u003d\\\"clr-namespace:Microsoft.VisualBasic.Activities;assembly\\u003dSystem.Activities\\\"\\r\\n xmlns:sads\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger\\\"\\r\\n xmlns:sap\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation\\\"\\r\\n xmlns:sap2010\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation\\\"\\r\\n xmlns:scg\\u003d\\\"clr-namespace:System.Collections.Generic;assembly\\u003dmscorlib\\\"\\r\\n xmlns:sco\\u003d\\\"clr-namespace:System.Collections.ObjectModel;assembly\\u003dmscorlib\\\"\\r\\n xmlns:x\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml\\\"\\u003e\\r\\n  \\u003cTextExpression.NamespacesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"x:String\\\"\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Statements\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Expressions\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Validation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.XamlIntegration\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Documents\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shapes\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shell\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Navigation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls.Primitives\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Animation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Input\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Diagnostics\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Media3D\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Ink\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.TextFormatting\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Effects\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Imaging\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Automation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Forms.Integration\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Debugger\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Collections.Generic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Linq\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Text\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Markup\\u003c/x:String\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.NamespacesForImplementation\\u003e\\r\\n  \\u003cTextExpression.ReferencesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"AssemblyReference\\\"\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Activities\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationFramework\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eWindowsBase\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationCore\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eWindowsFormsIntegration\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003emscorlib\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xml\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Core\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.ServiceModel\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Data\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xaml\\u003c/AssemblyReference\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.ReferencesForImplementation\\u003e\\r\\n  \\u003cFlowchart\\u003e\\r\\n    \\u003cFlowchart.Variables\\u003e\\r\\n      \\u003cVariable x:TypeArguments\\u003d\\\"x:Int32\\\" Name\\u003d\\\"M01_PublishValue0\\\" /\\u003e\\r\\n    \\u003c/Flowchart.Variables\\u003e\\r\\n    \\u003cFlowchart.StartNode\\u003e\\r\\n      \\u003cFlowStep x:Name\\u003d\\\"__ReferenceID0\\\"\\u003e\\r\\n        \\u003caau:EnvoyActivity Code\\u003d\\\"if(stop \\u003d\\u003d 1){return;}\\tString vdata \\u003d \\u0026quot;hello\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vtopic \\u003d \\u0026quot;tags_json\\u0026quot;;\\u0026#xD;\\u0026#xA;@envoy.M01_Publish{data:vdata,topic:vtopic} \\u0026gt; Vfe57eb8c6d47496595b93c7bfa737d9d;\\u0026#xA;\\u0026#xD;M01_PublishValue0 \\u003d Vfe57eb8c6d47496595b93c7bfa737d9d;\\u0026#xA;\\u0026#xD;\\\" DisplayName\\u003d\\\"M01_Publish\\\" ID\\u003d\\\"98b6d4a3-3978-4e5b-9aa1-8368bf5832c2\\\" Name\\u003d\\\"M01_Publish\\\" ReturnType\\u003d\\\"Integer\\\" ReturnVariable\\u003d\\\"M01_PublishValue0\\\"\\u003e\\r\\n          \\u003caau:EnvoyActivity.Props\\u003e\\r\\n            \\u003cscg:List x:TypeArguments\\u003d\\\"aaum:CActivityPropertyModel\\\" Capacity\\u003d\\\"4\\\"\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"data\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"hello\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"topic\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"tags_json\\\" /\\u003e\\r\\n            \\u003c/scg:List\\u003e\\r\\n          \\u003c/aau:EnvoyActivity.Props\\u003e\\r\\n          \\u003csap2010:WorkflowViewState.IdRef\\u003eEnvoyActivity_1\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n        \\u003c/aau:EnvoyActivity\\u003e\\r\\n        \\u003csap2010:WorkflowViewState.IdRef\\u003eFlowStep_1\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n      \\u003c/FlowStep\\u003e\\r\\n    \\u003c/Flowchart.StartNode\\u003e\\r\\n    \\u003cx:Reference\\u003e__ReferenceID0\\u003c/x:Reference\\u003e\\r\\n    \\u003csap2010:WorkflowViewState.IdRef\\u003eFlowchart_1\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n    \\u003csads:DebugSymbol.Symbol\\u003edw1DOlxFbXB0eS54YW1sAA\\u003d\\u003d\\u003c/sads:DebugSymbol.Symbol\\u003e\\r\\n  \\u003c/Flowchart\\u003e\\r\\n  \\u003csap2010:WorkflowViewState.IdRef\\u003eAI.ActiveEnvoy.UI.Flowchart_1\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n  \\u003csap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n    \\u003csap2010:ViewStateManager\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"EnvoyActivity_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"276,94\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eTrue\\u003c/x:Boolean\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"FlowStep_1\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e162,127.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e276,94\\u003c/av:Size\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"614,636\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eFalse\\u003c/x:Boolean\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e270,2.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e60,75\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e300,77.5 300,127.5\\u003c/av:PointCollection\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"654,716\\\" /\\u003e\\r\\n    \\u003c/sap2010:ViewStateManager\\u003e\\r\\n  \\u003c/sap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n\\u003c/Activity\\u003e\",\n    \"runtime\": \"int stop \\u003d 0;String next \\u003d null;Integer M01_PublishValue0 \\u003d 0;\\npublic void start() throws Exception {stop \\u003d 0; \\n__ReferenceID0();\\nwhile(next !\\u003d null \\u0026\\u0026 stop \\u003d\\u003d 0){ Thread.sleep(100);if(next.equals(\\\"__ReferenceID0\\\")){next \\u003d null ;__ReferenceID0();continue;}}}\\r\\n                public void __ReferenceID0() throws Exception\\r\\n                {\\r\\n                    if(stop \\u003d\\u003d 1){return;} String vdata \\u003d \\\"hello\\\";\\r\\n String vtopic \\u003d \\\"tags_json\\\";\\r\\n@envoy.M01_Publish{data:vdata,topic:vtopic} \\u003e Vfe57eb8c6d47496595b93c7bfa737d9d;\\n\\rM01_PublishValue0 \\u003d (Integer)Vfe57eb8c6d47496595b93c7bfa737d9d;\\n\\r\\r\\n                }\\npublic void stop() throws Exception {stop \\u003d 1;}\",\n    \"properties\": null\n  }\n]"}],"_postman_id":"05ba8c3c-5034-4a95-8877-58bc822dd75e"},{"name":"Get workflow","id":"f0ec00be-b09f-42e4-b824-a7e3f4614c9b","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/workflow/{workflowName}","description":"<p>Retrieve the workflow by name.</p>\n<p><b>Replace the {workflowName} path parameter by the appropriate workflow name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","{workflowName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"9b3612cb-b1b3-43b6-9ac0-ea6bc3d85841","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/workflow/ReadAndSend"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","name":"Content-Type","description":"The mime type of this content"},{"key":"Date","value":"Thu, 14 Feb 2019 13:04:44 GMT","name":"Date","description":"The date and time that the message was sent"},{"key":"Transfer-Encoding","value":"chunked","name":"Transfer-Encoding","description":"The form of encoding used to safely transfer the entity to the user. Currently defined methods are: chunked, compress, deflate, gzip, identity."}],"cookie":[{"expires":"Invalid Date","httpOnly":true,"domain":"10.0.0.247","path":"/ALE","secure":false,"value":"35393DDB987E0F901518B9F0704FB701","key":"JSESSIONID"}],"responseTime":null,"body":"{\n  \"name\": \"ReadAndSend\",\n  \"logicalReaders\": [],\n  \"started\": false,\n  \"autoStart\": false,\n  \"startTriggers\": [\n    {\n      \"device\": \"DEMO_SENSOR\",\n      \"action\": \"On\"\n    }\n  ],\n  \"stopTriggers\": [\n    {\n      \"device\": \"DEMO_SENSOR\",\n      \"action\": \"Off\"\n    }\n  ],\n  \"meta\": \"\\u003cActivity mc:Ignorable\\u003d\\\"sap sap2010 sads\\\" x:Class\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart\\\" mva:VisualBasic.Settings\\u003d\\\"{x:Null}\\\" sap2010:WorkflowViewState.IdRef\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart_1\\\"\\r\\n xmlns\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities\\\"\\r\\n xmlns:aau\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI;assembly\\u003dAI.ActiveEnvoy.UI\\\"\\r\\n xmlns:aaum\\u003d\\\"clr-namespace:AI.ActiveEnvoy.UI.Models;assembly\\u003dAI.ActiveEnvoy.UI.Models\\\"\\r\\n xmlns:av\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\\\"\\r\\n xmlns:mc\\u003d\\\"http://schemas.openxmlformats.org/markup-compatibility/2006\\\"\\r\\n xmlns:mva\\u003d\\\"clr-namespace:Microsoft.VisualBasic.Activities;assembly\\u003dSystem.Activities\\\"\\r\\n xmlns:sads\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger\\\"\\r\\n xmlns:sap\\u003d\\\"http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation\\\"\\r\\n xmlns:sap2010\\u003d\\\"http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation\\\"\\r\\n xmlns:scg\\u003d\\\"clr-namespace:System.Collections.Generic;assembly\\u003dmscorlib\\\"\\r\\n xmlns:sco\\u003d\\\"clr-namespace:System.Collections.ObjectModel;assembly\\u003dmscorlib\\\"\\r\\n xmlns:x\\u003d\\\"http://schemas.microsoft.com/winfx/2006/xaml\\\"\\u003e\\r\\n  \\u003cTextExpression.NamespacesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"x:String\\\"\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Statements\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Expressions\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Validation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.XamlIntegration\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Documents\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shapes\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Shell\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Navigation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Controls.Primitives\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Animation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Input\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Diagnostics\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Ink\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Automation\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.TextFormatting\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Effects\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Imaging\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Media.Media3D\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eMicrosoft.VisualBasic.Activities\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Activities.Debugger\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Collections.Generic\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Data\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Linq\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Text\\u003c/x:String\\u003e\\r\\n      \\u003cx:String\\u003eSystem.Windows.Markup\\u003c/x:String\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.NamespacesForImplementation\\u003e\\r\\n  \\u003cTextExpression.ReferencesForImplementation\\u003e\\r\\n    \\u003csco:Collection x:TypeArguments\\u003d\\\"AssemblyReference\\\"\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Activities\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationFramework\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eWindowsBase\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003ePresentationCore\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003emscorlib\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xml\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Core\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.ServiceModel\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Data\\u003c/AssemblyReference\\u003e\\r\\n      \\u003cAssemblyReference\\u003eSystem.Xaml\\u003c/AssemblyReference\\u003e\\r\\n    \\u003c/sco:Collection\\u003e\\r\\n  \\u003c/TextExpression.ReferencesForImplementation\\u003e\\r\\n  \\u003cFlowchart sap2010:WorkflowViewState.IdRef\\u003d\\\"Flowchart_1\\\"\\u003e\\r\\n    \\u003cFlowchart.Variables\\u003e\\r\\n      \\u003cVariable x:TypeArguments\\u003d\\\"x:String\\\" Name\\u003d\\\"A10_ReadAndSendToTagViewerValue0\\\" /\\u003e\\r\\n    \\u003c/Flowchart.Variables\\u003e\\r\\n    \\u003cFlowchart.StartNode\\u003e\\r\\n      \\u003cFlowStep x:Name\\u003d\\\"__ReferenceID0\\\"\\u003e\\r\\n        \\u003caau:EnvoyActivity Code\\u003d\\\"if(stop \\u003d\\u003d 1){return;}\\tString vLogicalDevice \\u003d \\u0026quot;DEMO\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tInteger vDuration \\u003d 3000;\\u0026#xD;\\u0026#xA;\\tString vReport \\u003d \\u0026quot;General\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vTDSFilter \\u003d \\u0026quot;True\\u0026quot;;\\u0026#xD;\\u0026#xA;\\tString vCommands \\u003d \\u0026quot;\\u0026quot;;\\u0026#xD;\\u0026#xA;@envoy.A10_ReadAndSendToTagViewer{LogicalDevice:vLogicalDevice,Duration:vDuration,Report:vReport,TDSFilter:vTDSFilter,Commands:vCommands} \\u0026gt; V7c173ed062be457fa506ba3ad0fe15ab;\\u0026#xA;\\u0026#xD;A10_ReadAndSendToTagViewerValue0 \\u003d V7c173ed062be457fa506ba3ad0fe15ab;\\u0026#xA;\\u0026#xD;\\\" DisplayName\\u003d\\\"A10_ReadAndSendToTagViewer\\\" ID\\u003d\\\"52403abb-1f26-4bfb-9a75-7238c68026ef\\\" Name\\u003d\\\"A10_ReadAndSendToTagViewer\\\" ReturnType\\u003d\\\"String\\\" ReturnVariable\\u003d\\\"A10_ReadAndSendToTagViewerValue0\\\"\\u003e\\r\\n          \\u003caau:EnvoyActivity.Props\\u003e\\r\\n            \\u003cscg:List x:TypeArguments\\u003d\\\"aaum:CActivityPropertyModel\\\" Capacity\\u003d\\\"8\\\"\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"LogicalDevice\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"LogicalDevices\\\" Value\\u003d\\\"DEMO\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Duration\\\" Type\\u003d\\\"Integer\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"3000\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Report\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Reports\\\" Value\\u003d\\\"General\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"Z09_ReturnTrueFalse\\\" Name\\u003d\\\"TDSFilter\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"ActivityDropDown\\\" Value\\u003d\\\"True\\\" /\\u003e\\r\\n              \\u003caaum:CActivityPropertyModel Activity\\u003d\\\"{x:Null}\\\" Name\\u003d\\\"Commands\\\" Type\\u003d\\\"String\\\" TypeEditor\\u003d\\\"Text\\\" Value\\u003d\\\"\\\" /\\u003e\\r\\n            \\u003c/scg:List\\u003e\\r\\n          \\u003c/aau:EnvoyActivity.Props\\u003e\\r\\n          \\u003csap2010:WorkflowViewState.IdRef\\u003eEnvoyActivity_12\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n        \\u003c/aau:EnvoyActivity\\u003e\\r\\n        \\u003cFlowStep.Next\\u003e\\r\\n          \\u003cx:Reference\\u003e__ReferenceID0\\u003c/x:Reference\\u003e\\r\\n        \\u003c/FlowStep.Next\\u003e\\r\\n        \\u003csap2010:WorkflowViewState.IdRef\\u003eFlowStep_12\\u003c/sap2010:WorkflowViewState.IdRef\\u003e\\r\\n      \\u003c/FlowStep\\u003e\\r\\n    \\u003c/Flowchart.StartNode\\u003e\\r\\n    \\u003cx:Reference\\u003e__ReferenceID0\\u003c/x:Reference\\u003e\\r\\n    \\u003csads:DebugSymbol.Symbol\\u003edw1DOlxFbXB0eS54YW1sAA\\u003d\\u003d\\u003c/sads:DebugSymbol.Symbol\\u003e\\r\\n  \\u003c/Flowchart\\u003e\\r\\n  \\u003csap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n    \\u003csap2010:ViewStateManager\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"EnvoyActivity_12\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"276,181\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eTrue\\u003c/x:Boolean\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"FlowStep_12\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e162,127.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e276,181\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e300,308.5 300,338 468,338 468,218 438,218\\u003c/av:PointCollection\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"614,664\\\"\\u003e\\r\\n        \\u003csap:WorkflowViewStateService.ViewState\\u003e\\r\\n          \\u003cscg:Dictionary x:TypeArguments\\u003d\\\"x:String, x:Object\\\"\\u003e\\r\\n            \\u003cx:Boolean x:Key\\u003d\\\"IsExpanded\\\"\\u003eFalse\\u003c/x:Boolean\\u003e\\r\\n            \\u003cav:Point x:Key\\u003d\\\"ShapeLocation\\\"\\u003e270,2.5\\u003c/av:Point\\u003e\\r\\n            \\u003cav:Size x:Key\\u003d\\\"ShapeSize\\\"\\u003e60,75\\u003c/av:Size\\u003e\\r\\n            \\u003cav:PointCollection x:Key\\u003d\\\"ConnectorLocation\\\"\\u003e300,77.5 300,127.5\\u003c/av:PointCollection\\u003e\\r\\n            \\u003cx:Double x:Key\\u003d\\\"Height\\\"\\u003e628\\u003c/x:Double\\u003e\\r\\n          \\u003c/scg:Dictionary\\u003e\\r\\n        \\u003c/sap:WorkflowViewStateService.ViewState\\u003e\\r\\n      \\u003c/sap2010:ViewStateData\\u003e\\r\\n      \\u003csap2010:ViewStateData Id\\u003d\\\"AI.ActiveEnvoy.UI.Flowchart_1\\\" sap:VirtualizedContainerService.HintSize\\u003d\\\"654,744\\\" /\\u003e\\r\\n    \\u003c/sap2010:ViewStateManager\\u003e\\r\\n  \\u003c/sap2010:WorkflowViewState.ViewStateManager\\u003e\\r\\n\\u003c/Activity\\u003e\",\n  \"runtime\": \"int stop \\u003d 0;String next \\u003d null;String A10_ReadAndSendToTagViewerValue0;\\npublic void start() throws Exception {stop \\u003d 0; \\n__ReferenceID0();\\nwhile(next !\\u003d null \\u0026\\u0026 stop \\u003d\\u003d 0){ Thread.sleep(100);if(next.equals(\\\"__ReferenceID0\\\")){next \\u003d null ;__ReferenceID0();continue;}}}\\r\\n                public void __ReferenceID0() throws Exception\\r\\n                {\\r\\n                    if(stop \\u003d\\u003d 1){return;} String vLogicalDevice \\u003d \\\"DEMO\\\";\\r\\n Integer vDuration \\u003d 3000;\\r\\n String vReport \\u003d \\\"General\\\";\\r\\n String vTDSFilter \\u003d \\\"True\\\";\\r\\n String vCommands \\u003d \\\"\\\";\\r\\n@envoy.A10_ReadAndSendToTagViewer{LogicalDevice:vLogicalDevice,Duration:vDuration,Report:vReport,TDSFilter:vTDSFilter,Commands:vCommands} \\u003e V7c173ed062be457fa506ba3ad0fe15ab;\\n\\rA10_ReadAndSendToTagViewerValue0 \\u003d (String)V7c173ed062be457fa506ba3ad0fe15ab;\\n\\rnext \\u003d \\\"__ReferenceID0\\\";\\r\\n                }\\npublic void stop() throws Exception {stop \\u003d 1;}\",\n  \"properties\": []\n}"}],"_postman_id":"f0ec00be-b09f-42e4-b824-a7e3f4614c9b"},{"name":"Invoke workflows","id":"986638ea-7deb-3d6c-54e3-2d915f7384ec","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{Workflow1}\",\n  \"{Workflow2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/workflow/invoke","description":"<p>Invoke all listed workflows.</p>\n<p><i>NOTE: The order in which the wokflows are started is independent from the order in which the workflows are stated.</i></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","invoke"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"986638ea-7deb-3d6c-54e3-2d915f7384ec"},{"name":"Delete workflows","id":"85fb6ffd-6f39-4404-9cf1-067163849e55","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{Workflow1}\",\n  \"{Workflow2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/workflow/delete","description":"<p>Delete all listed workflows.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"85fb6ffd-6f39-4404-9cf1-067163849e55"},{"name":"Stop workflows","id":"58d16f3c-ff27-42e4-19d2-8bdfe4f2eb4b","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  \"{Workflow1}\",\n  \"{Workflow2}\"\n]"},"url":"http://{{host}}:{{port}}/ALE/api/workflow/stop","description":"<p>Stop all listed workflows.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","stop"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"58d16f3c-ff27-42e4-19d2-8bdfe4f2eb4b"},{"name":"Invoke workflow","id":"8aa46208-f99c-9612-d8df-7acae36c8caf","request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/workflow/{workflowName}/invoke","description":"<p>Invoke a workflow.</p>\n<p><b>Replace the {workflowName} path parameter by the appropriate workflow name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","{workflowName}","invoke"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"8aa46208-f99c-9612-d8df-7acae36c8caf"},{"name":"Stop workflow","id":"d85a5772-9e1f-0189-988d-80928ae38816","request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/workflow/{workflowName}/stop","description":"<p>Stop a workflow.</p>\n<p><b>Replace the {workflowName} path parameter by the appropriate workflow name.</b></p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","{workflowName}","stop"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"d85a5772-9e1f-0189-988d-80928ae38816"},{"name":"Define workflow","id":"46d7a930-74aa-2023-474f-1c683dd9afb0","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"demo\",\n  \"logicalReaders\": null,\n  \"started\": false,\n  \"startTriggers\": [\n    {\n      \"device\": \"DVF_Dock_Load\",\n      \"action\": \"On\",\n      \"sampleProperty\": null\n    }\n  ],\n  \"stopTriggers\": [\n    {\n      \"device\": \"DVF_Dock_Unload\",\n      \"action\": \"On\",\n      \"sampleProperty\": null\n    }\n  ],\n  \"meta\": \"XAML Activities\",\n  \"properties\": null\n}"},"url":"http://{{host}}:{{port}}/ALE/api/workflow/","description":"<p>Create/ Update a workflow.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"46d7a930-74aa-2023-474f-1c683dd9afb0"},{"name":"Delete workflow","id":"91ae51aa-c8fd-45dd-82af-e82a45e5c1a5","request":{"method":"DELETE","header":[],"url":"http://{{host}}:{{port}}/ALE/api/workflow/{workflowName}","description":"<p>Delete a workflow by name.</p>\n<p><b>Replace {workflowName} by the name of the workflow.</b></p>\n<pre>Example: http://10.0.0.74:80/ALE/api/workflow/demo_workflow</pre>","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","{workflowName}"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"91ae51aa-c8fd-45dd-82af-e82a45e5c1a5"},{"name":"Bulk delete workflows","id":"b4c8b366-1d35-45b3-a158-b37e895e8b51","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"workflows\":[\n    {\n      \"name\":\"{workflowName1}\"\n    },\n    {\n      \"name\":\"{workflowName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/workflow/bulk/delete","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","bulk","delete"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"b4c8b366-1d35-45b3-a158-b37e895e8b51"},{"name":"Bulk start workflows","id":"74cd3a53-960a-4ee2-a50c-f3a39a6f9424","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"workflows\":[\n    {\n      \"name\":\"{workflowName1}\"\n    },\n    {\n      \"name\":\"{workflowName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/workflow/bulk/start","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","bulk","start"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"74cd3a53-960a-4ee2-a50c-f3a39a6f9424"},{"name":"Bulk stop workflows","id":"9089d317-cb6c-4825-9434-aed1e7c7ab7a","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"workflows\":[\n    {\n      \"name\":\"{workflowName1}\"\n    },\n    {\n      \"name\":\"{workflowName2}\"\n    }\n  ]\n}"},"url":"http://{{host}}:{{port}}/ALE/api/workflow/bulk/stop","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","workflow","bulk","stop"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"9089d317-cb6c-4825-9434-aed1e7c7ab7a"}],"id":"ef3218c8-31e9-020f-a484-2a1283d0f8ab","_postman_id":"ef3218c8-31e9-020f-a484-2a1283d0f8ab","description":""},{"name":"Ping","id":"4b21b339-368b-a8b8-b71d-cc7b95d09b8e","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/ping","description":"<p>Check if the core is up and accepting requests</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","ping"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"a95f6892-1d30-fc11-ee06-c4c01c96fc71","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/ping"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"17","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:14:53 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"22","body":"{\"response\":true}"}],"_postman_id":"4b21b339-368b-a8b8-b71d-cc7b95d09b8e"},{"name":"Get version","id":"27d426fa-8315-d64c-9046-9e301d9591b0","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/version","description":"<p>Retrieve the core's firmware version</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","version"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"497dd12e-a9cb-932c-3518-5d9ab64d7565","name":"sample-response","originalRequest":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/version"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"22","description":""},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":""},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:15:02 GMT","description":""}],"cookie":[],"responseTime":"22","body":"{\n    \"version\": \"4.0.33\"\n}"}],"_postman_id":"27d426fa-8315-d64c-9046-9e301d9591b0"},{"name":"List all available drivers","id":"f4bda6b6-edc1-360c-cb39-000a4f3ffaeb","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/driver","description":"<p>List all drivers</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","driver"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"4583cd3b-9c44-2635-7add-2684ffe935b7","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/driver"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"233","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:15:24 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"82","body":"[\n  {\n    \"vendor\": \"arp\",\n    \"version\": \"3.51\",\n    \"capabilities\": []\n  },\n  {\n    \"vendor\": \"llrp\",\n    \"version\": \"2.95\",\n    \"capabilities\": []\n  },\n  {\n    \"vendor\": \"octane\",\n    \"version\": \"0.9\",\n    \"capabilities\": []\n  }\n]"}],"_postman_id":"f4bda6b6-edc1-360c-cb39-000a4f3ffaeb"},{"name":"Reset hardware","id":"dc0f7d93-cdf4-e2a8-253a-afa7707ff8e6","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/reset/hardware","description":"<p>Reset the hardware</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","reset","hardware"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"dc0f7d93-cdf4-e2a8-253a-afa7707ff8e6"},{"name":"Check if license is valid","id":"678c3244-fd43-3bca-5501-4a1323f5b2f2","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/valid","description":"<p>Check whether the license is valid or not</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","valid"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"abbde0a4-2243-7e2c-5d4e-1b4463582794","name":"sample-response","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/valid"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"16","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Mon, 15 May 2017 08:15:34 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"90","body":"{\"isValid\":true}"}],"_postman_id":"678c3244-fd43-3bca-5501-4a1323f5b2f2"},{"name":"Process event for reader","id":"40561c7e-7cbb-49d4-19ff-1785c7e53ef4","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"vendor\":\"arp\",\n\t\"uid\":\"MAC_ADDRESS\",\n\t\"inputNumber\":12,\n\t\"inputValue\":22\n}"},"url":"http://{{host}}:{{port}}/ALE/api/event/process","description":"<p>Process an event for a certain reader</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","event","process"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"40561c7e-7cbb-49d4-19ff-1785c7e53ef4"},{"name":"Get general info","id":"7315eafb-aa9c-3d4c-aa5f-6e3346a91b71","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/info","description":"<p>Get general information.</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","info"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"73c2dcc1-74ca-e41e-545c-8d50050825b5","name":"general-info-example","originalRequest":{"method":"GET","header":[],"url":"http://{{host}}:{{port}}/ALE/api/info"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"94","description":""},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":""},{"name":"Date","key":"Date","value":"Fri, 23 Jun 2017 12:14:58 GMT","description":""}],"cookie":[],"responseTime":"130","body":"{\n    \"ping\": true,\n    \"valid\": true,\n    \"version\": \"4.0.33\",\n    \"setup\": \"Envoy\",\n    \"macAddress\": \"001B5F0108DB\"\n}"}],"_postman_id":"7315eafb-aa9c-3d4c-aa5f-6e3346a91b71"},{"name":"Get setup","id":"b002f8b3-769a-50f2-a915-cdc42a595d2f","request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/setup","description":"<p>Retrieve the setup name.</p>\n<p>In general this will always resolve to \"Envoy\"</p>\n","urlObject":{"protocol":"http","port":"{{port}}","path":["ALE","api","setup"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"9f3457b2-e399-57dc-9a9c-2e7bc038e140","name":"get-setup-example","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"http://{{host}}:{{port}}/ALE/api/setup"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"name":"Content-Length","key":"Content-Length","value":"20","description":"The length of the response body in octets (8-bit bytes)"},{"name":"Content-Type","key":"Content-Type","value":"application/json","description":"The mime type of this content"},{"name":"Date","key":"Date","value":"Fri, 23 Jun 2017 12:27:50 GMT","description":"The date and time that the message was sent"}],"cookie":[],"responseTime":"223","body":"{\"setup\":\"Envoy\"}"}],"_postman_id":"b002f8b3-769a-50f2-a915-cdc42a595d2f"}],"event":[{"listen":"prerequest","script":{"id":"568c39e2-287a-4cb7-88df-4e9bcf6ef4b8","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"1ed863d7-8c1c-4ed1-8e25-e6243d9cd6ce","type":"text/javascript","exec":[""]}}]}