@bitpoolos/edge-bacnet 1.0.6 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/bacnet_client.js +650 -233
  2. package/bacnet_device.js +65 -16
  3. package/bacnet_gateway.html +242 -99
  4. package/bacnet_gateway.js +211 -27
  5. package/bacnet_object.js +1 -1
  6. package/bacnet_read.html +211 -133
  7. package/bacnet_read.js +24 -24
  8. package/bacnet_server.js +321 -0
  9. package/bacnet_write.html +24 -15
  10. package/bacnet_write.js +0 -2
  11. package/common.js +95 -9
  12. package/edge-bacnet-datastore.cfg +0 -0
  13. package/package.json +6 -4
  14. package/resources/confirmationservice.min.js +1 -0
  15. package/resources/confirmdialog.min.js +1 -0
  16. package/resources/fonts/primeicons.woff2 +0 -0
  17. package/resources/node-bacnet/CHANGELOG.md +481 -0
  18. package/resources/{bacstack → node-bacnet}/LICENSE.md +3 -1
  19. package/resources/node-bacnet/README.md +91 -0
  20. package/resources/node-bacnet/docs/Client.html +4422 -0
  21. package/resources/node-bacnet/docs/bacnet-icon-quad.png +0 -0
  22. package/resources/node-bacnet/docs/bacnet-icon-quad128.png +0 -0
  23. package/resources/node-bacnet/docs/bacnet-icon-quad64.png +0 -0
  24. package/resources/node-bacnet/docs/bacnet-icon-small.xcf +0 -0
  25. package/resources/node-bacnet/docs/bacnet-icon.xcf +0 -0
  26. package/resources/node-bacnet/docs/bacnet.html +7032 -0
  27. package/resources/node-bacnet/docs/client.js.html +1759 -0
  28. package/resources/node-bacnet/docs/enum.js.html +2530 -0
  29. package/resources/node-bacnet/docs/global.html +2068 -0
  30. package/resources/node-bacnet/docs/images/mocha-logo.svg +65 -0
  31. package/resources/node-bacnet/docs/index.html +283 -0
  32. package/resources/node-bacnet/docs/scripts/collapse.js +11 -0
  33. package/resources/node-bacnet/docs/scripts/jquery-3.1.1.min.js +4 -0
  34. package/resources/node-bacnet/docs/scripts/linenumber.js +26 -0
  35. package/resources/node-bacnet/docs/scripts/prettify/Apache-License-2.0.txt +202 -0
  36. package/resources/node-bacnet/docs/scripts/prettify/lang-css.js +2 -0
  37. package/resources/node-bacnet/docs/scripts/prettify/prettify.js +28 -0
  38. package/resources/node-bacnet/docs/scripts/search.js +47 -0
  39. package/resources/node-bacnet/docs/services_i-am.js.html +157 -0
  40. package/resources/node-bacnet/docs/services_time-sync.js.html +118 -0
  41. package/resources/node-bacnet/docs/services_who-is.js.html +138 -0
  42. package/resources/node-bacnet/docs/styles/jsdoc.css +683 -0
  43. package/resources/node-bacnet/docs/styles/prettify.css +82 -0
  44. package/resources/node-bacnet/examples/discover-devices.js +66 -0
  45. package/resources/node-bacnet/examples/read-device.js +510 -0
  46. package/resources/node-bacnet/examples/subscribe-cov.js +75 -0
  47. package/resources/{bacstack → node-bacnet}/index.js +3 -0
  48. package/resources/{bacstack → node-bacnet}/lib/apdu.js +56 -39
  49. package/resources/{bacstack → node-bacnet}/lib/asn1.js +550 -532
  50. package/resources/node-bacnet/lib/bvlc.js +90 -0
  51. package/resources/node-bacnet/lib/client.js +1695 -0
  52. package/resources/node-bacnet/lib/enum.js +2463 -0
  53. package/resources/node-bacnet/lib/npdu.js +123 -0
  54. package/resources/{bacstack → node-bacnet}/lib/services/add-list-element.js +12 -6
  55. package/resources/{bacstack → node-bacnet}/lib/services/alarm-acknowledge.js +3 -3
  56. package/resources/{bacstack → node-bacnet}/lib/services/alarm-summary.js +5 -4
  57. package/resources/{bacstack → node-bacnet}/lib/services/atomic-read-file.js +49 -26
  58. package/resources/{bacstack → node-bacnet}/lib/services/atomic-write-file.js +40 -23
  59. package/resources/{bacstack → node-bacnet}/lib/services/cov-notify.js +33 -17
  60. package/resources/{bacstack → node-bacnet}/lib/services/create-object.js +23 -13
  61. package/resources/{bacstack → node-bacnet}/lib/services/delete-object.js +7 -2
  62. package/resources/{bacstack → node-bacnet}/lib/services/device-communication-control.js +8 -3
  63. package/resources/{bacstack → node-bacnet}/lib/services/error.js +7 -0
  64. package/resources/{bacstack → node-bacnet}/lib/services/event-information.js +10 -9
  65. package/resources/{bacstack → node-bacnet}/lib/services/event-notify-data.js +38 -16
  66. package/resources/{bacstack → node-bacnet}/lib/services/get-enrollment-summary.js +24 -11
  67. package/resources/{bacstack → node-bacnet}/lib/services/get-event-information.js +28 -13
  68. package/resources/node-bacnet/lib/services/i-am.js +90 -0
  69. package/resources/{bacstack/lib/services/i-have-broadcast.js → node-bacnet/lib/services/i-have.js} +3 -2
  70. package/resources/{bacstack → node-bacnet}/lib/services/index.js +7 -4
  71. package/resources/{bacstack → node-bacnet}/lib/services/life-safety-operation.js +3 -2
  72. package/resources/{bacstack → node-bacnet}/lib/services/private-transfer.js +3 -2
  73. package/resources/{bacstack → node-bacnet}/lib/services/read-property-multiple.js +11 -6
  74. package/resources/{bacstack → node-bacnet}/lib/services/read-property.js +42 -24
  75. package/resources/{bacstack → node-bacnet}/lib/services/read-range.js +37 -27
  76. package/resources/node-bacnet/lib/services/register-foreign-device.js +18 -0
  77. package/resources/{bacstack → node-bacnet}/lib/services/reinitialize-device.js +9 -4
  78. package/resources/{bacstack → node-bacnet}/lib/services/subscribe-cov.js +9 -4
  79. package/resources/{bacstack → node-bacnet}/lib/services/subscribe-property.js +18 -8
  80. package/resources/{bacstack → node-bacnet}/lib/services/time-sync.js +28 -5
  81. package/resources/{bacstack → node-bacnet}/lib/services/who-has.js +3 -3
  82. package/resources/{bacstack → node-bacnet}/lib/services/who-is.js +42 -9
  83. package/resources/{bacstack → node-bacnet}/lib/services/write-property-multiple.js +33 -16
  84. package/resources/{bacstack → node-bacnet}/lib/services/write-property.js +23 -13
  85. package/resources/node-bacnet/lib/transport.js +82 -0
  86. package/resources/node-bacnet/package.json +92 -0
  87. package/resources/primeicons.css +90 -2
  88. package/resources/bacstack/.codeclimate.yml +0 -15
  89. package/resources/bacstack/.dockerignore +0 -5
  90. package/resources/bacstack/.editorconfig +0 -13
  91. package/resources/bacstack/.eslintrc.yml +0 -13
  92. package/resources/bacstack/.github/ISSUE_TEMPLATE.md +0 -26
  93. package/resources/bacstack/.github/PULL_REQUEST_TEMPLATE.md +0 -14
  94. package/resources/bacstack/.github/workflows/ci.yml +0 -39
  95. package/resources/bacstack/.jscsrc +0 -8
  96. package/resources/bacstack/.jshintrc +0 -50
  97. package/resources/bacstack/.travis.yml +0 -27
  98. package/resources/bacstack/CHANGELOG.md +0 -232
  99. package/resources/bacstack/CODE_OF_CONDUCT.md +0 -74
  100. package/resources/bacstack/CONTRIBUTING.md +0 -77
  101. package/resources/bacstack/Dockerfile +0 -15
  102. package/resources/bacstack/FAQ.md +0 -64
  103. package/resources/bacstack/README.md +0 -157
  104. package/resources/bacstack/docker-compose.yml +0 -9
  105. package/resources/bacstack/lib/adpu.js +0 -190
  106. package/resources/bacstack/lib/bvlc.js +0 -43
  107. package/resources/bacstack/lib/client.js +0 -1028
  108. package/resources/bacstack/lib/enum.js +0 -1314
  109. package/resources/bacstack/lib/npdu.js +0 -119
  110. package/resources/bacstack/lib/services/i-am-broadcast.js +0 -51
  111. package/resources/bacstack/lib/services.js +0 -1963
  112. package/resources/bacstack/lib/transport.js +0 -52
  113. package/resources/bacstack/package-lock.json +0 -7974
  114. package/resources/bacstack/package.json +0 -84
  115. package/resources/bacstack/test/compliance/who-is.spec.js +0 -37
  116. package/resources/bacstack/test/integration/acknowledge-alarm.spec.js +0 -14
  117. package/resources/bacstack/test/integration/add-list-element.spec.js +0 -16
  118. package/resources/bacstack/test/integration/confirmed-event-notification.spec.js +0 -30
  119. package/resources/bacstack/test/integration/confirmed-private-transfer.spec.js +0 -15
  120. package/resources/bacstack/test/integration/create-object.spec.js +0 -16
  121. package/resources/bacstack/test/integration/delete-object.spec.js +0 -14
  122. package/resources/bacstack/test/integration/device-communication-control.spec.js +0 -14
  123. package/resources/bacstack/test/integration/get-alarm-summary.spec.js +0 -14
  124. package/resources/bacstack/test/integration/get-enrollment-summary.spec.js +0 -15
  125. package/resources/bacstack/test/integration/get-event-information.spec.js +0 -14
  126. package/resources/bacstack/test/integration/read-file.spec.js +0 -14
  127. package/resources/bacstack/test/integration/read-property-multiple.spec.js +0 -110
  128. package/resources/bacstack/test/integration/read-property.spec.js +0 -14
  129. package/resources/bacstack/test/integration/read-range.spec.js +0 -14
  130. package/resources/bacstack/test/integration/reinitialize-sevice.spec.js +0 -14
  131. package/resources/bacstack/test/integration/remove-list-element.spec.js +0 -16
  132. package/resources/bacstack/test/integration/subscribe-cov.spec.js +0 -14
  133. package/resources/bacstack/test/integration/subscribe-property.spec.js +0 -14
  134. package/resources/bacstack/test/integration/time-sync-utc.spec.js +0 -10
  135. package/resources/bacstack/test/integration/time-sync.spec.js +0 -10
  136. package/resources/bacstack/test/integration/unconfirmed-event-notification.spec.js +0 -28
  137. package/resources/bacstack/test/integration/unconfirmed-private-transfer.spec.js +0 -11
  138. package/resources/bacstack/test/integration/utils.js +0 -30
  139. package/resources/bacstack/test/integration/who-is.spec.js +0 -17
  140. package/resources/bacstack/test/integration/write-file.spec.js +0 -14
  141. package/resources/bacstack/test/integration/write-property-multiple.spec.js +0 -19
  142. package/resources/bacstack/test/integration/write-property.spec.js +0 -14
  143. package/resources/bacstack/test/unit/apdu.spec.js +0 -162
  144. package/resources/bacstack/test/unit/asn1.spec.js +0 -39
  145. package/resources/bacstack/test/unit/bacnet-apdu.spec.js +0 -161
  146. package/resources/bacstack/test/unit/bacnet-asn1.spec.js +0 -32
  147. package/resources/bacstack/test/unit/bacnet-bvlc.spec.js +0 -57
  148. package/resources/bacstack/test/unit/bacnet-npdu.spec.js +0 -118
  149. package/resources/bacstack/test/unit/bacnet-services.spec.js +0 -2052
  150. package/resources/bacstack/test/unit/bvlc.spec.js +0 -58
  151. package/resources/bacstack/test/unit/npdu.spec.js +0 -119
  152. package/resources/bacstack/test/unit/service-add-list-element.spec.js +0 -24
  153. package/resources/bacstack/test/unit/service-alarm-acknowledge.spec.js +0 -71
  154. package/resources/bacstack/test/unit/service-alarm-summary.spec.js +0 -22
  155. package/resources/bacstack/test/unit/service-atomic-read-file.spec.js +0 -54
  156. package/resources/bacstack/test/unit/service-atomic-write-file.spec.js +0 -56
  157. package/resources/bacstack/test/unit/service-cov-notify.spec.js +0 -98
  158. package/resources/bacstack/test/unit/service-create-object.spec.js +0 -90
  159. package/resources/bacstack/test/unit/service-delete-object.spec.js +0 -17
  160. package/resources/bacstack/test/unit/service-device-communication-control.spec.js +0 -29
  161. package/resources/bacstack/test/unit/service-error.spec.js +0 -17
  162. package/resources/bacstack/test/unit/service-event-information.spec.js +0 -48
  163. package/resources/bacstack/test/unit/service-event-notify-data.spec.js +0 -310
  164. package/resources/bacstack/test/unit/service-get-enrollment-summary.spec.js +0 -45
  165. package/resources/bacstack/test/unit/service-get-event-information.spec.js +0 -62
  166. package/resources/bacstack/test/unit/service-i-am.spec.js +0 -19
  167. package/resources/bacstack/test/unit/service-i-have-broadcast.spec.js +0 -18
  168. package/resources/bacstack/test/unit/service-life-safety-operation.spec.js +0 -19
  169. package/resources/bacstack/test/unit/service-private-transfer.spec.js +0 -18
  170. package/resources/bacstack/test/unit/service-read-property-multiple.spec.js +0 -131
  171. package/resources/bacstack/test/unit/service-read-property.spec.js +0 -541
  172. package/resources/bacstack/test/unit/service-read-range.spec.js +0 -97
  173. package/resources/bacstack/test/unit/service-reinitialize-device.spec.js +0 -27
  174. package/resources/bacstack/test/unit/service-subscribe-cov.spec.js +0 -32
  175. package/resources/bacstack/test/unit/service-subscribe-property.spec.js +0 -50
  176. package/resources/bacstack/test/unit/service-time-sync.spec.js +0 -18
  177. package/resources/bacstack/test/unit/service-who-has.spec.js +0 -33
  178. package/resources/bacstack/test/unit/service-who-is.spec.js +0 -17
  179. package/resources/bacstack/test/unit/service-write-property-multiple.spec.js +0 -143
  180. package/resources/bacstack/test/unit/service-write-property.spec.js +0 -198
  181. package/resources/bacstack/test/unit/utils.js +0 -6
@@ -0,0 +1,2530 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+
5
+ <meta charset="utf-8">
6
+ <title>enum.js - Documentation</title>
7
+
8
+
9
+ <script src="scripts/prettify/prettify.js"></script>
10
+ <script src="scripts/prettify/lang-css.js"></script>
11
+
12
+ <link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:400,700">
13
+ <link type="text/css" rel="stylesheet" href="styles/prettify.css">
14
+ <link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
15
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
16
+ </head>
17
+ <body>
18
+
19
+ <input type="checkbox" id="nav-trigger" class="nav-trigger" />
20
+ <label for="nav-trigger" class="navicon-button x">
21
+ <div class="navicon"></div>
22
+ </label>
23
+
24
+ <label for="nav-trigger" class="overlay"></label>
25
+
26
+ <nav >
27
+
28
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="bacnet.html">bacnet</a><ul class='methods'><li data-type='method'><a href="bacnet.html#.close">close</a></li><li data-type='method'><a href="bacnet.html#.confirmedCOVNotification">confirmedCOVNotification</a></li><li data-type='method'><a href="bacnet.html#.deviceCommunicationControl">deviceCommunicationControl</a></li><li data-type='method'><a href="bacnet.html#.iAmResponse">iAmResponse</a></li><li data-type='method'><a href="bacnet.html#.readProperty">readProperty</a></li><li data-type='method'><a href="bacnet.html#.readPropertyMultiple">readPropertyMultiple</a></li><li data-type='method'><a href="bacnet.html#.readPropertyResponse">readPropertyResponse</a></li><li data-type='method'><a href="bacnet.html#.reinitializeDevice">reinitializeDevice</a></li><li data-type='method'><a href="bacnet.html#.resultResponse">resultResponse</a></li><li data-type='method'><a href="bacnet.html#.timeSync">timeSync</a></li><li data-type='method'><a href="bacnet.html#.timeSyncUTC">timeSyncUTC</a></li><li data-type='method'><a href="bacnet.html#.unconfirmedCOVNotification">unconfirmedCOVNotification</a></li><li data-type='method'><a href="bacnet.html#.whoIs">whoIs</a></li><li data-type='method'><a href="bacnet.html#.writeProperty">writeProperty</a></li><li data-type='method'><a href="bacnet.html#.writePropertyMultiple">writePropertyMultiple</a></li></ul></li><li><a href="Client.html">Client</a><ul class='methods'><li data-type='method'><a href="Client.html#.createBitstring">createBitstring</a></li><li data-type='method'><a href="Client.html#acknowledgeAlarm">acknowledgeAlarm</a></li><li data-type='method'><a href="Client.html#addListElement">addListElement</a></li><li data-type='method'><a href="Client.html#confirmedEventNotification">confirmedEventNotification</a></li><li data-type='method'><a href="Client.html#confirmedPrivateTransfer">confirmedPrivateTransfer</a></li><li data-type='method'><a href="Client.html#createObject">createObject</a></li><li data-type='method'><a href="Client.html#deleteObject">deleteObject</a></li><li data-type='method'><a href="Client.html#errorResponse">errorResponse</a></li><li data-type='method'><a href="Client.html#getAlarmSummary">getAlarmSummary</a></li><li data-type='method'><a href="Client.html#getEnrollmentSummary">getEnrollmentSummary</a></li><li data-type='method'><a href="Client.html#getEventInformation">getEventInformation</a></li><li data-type='method'><a href="Client.html#iHaveResponse">iHaveResponse</a></li><li data-type='method'><a href="Client.html#readFile">readFile</a></li><li data-type='method'><a href="Client.html#readRange">readRange</a></li><li data-type='method'><a href="Client.html#removeListElement">removeListElement</a></li><li data-type='method'><a href="Client.html#sendBvlc">sendBvlc</a></li><li data-type='method'><a href="Client.html#simpleAckResponse">simpleAckResponse</a></li><li data-type='method'><a href="Client.html#subscribeCov">subscribeCov</a></li><li data-type='method'><a href="Client.html#subscribeProperty">subscribeProperty</a></li><li data-type='method'><a href="Client.html#unconfirmedEventNotification">unconfirmedEventNotification</a></li><li data-type='method'><a href="Client.html#unconfirmedPrivateTransfer">unconfirmedPrivateTransfer</a></li><li data-type='method'><a href="Client.html#writeFile">writeFile</a></li></ul></li></ul><h3>Events</h3><ul><li><a href="bacnet.html#.event:error">error</a></li><li><a href="bacnet.html#.event:iAm">iAm</a></li><li><a href="bacnet.html#.event:timeSync">timeSync</a></li><li><a href="bacnet.html#.event:whoIs">whoIs</a></li></ul><h3>Global</h3><ul><li><a href="global.html#ApplicationTag">ApplicationTag</a></li><li><a href="global.html#EnableDisable">EnableDisable</a></li><li><a href="global.html#MaxApduLengthAccepted">MaxApduLengthAccepted</a></li><li><a href="global.html#MaxSegmentsAccepted">MaxSegmentsAccepted</a></li><li><a href="global.html#ReinitializedState">ReinitializedState</a></li><li><a href="global.html#usc">usc</a></li></ul>
29
+ </nav>
30
+
31
+ <div id="main">
32
+
33
+ <h1 class="page-title">enum.js</h1>
34
+
35
+
36
+
37
+
38
+
39
+
40
+
41
+ <section>
42
+ <article>
43
+ <pre class="prettyprint source linenums"><code>'use strict';
44
+
45
+ /**
46
+ * Turn an enum into a string suitable for debugging.
47
+ * If value is not found in the enum the value itself is returned as string
48
+ *
49
+ * @param {object} group
50
+ * Enum group, e.g. bacnet.enum.ConfirmedServiceChoice.
51
+ *
52
+ * @param {number} value
53
+ * Enum value, e.g. 1. Note that this *must* be an integer value, so you may
54
+ * need to use parseInt(). Non-integer values will result in an exception.
55
+ *
56
+ * @param {boolean} [addNumberValue]
57
+ * Boolean if the numeric number should be appended or not, default is true
58
+ *
59
+ * @param {string} [undefinedFallbackValue]
60
+ * String to return if the given value is not found in the Enum object
61
+ *
62
+ * @example
63
+ * const s = bacnet.enum.getEnumName(
64
+ * bacnet.enum.PropertyIdentifier,
65
+ * bacnet.enum.PropertyIdentifier.PRESENT_VALUE
66
+ * );
67
+ * console.log(s); // "PRESENT_VALUE(85)"
68
+ */
69
+
70
+ const usc = require('underscore');
71
+ const debug = require('debug')('bacnet:enum:debug');
72
+ const trace = require('debug')('bacnet:enum:trace');
73
+
74
+ module.exports.getEnumName = function(group, value, addNumberValue = true, undefinedFallbackValue = undefined) {
75
+ if (!Number.isInteger(value)) {
76
+ throw new Error('getEnumName() can only be passed an integer value, was given "' + value + '"');
77
+ }
78
+ let foundEntry = null;
79
+ try {
80
+ const invertedGroup = usc.invert(group);
81
+ foundEntry = invertedGroup[value];
82
+ if (foundEntry === undefined &amp;&amp; undefinedFallbackValue) {
83
+ foundEntry = undefinedFallbackValue;
84
+ }
85
+ if (foundEntry === undefined) {
86
+ foundEntry = value.toString();
87
+ } else if (addNumberValue) {
88
+ foundEntry += '(' + value + ')';
89
+ }
90
+ } catch (e) {
91
+ trace(e.message);
92
+ foundEntry = null;
93
+ }
94
+ return foundEntry;
95
+ };
96
+
97
+ module.exports.PDU_TYPE_MASK = 0xF0;
98
+ module.exports.ASN1_MAX_OBJECT = 0x3FF;
99
+ module.exports.ASN1_INSTANCE_BITS = 22;
100
+ module.exports.ASN1_MAX_INSTANCE = 0x3FFFFF;
101
+ module.exports.ASN1_MAX_BITSTRING_BYTES = 15;
102
+ module.exports.ASN1_ARRAY_ALL = 0xFFFFFFFF;
103
+ module.exports.ASN1_NO_PRIORITY = 0;
104
+ module.exports.ASN1_MIN_PRIORITY = 1;
105
+ module.exports.ASN1_MAX_PRIORITY = 16;
106
+ module.exports.ASN1_MAX_APPLICATION_TAG = 16;
107
+ module.exports.ASN1_MAX_OBJECT_TYPE = 1024;
108
+ module.exports.ASN1_MAX_PROPERTY_ID = 4194303;
109
+ module.exports.BVLL_TYPE_BACNET_IP = 0x81;
110
+ module.exports.BVLC_HEADER_LENGTH = 4;
111
+
112
+ // ASHRE 135-2016 - 21 FORMAL DESCRIPTION OF APPLICATION PROTOCOL DATA UNITS - Enumerators
113
+ module.exports.ConfirmedServiceChoice = {
114
+ ACKNOWLEDGE_ALARM: 0,
115
+ CONFIRMED_COV_NOTIFICATION: 1,
116
+ CONFIRMED_EVENT_NOTIFICATION: 2,
117
+ GET_ALARM_SUMMARY: 3,
118
+ GET_ENROLLMENT_SUMMARY: 4,
119
+ SUBSCRIBE_COV: 5,
120
+ ATOMIC_READ_FILE: 6,
121
+ ATOMIC_WRITE_FILE: 7,
122
+ ADD_LIST_ELEMENT: 8,
123
+ REMOVE_LIST_ELEMENT: 9,
124
+ CREATE_OBJECT: 10,
125
+ DELETE_OBJECT: 11,
126
+ READ_PROPERTY: 12,
127
+ READ_PROPERTY_MULTIPLE: 14,
128
+ WRITE_PROPERTY: 15,
129
+ WRITE_PROPERTY_MULTIPLE: 16,
130
+ DEVICE_COMMUNICATION_CONTROL: 17,
131
+ CONFIRMED_PRIVATE_TRANSFER: 18,
132
+ CONFIRMED_TEXT_MESSAGE: 19,
133
+ REINITIALIZE_DEVICE: 20,
134
+ VT_OPEN: 21,
135
+ VT_CLOSE: 22,
136
+ VT_DATA: 23,
137
+ READ_RANGE: 26,
138
+ LIFE_SAFETY_OPERATION: 27,
139
+ SUBSCRIBE_COV_PROPERTY: 28,
140
+ GET_EVENT_INFORMATION: 29,
141
+ SUBSCRIBE_COV_PROPERTY_MULTIPLE: 30,
142
+ CONFIRMED_COV_NOTIFICATION_MULTIPLE: 31
143
+ };
144
+
145
+ module.exports.ConfirmedServiceChoiceName = usc.invert(module.exports.ConfirmedServiceChoice);
146
+
147
+ module.exports.UnconfirmedServiceChoice = {
148
+ I_AM: 0,
149
+ I_HAVE: 1,
150
+ UNCONFIRMED_COV_NOTIFICATION: 2,
151
+ UNCONFIRMED_EVENT_NOTIFICATION: 3,
152
+ UNCONFIRMED_PRIVATE_TRANSFER: 4,
153
+ UNCONFIRMED_TEXT_MESSAGE: 5,
154
+ TIME_SYNCHRONIZATION: 6,
155
+ WHO_HAS: 7,
156
+ WHO_IS: 8,
157
+ UTC_TIME_SYNCHRONIZATION: 9,
158
+ WRITE_GROUP: 10,
159
+ UNCONFIRMED_COV_NOTIFICATION_MULTIPLE: 11
160
+ };
161
+
162
+ module.exports.UnconfirmedServiceChoiceName = usc.invert(module.exports.UnconfirmedServiceChoice);
163
+
164
+ module.exports.AbortReason = {
165
+ OTHER: 0,
166
+ BUFFER_OVERFLOW: 1,
167
+ INVALID_APDU_IN_THIS_STATE: 2,
168
+ PREEMPTED_BY_HIGHER_PRIORITY_TASK: 3,
169
+ SEGMENTATION_NOT_SUPPORTED: 4,
170
+ SECURITY_ERROR: 5,
171
+ INSUFFICIENT_SECURITY: 6,
172
+ WINDOW_SIZE_OUT_OF_RANGE: 7,
173
+ APPLICATION_EXCEEDED_REPLY_TIME: 8,
174
+ OUT_OF_RESOURCES: 9,
175
+ TSM_TIMEOUT: 10,
176
+ APDU_TOO_LONG: 11
177
+ };
178
+
179
+ module.exports.AbortReasonName = usc.invert(module.exports.AbortReason);
180
+
181
+ module.exports.RejectReason = {
182
+ OTHER: 0,
183
+ BUFFER_OVERFLOW: 1,
184
+ INCONSISTENT_PARAMETERS: 2,
185
+ INVALID_PARAMETER_DATA_TYPE: 3,
186
+ INVALID_TAG: 4,
187
+ MISSING_REQUIRED_PARAMETER: 5,
188
+ PARAMETER_OUT_OF_RANGE: 6,
189
+ TOO_MANY_ARGUMENTS: 7,
190
+ UNDEFINED_ENUMERATION: 8,
191
+ UNRECOGNIZED_SERVICE: 9
192
+ };
193
+
194
+ module.exports.RejectReasonName = usc.invert(module.exports.RejectReason);
195
+
196
+ module.exports.ErrorClass = {
197
+ DEVICE: 0,
198
+ OBJECT: 1,
199
+ PROPERTY: 2,
200
+ RESOURCES: 3,
201
+ SECURITY: 4,
202
+ SERVICES: 5,
203
+ VT: 6,
204
+ COMMUNICATION: 7
205
+ };
206
+
207
+ module.exports.ErrorClassName = usc.invert(module.exports.ErrorClass);
208
+
209
+ module.exports.ErrorCode = {
210
+ ABORT_APDU_TOO_LONG: 123,
211
+ ABORT_APPLICATION_EXCEEDED_REPLY_TIME: 124,
212
+ ABORT_BUFFER_OVERFLOW: 51,
213
+ ABORT_INSUFFICIENT_SECURITY: 135,
214
+ ABORT_INVALID_APDU_IN_THIS_STATE: 52,
215
+ ABORT_OTHER: 56,
216
+ ABORT_OUT_OF_RESOURCES: 125,
217
+ ABORT_PREEMPTED_BY_HIGHER_PRIORITY_TASK: 53,
218
+ ABORT_PROPRIETARY: 55,
219
+ ABORT_SECURITY_ERROR: 136,
220
+ ABORT_SEGMENTATION_NOT_SUPPORTED: 54,
221
+ ABORT_TSM_TIMEOUT: 126,
222
+ ABORT_WINDOW_SIZE_OUT_OF_RANGE: 127,
223
+ ACCESS_DENIED: 85,
224
+ ADDRESSING_ERROR: 115,
225
+ BAD_DESTINATION_ADDRESS: 86,
226
+ BAD_DESTINATION_DEVICE_ID: 87,
227
+ BAD_SIGNATURE: 88,
228
+ BAD_SOURCE_ADDRESS: 89,
229
+ BAD_TIMESTAMP: 90,
230
+ BUSY: 82,
231
+ CANNOT_USE_KEY: 91,
232
+ CANNOT_VERIFY_MESSAGE_ID: 92,
233
+ CHARACTER_SET_NOT_SUPPORTED: 41,
234
+ COMMUNICATION_DISABLED: 83,
235
+ CONFIGURATION_IN_PROGRESS: 2,
236
+ CORRECT_KEY_REVISION: 93,
237
+ COV_SUBSCRIPTION_FAILED: 43,
238
+ DATATYPE_NOT_SUPPORTED: 47,
239
+ DELETE_FDT_ENTRY_FAILED: 120,
240
+ DESTINATION_DEVICE_ID_REQUIRED: 94,
241
+ DEVICE_BUSY: 3,
242
+ DISTRIBUTE_BROADCAST_FAILED: 121,
243
+ DUPLICATE_ENTRY: 137,
244
+ DUPLICATE_MESSAGE: 95,
245
+ DUPLICATE_NAME: 48,
246
+ DUPLICATE_OBJECT_ID: 49,
247
+ DYNAMIC_CREATION_NOT_SUPPORTED: 4,
248
+ ENCRYPTION_NOT_CONFIGURED: 96,
249
+ ENCRYPTION_REQUIRED: 97,
250
+ FILE_ACCESS_DENIED: 5,
251
+ FILE_FULL: 128,
252
+ INCONSISTENT_CONFIGURATION: 129,
253
+ INCONSISTENT_OBJECT_TYPE: 130,
254
+ INCONSISTENT_PARAMETERS: 7,
255
+ INCONSISTENT_SELECTION_CRITERION: 8,
256
+ INCORRECT_KEY: 98,
257
+ INTERNAL_ERROR: 131,
258
+ INVALID_ARRAY_INDEX: 42,
259
+ INVALID_CONFIGURATION_DATA: 46,
260
+ INVALID_DATA_TYPE: 9,
261
+ INVALID_EVENT_STATE: 73,
262
+ INVALID_FILE_ACCESS_METHOD: 10,
263
+ INVALID_FILE_START_POSITION: 11,
264
+ INVALID_KEY_DATA: 99,
265
+ INVALID_PARAMETER_DATA_TYPE: 13,
266
+ INVALID_TAG: 57,
267
+ INVALID_TIMESTAMP: 14,
268
+ INVALID_VALUE_IN_THIS_STATE: 138,
269
+ KEY_UPDATE_IN_PROGRESS: 100,
270
+ LIST_ELEMENT_NOT_FOUND: 81,
271
+ LOG_BUFFER_FULL: 75,
272
+ LOGGED_VALUE_PURGED: 76,
273
+ MALFORMED_MESSAGE: 101,
274
+ MESSAGE_TOO_LONG: 113,
275
+ MISSING_REQUIRED_PARAMETER: 16,
276
+ NETWORK_DOWN: 58,
277
+ NO_ALARM_CONFIGURED: 74,
278
+ NO_OBJECTS_OF_SPECIFIED_TYPE: 17,
279
+ NO_PROPERTY_SPECIFIED: 77,
280
+ NO_SPACE_FOR_OBJECT: 18,
281
+ NO_SPACE_TO_ADD_LIST_ELEMENT: 19,
282
+ NO_SPACE_TO_WRITE_PROPERTY: 20,
283
+ NO_VT_SESSIONS_AVAILABLE: 21,
284
+ NOT_CONFIGURED: 132,
285
+ NOT_CONFIGURED_FOR_TRIGGERED_LOGGING: 78,
286
+ NOT_COV_PROPERTY: 44,
287
+ NOT_KEY_SERVER: 102,
288
+ NOT_ROUTER_TO_DNET: 110,
289
+ OBJECT_DELETION_NOT_PERMITTED: 23,
290
+ OBJECT_IDENTIFIER_ALREADY_EXISTS: 24,
291
+ OPERATIONAL_PROBLEM: 25,
292
+ OPTIONAL_FUNCTIONALITY_NOT_SUPPORTED: 45,
293
+ OTHER: 0,
294
+ OUT_OF_MEMORY: 133,
295
+ PARAMETER_OUT_OF_RANGE: 80,
296
+ PASSWORD_FAILURE: 26,
297
+ PROPERTY_IS_NOT_A_LIST: 22,
298
+ PROPERTY_IS_NOT_AN_ARRAY: 50,
299
+ READ_ACCESS_DENIED: 27,
300
+ READ_BDT_FAILED: 117,
301
+ READ_FDT_FAILED: 119,
302
+ REGISTER_FOREIGN_DEVICE_FAILED: 118,
303
+ REJECT_BUFFER_OVERFLOW: 59,
304
+ REJECT_INCONSISTENT_PARAMETERS: 60,
305
+ REJECT_INVALID_PARAMETER_DATA_TYPE: 61,
306
+ REJECT_INVALID_TAG: 62,
307
+ REJECT_MISSING_REQUIRED_PARAMETER: 63,
308
+ REJECT_OTHER: 69,
309
+ REJECT_PARAMETER_OUT_OF_RANGE: 64,
310
+ REJECT_PROPRIETARY: 68,
311
+ REJECT_TOO_MANY_ARGUMENTS: 65,
312
+ REJECT_UNDEFINED_ENUMERATION: 66,
313
+ REJECT_UNRECOGNIZED_SERVICE: 67,
314
+ ROUTER_BUSY: 111,
315
+ SECURITY_ERROR: 114,
316
+ SECURITY_NOT_CONFIGURED: 103,
317
+ SERVICE_REQUEST_DENIED: 29,
318
+ SOURCE_SECURITY_REQUIRED: 104,
319
+ SUCCESS: 84,
320
+ TIMEOUT: 30,
321
+ TOO_MANY_KEYS: 105,
322
+ UNKNOWN_AUTHENTICATION_TYPE: 106,
323
+ UNKNOWN_DEVICE: 70,
324
+ UNKNOWN_FILE_SIZE: 122,
325
+ UNKNOWN_KEY: 107,
326
+ UNKNOWN_KEY_REVISION: 108,
327
+ UNKNOWN_NETWORK_MESSAGE: 112,
328
+ UNKNOWN_OBJECT: 31,
329
+ UNKNOWN_PROPERTY: 32,
330
+ UNKNOWN_ROUTE: 71,
331
+ UNKNOWN_SOURCE_MESSAGE: 109,
332
+ UNKNOWN_SUBSCRIPTION: 79,
333
+ UNKNOWN_VT_CLASS: 34,
334
+ UNKNOWN_VT_SESSION: 35,
335
+ UNSUPPORTED_OBJECT_TYPE: 36,
336
+ VALUE_NOT_INITIALIZED: 72,
337
+ VALUE_OUT_OF_RANGE: 37,
338
+ VALUE_TOO_LONG: 134,
339
+ VT_SESSION_ALREADY_CLOSED: 38,
340
+ VT_SESSION_TERMINATION_FAILURE: 39,
341
+ WRITE_ACCESS_DENIED: 40,
342
+ WRITE_BDT_FAILED: 116
343
+ };
344
+
345
+ module.exports.ErrorCodeName = usc.invert(module.exports.ErrorCode);
346
+
347
+ module.exports.AccessAuthenticationFactorDisable = {
348
+ NONE: 0,
349
+ DISABLED: 1,
350
+ DISABLED_LOST: 2,
351
+ DISABLED_STOLEN: 3,
352
+ DISABLED_DAMAGED: 4,
353
+ DISABLED_DESTROYED: 5
354
+ };
355
+
356
+ module.exports.AccessAuthenticationFactorDisableName = usc.invert(module.exports.AccessAuthenticationFactorDisable);
357
+
358
+ module.exports.AccessCredentialDisable = {
359
+ NONE: 0,
360
+ DISABLE: 1,
361
+ DISABLE_MANUAL: 2,
362
+ DISABLE_LOCKOUT: 3
363
+ };
364
+
365
+ module.exports.AccessCredentialDisableName = usc.invert(module.exports.AccessCredentialDisable);
366
+
367
+ module.exports.AccessCredentialDisableReason = {
368
+ DISABLED: 0,
369
+ DISABLED_NEEDS_PROVISIONING: 1,
370
+ DISABLED_UNASSIGNED: 2,
371
+ DISABLED_NOT_YET_ACTIVE: 3,
372
+ DISABLED_EXPIRED: 4,
373
+ DISABLED_LOCKOUT: 5,
374
+ DISABLED_MAX_DAYS: 6,
375
+ DISABLED_MAX_USES: 7,
376
+ DISABLED_INACTIVITY: 8,
377
+ DISABLED_MANUAL: 9
378
+ };
379
+
380
+ module.exports.AccessCredentialDisableReasonName = usc.invert(module.exports.AccessCredentialDisableReason);
381
+
382
+ module.exports.AccessEvent = {
383
+ NONE: 0,
384
+ GRANTED: 1,
385
+ MUSTER: 2,
386
+ PASSBACK_DETECTED: 3,
387
+ DURESS: 4,
388
+ TRACE: 5,
389
+ LOCKOUT_MAX_ATTEMPTS: 6,
390
+ LOCKOUT_OTHER: 7,
391
+ LOCKOUT_RELINQUISHED: 8,
392
+ LOCKED_BY_HIGHER_PRIORITY: 9,
393
+ OUT_OF_SERVICE: 10,
394
+ OUT_OF_SERVICE_RELINQUISHED: 11,
395
+ ACCOMPANIMENT_BY: 12,
396
+ AUTHENTICATION_FACTOR_READ: 13,
397
+ AUTHORIZATION_DELAYED: 14,
398
+ VERIFICATION_REQUIRED: 15,
399
+ NO_ENTRY_AFTER_GRANTED: 16,
400
+ DENIED_DENY_ALL: 128,
401
+ DENIED_UNKNOWN_CREDENTIAL: 129,
402
+ DENIED_AUTHENTICATION_UNAVAILABLE: 130,
403
+ DENIED_AUTHENTICATION_FACTOR_TIMEOUT: 131,
404
+ DENIED_INCORRECT_AUTHENTICATION_FACTOR: 132,
405
+ DENIED_ZONE_NO_ACCESS_RIGHTS: 133,
406
+ DENIED_POINT_NO_ACCESS_RIGHTS: 134,
407
+ DENIED_NO_ACCESS_RIGHTS: 135,
408
+ DENIED_OUT_OF_TIME_RANGE: 136,
409
+ DENIED_THREAT_LEVEL: 137,
410
+ DENIED_PASSBACK: 138,
411
+ DENIED_UNEXPECTED_LOCATION_USAGE: 139,
412
+ DENIED_MAX_ATTEMPTS: 140,
413
+ DENIED_LOWER_OCCUPANCY_LIMIT: 141,
414
+ DENIED_UPPER_OCCUPANCY_LIMIT: 142,
415
+ DENIED_AUTHENTICATION_FACTOR_LOST: 143,
416
+ DENIED_AUTHENTICATION_FACTOR_STOLEN: 144,
417
+ DENIED_AUTHENTICATION_FACTOR_DAMAGED: 145,
418
+ DENIED_AUTHENTICATION_FACTOR_DESTROYED: 146,
419
+ DENIED_AUTHENTICATION_FACTOR_DISABLED: 147,
420
+ DENIED_AUTHENTICATION_FACTOR_ERROR: 148,
421
+ DENIED_CREDENTIAL_UNASSIGNED: 149,
422
+ DENIED_CREDENTIAL_NOT_PROVISIONED: 150,
423
+ DENIED_CREDENTIAL_NOT_YET_ACTIVE: 151,
424
+ DENIED_CREDENTIAL_EXPIRED: 152,
425
+ DENIED_CREDENTIAL_MANUAL_DISABLE: 153,
426
+ DENIED_CREDENTIAL_LOCKOUT: 154,
427
+ DENIED_CREDENTIAL_MAX_DAYS: 155,
428
+ DENIED_CREDENTIAL_MAX_USES: 156,
429
+ DENIED_CREDENTIAL_INACTIVITY: 157,
430
+ DENIED_CREDENTIAL_DISABLED: 158,
431
+ DENIED_NO_ACCOMPANIMENT: 159,
432
+ DENIED_INCORRECT_ACCOMPANIMENT: 160,
433
+ DENIED_LOCKOUT: 161,
434
+ DENIED_VERIFICATION_FAILED: 162,
435
+ DENIED_VERIFICATION_TIMEOUT: 163,
436
+ DENIED_OTHER: 164
437
+ };
438
+
439
+ module.exports.AccessEventName = usc.invert(module.exports.AccessEvent);
440
+
441
+ module.exports.AccessPassbackMode = {
442
+ PASSBACK_OFF: 0,
443
+ HARD_PASSBACK: 1,
444
+ SOFT_PASSBACK: 2
445
+ };
446
+
447
+ module.exports.AccessPassbackModeName = usc.invert(module.exports.AccessPassbackMode);
448
+
449
+ module.exports.AccessUserType = {
450
+ ASSET: 0,
451
+ GROUP: 1,
452
+ PERSON: 2
453
+ };
454
+
455
+ module.exports.AccessUserTypeName = usc.invert(module.exports.AccessUserType);
456
+
457
+ module.exports.AccessZoneOccupancyState = {
458
+ NORMAL: 0,
459
+ BELOW_LOWER_LIMIT: 1,
460
+ AT_LOWER_LIMIT: 2,
461
+ AT_UPPER_LIMIT: 3,
462
+ ABOVE_UPPER_LIMIT: 4,
463
+ DISABLED: 5,
464
+ NOT_SUPPORTED: 6
465
+ };
466
+
467
+ module.exports.AccessZoneOccupancyStateName = usc.invert(module.exports.AccessZoneOccupancyState);
468
+
469
+ module.exports.Action = {
470
+ DIRECT: 0,
471
+ REVERSE: 1
472
+ };
473
+
474
+ module.exports.ActionName = usc.invert(module.exports.Action);
475
+
476
+ module.exports.AuthenticationFactorType = {
477
+ UNDEFINED: 0,
478
+ ERROR: 1,
479
+ CUSTOM: 2,
480
+ SIMPLE_NUMBER16: 3,
481
+ SIMPLE_NUMBER32: 4,
482
+ SIMPLE_NUMBER56: 5,
483
+ SIMPLE_ALPHA_NUMERIC: 6,
484
+ ABA_TRACK2: 7,
485
+ WIEGAND26: 8,
486
+ WIEGAND37: 9,
487
+ WIEGAND37_FACILITY: 10,
488
+ FACILITY16_CARD32: 11,
489
+ FACILITY32_CARD32: 12,
490
+ FASC_N: 13,
491
+ FASC_N_BCD: 14,
492
+ FASC_N_LARGE: 15,
493
+ FASC_N_LARGE_BCD: 16,
494
+ GSA75: 17,
495
+ CHUID: 18,
496
+ CHUID_FULL: 19,
497
+ GUID: 20,
498
+ CBEFF_A: 21,
499
+ CBEFF_B: 22,
500
+ CBEFF_C: 23,
501
+ USER_PASSWORD: 24
502
+ };
503
+
504
+ module.exports.AuthenticationFactorTypeName = usc.invert(module.exports.AuthenticationFactorType);
505
+
506
+ module.exports.AuthenticationStatus = {
507
+ NOT_READY: 0,
508
+ READY: 1, DISABLED: 2,
509
+ WAITING_FOR_AUTHENTICATION_FACTOR: 3,
510
+ WAITING_FOR_ACCOMPANIMENT: 4,
511
+ WAITING_FOR_VERIFICATION: 5,
512
+ IN_PROGRESS: 6
513
+ };
514
+
515
+ module.exports.AuthenticationStatusName = usc.invert(module.exports.AuthenticationStatus);
516
+
517
+ module.exports.AuthorizationExemption = {
518
+ PASSBACK: 0,
519
+ OCCUPANCY_CHECK: 1,
520
+ ACCESS_RIGHTS: 2,
521
+ LOCKOUT: 3,
522
+ DENY: 4,
523
+ VERIFICATION: 5,
524
+ AUTHORIZATION_DELAY: 6
525
+ };
526
+
527
+ module.exports.AuthorizationExemptionName = usc.invert(module.exports.AuthorizationExemption);
528
+
529
+ module.exports.AuthorizationMode = {
530
+ AUTHORIZE: 0,
531
+ GRANT_ACTIVE: 1,
532
+ DENY_ALL: 2,
533
+ VERIFICATION_REQUIRED: 3,
534
+ AUTHORIZATION_DELAYED: 4,
535
+ NONE: 5
536
+ };
537
+
538
+ module.exports.AuthorizationModeName = usc.invert(module.exports.AuthorizationMode);
539
+
540
+ module.exports.BackupState = {
541
+ IDLE: 0,
542
+ PREPARING_FOR_BACKUP: 1,
543
+ PREPARING_FOR_RESTORE: 2,
544
+ PERFORMING_A_BACKUP: 3,
545
+ PERFORMING_A_RESTORE: 4,
546
+ BACKUP_FAILURE: 5,
547
+ RESTORE_FAILURE: 6
548
+ };
549
+
550
+ module.exports.BackupStateName = usc.invert(module.exports.BackupState);
551
+
552
+ module.exports.BinaryLightingPV = {
553
+ OFF: 0,
554
+ ON: 1,
555
+ WARN: 2,
556
+ WARN_OFF: 3,
557
+ WARN_RELINQUISH: 4,
558
+ STOP: 5
559
+ };
560
+
561
+ module.exports.BinaryLightingPVName = usc.invert(module.exports.BinaryLightingPV);
562
+
563
+ module.exports.BinaryPV = {
564
+ INACTIVE: 0,
565
+ ACTIVE: 1
566
+ };
567
+
568
+ module.exports.BinaryPVName = usc.invert(module.exports.BinaryPV);
569
+
570
+ module.exports.DeviceStatus = {
571
+ OPERATIONAL: 0,
572
+ OPERATIONAL_READ_ONLY: 1,
573
+ DOWNLOAD_REQUIRED: 2,
574
+ DOWNLOAD_IN_PROGRESS: 3,
575
+ NON_OPERATIONAL: 4,
576
+ BACKUP_IN_PROGRESS: 5
577
+ };
578
+
579
+ module.exports.DeviceStatusName = usc.invert(module.exports.DeviceStatus);
580
+
581
+ module.exports.DoorAlarmState = {
582
+ NORMAL: 0,
583
+ ALARM: 1,
584
+ DOOR_OPEN_TOO_LONG: 2,
585
+ FORCED_OPEN: 3,
586
+ TAMPER: 4,
587
+ DOOR_FAULT: 5,
588
+ LOCK_DOWN: 6,
589
+ FREE_ACCESS: 7,
590
+ EGRESS_OPEN: 8
591
+ };
592
+
593
+ module.exports.DoorAlarmStateName = usc.invert(module.exports.DoorAlarmState);
594
+
595
+ module.exports.DoorSecuredStatus = {
596
+ SECURED: 0,
597
+ UNSECURED: 1,
598
+ UNKNOWN: 2
599
+ };
600
+
601
+ module.exports.DoorSecuredStatusName = usc.invert(module.exports.DoorSecuredStatus);
602
+
603
+ module.exports.DoorStatus = {
604
+ CLOSED: 0,
605
+ OPENED: 1,
606
+ UNKNOWN: 2,
607
+ DOOR_FAULT: 3,
608
+ UNUSED: 4,
609
+ NONE: 5,
610
+ CLOSING: 6,
611
+ OPENING: 7,
612
+ SAFETY_LOCKED: 8,
613
+ LIMITED_OPENED: 9
614
+ };
615
+
616
+ module.exports.DoorStatusName = usc.invert(module.exports.DoorStatus);
617
+
618
+ module.exports.DoorValue = {
619
+ LOCK: 0,
620
+ UNLOCK: 1,
621
+ PULSE_UNLOCK: 2,
622
+ EXTENDED_PULSE_UNLOCK: 3
623
+ };
624
+
625
+ module.exports.DoorValueName = usc.invert(module.exports.DoorValue);
626
+
627
+ module.exports.EngineeringUnits = {
628
+ METERS_PER_SECOND_PER_SECOND: 166,
629
+ SQUARE_METERS: 0,
630
+ SQUARE_CENTIMETERS: 116,
631
+ SQUARE_FEET: 1,
632
+ SQUARE_INCHES: 115,
633
+ CURRENCY1: 105,
634
+ CURRENCY2: 106,
635
+ CURRENCY3: 107,
636
+ CURRENCY4: 108,
637
+ CURRENCY5: 109,
638
+ CURRENCY6: 110,
639
+ CURRENCY7: 111,
640
+ CURRENCY8: 112,
641
+ CURRENCY9: 113,
642
+ CURRENCY10: 114,
643
+ MILLIAMPERES: 2,
644
+ AMPERES: 3,
645
+ AMPERES_PER_METER: 167,
646
+ AMPERES_PER_SQUARE_METER: 168,
647
+ AMPERE_SQUARE_METERS: 169,
648
+ DECIBELS: 199,
649
+ DECIBELS_MILLIVOLT: 200,
650
+ DECIBELS_VOLT: 201,
651
+ FARADS: 170,
652
+ HENRYS: 171,
653
+ OHMS: 4,
654
+ OHM_METER_SQUARED_PER_METER: 237,
655
+ OHM_METERS: 172,
656
+ MILLIOHMS: 145,
657
+ KILOHMS: 122,
658
+ MEGOHMS: 123,
659
+ MICROSIEMENS: 190,
660
+ MILLISIEMENS: 202,
661
+ SIEMENS: 173,
662
+ SIEMENS_PER_METER: 174,
663
+ TESLAS: 175,
664
+ VOLTS: 5,
665
+ MILLIVOLTS: 124,
666
+ KILOVOLTS: 6,
667
+ MEGAVOLTS: 7,
668
+ VOLT_AMPERES: 8,
669
+ KILOVOLT_AMPERES: 9,
670
+ MEGAVOLT_AMPERES: 10,
671
+ VOLT_AMPERES_REACTIVE: 11,
672
+ KILOVOLT_AMPERES_REACTIVE: 12,
673
+ MEGAVOLT_AMPERES_REACTIVE: 13,
674
+ VOLTS_PER_DEGREE_KELVIN: 176,
675
+ VOLTS_PER_METER: 177,
676
+ DEGREES_PHASE: 14,
677
+ POWER_FACTOR: 15,
678
+ WEBERS: 178,
679
+ AMPERE_SECONDS: 238,
680
+ VOLT_AMPERE_HOURS: 239,
681
+ KILOVOLT_AMPERE_HOURS: 240,
682
+ MEGAVOLT_AMPERE_HOURS: 241,
683
+ VOLT_AMPERE_HOURS_REACTIVE: 242,
684
+ KILOVOLT_AMPERE_HOURS_REACTIVE: 243,
685
+ MEGAVOLT_AMPERE_HOURS_REACTIVE: 244,
686
+ VOLT_SQUARE_HOURS: 245,
687
+ AMPERE_SQUARE_HOURS: 246,
688
+ JOULES: 16,
689
+ KILOJOULES: 17,
690
+ KILOJOULES_PER_KILOGRAM: 125,
691
+ MEGAJOULES: 126,
692
+ WATT_HOURS: 18,
693
+ KILOWATT_HOURS: 19,
694
+ MEGAWATT_HOURS: 146,
695
+ WATT_HOURS_REACTIVE: 203,
696
+ KILOWATT_HOURS_REACTIVE: 204,
697
+ MEGAWATT_HOURS_REACTIVE: 205,
698
+ BTUS: 20,
699
+ KILO_BTUS: 147,
700
+ MEGA_BTUS: 148,
701
+ THERMS: 21,
702
+ TON_HOURS: 22,
703
+ JOULES_PER_KILOGRAM_DRY_AIR: 23,
704
+ KILOJOULES_PER_KILOGRAM_DRY_AIR: 149,
705
+ MEGAJOULES_PER_KILOGRAM_DRY_AIR: 150,
706
+ BTUS_PER_POUND_DRY_AIR: 24,
707
+ BTUS_PER_POUND: 117,
708
+ JOULES_PER_DEGREE_KELVIN: 127,
709
+ KILOJOULES_PER_DEGREE_KELVIN: 151,
710
+ MEGAJOULES_PER_DEGREE_KELVIN: 152,
711
+ JOULES_PER_KILOGRAM_DEGREE_KELVIN: 128,
712
+ NEWTON: 153,
713
+ CYCLES_PER_HOUR: 25,
714
+ CYCLES_PER_MINUTE: 26,
715
+ HERTZ: 27,
716
+ KILOHERTZ: 129,
717
+ MEGAHERTZ: 130,
718
+ PER_HOUR: 131,
719
+ GRAMS_OF_WATER_PER_KILOGRAM_DRY_AIR: 28,
720
+ PERCENT_RELATIVE_HUMIDITY: 29,
721
+ MICROMETERS: 194,
722
+ MILLIMETERS: 30,
723
+ CENTIMETERS: 118,
724
+ KILOMETERS: 193,
725
+ METERS: 31,
726
+ INCHES: 32,
727
+ FEET: 33,
728
+ CANDELAS: 179,
729
+ CANDELAS_PER_SQUARE_METER: 180,
730
+ WATTS_PER_SQUARE_FOOT: 34,
731
+ WATTS_PER_SQUARE_METER: 35,
732
+ LUMENS: 36,
733
+ LUXES: 37,
734
+ FOOT_CANDLES: 38,
735
+ MILLIGRAMS: 196,
736
+ GRAMS: 195,
737
+ KILOGRAMS: 39,
738
+ POUNDS_MASS: 40,
739
+ TONS: 41,
740
+ GRAMS_PER_SECOND: 154,
741
+ GRAMS_PER_MINUTE: 155,
742
+ KILOGRAMS_PER_SECOND: 42,
743
+ KILOGRAMS_PER_MINUTE: 43,
744
+ KILOGRAMS_PER_HOUR: 44,
745
+ POUNDS_MASS_PER_SECOND: 119,
746
+ POUNDS_MASS_PER_MINUTE: 45,
747
+ POUNDS_MASS_PER_HOUR: 46,
748
+ TONS_PER_HOUR: 156,
749
+ MILLIWATTS: 132,
750
+ WATTS: 47,
751
+ KILOWATTS: 48,
752
+ MEGAWATTS: 49,
753
+ BTUS_PER_HOUR: 50,
754
+ KILO_BTUS_PER_HOUR: 157,
755
+ JOULE_PER_HOURS: 247,
756
+ HORSEPOWER: 51,
757
+ TONS_REFRIGERATION: 52,
758
+ PASCALS: 53,
759
+ HECTOPASCALS: 133,
760
+ KILOPASCALS: 54,
761
+ MILLIBARS: 134,
762
+ BARS: 55,
763
+ POUNDS_FORCE_PER_SQUARE_INCH: 56,
764
+ MILLIMETERS_OF_WATER: 206,
765
+ CENTIMETERS_OF_WATER: 57,
766
+ INCHES_OF_WATER: 58,
767
+ MILLIMETERS_OF_MERCURY: 59,
768
+ CENTIMETERS_OF_MERCURY: 60,
769
+ INCHES_OF_MERCURY: 61,
770
+ DEGREES_CELSIUS: 62,
771
+ DEGREES_KELVIN: 63,
772
+ DEGREES_KELVIN_PER_HOUR: 181,
773
+ DEGREES_KELVIN_PER_MINUTE: 182,
774
+ DEGREES_FAHRENHEIT: 64,
775
+ DEGREE_DAYS_CELSIUS: 65,
776
+ DEGREE_DAYS_FAHRENHEIT: 66,
777
+ DELTA_DEGREES_FAHRENHEIT: 120,
778
+ DELTA_DEGREES_KELVIN: 121,
779
+ YEARS: 67,
780
+ MONTHS: 68,
781
+ WEEKS: 69,
782
+ DAYS: 70,
783
+ HOURS: 71,
784
+ MINUTES: 72,
785
+ SECONDS: 73,
786
+ HUNDREDTHS_SECONDS: 158,
787
+ MILLISECONDS: 159,
788
+ NEWTON_METERS: 160,
789
+ MILLIMETERS_PER_SECOND: 161,
790
+ MILLIMETERS_PER_MINUTE: 162,
791
+ METERS_PER_SECOND: 74,
792
+ METERS_PER_MINUTE: 163,
793
+ METERS_PER_HOUR: 164,
794
+ KILOMETERS_PER_HOUR: 75,
795
+ FEET_PER_SECOND: 76,
796
+ FEET_PER_MINUTE: 77,
797
+ MILES_PER_HOUR: 78,
798
+ CUBIC_FEET: 79,
799
+ CUBIC_METERS: 80,
800
+ IMPERIAL_GALLONS: 81,
801
+ MILLILITERS: 197,
802
+ LITERS: 82,
803
+ US_GALLONS: 83,
804
+ CUBIC_FEET_PER_SECOND: 142,
805
+ CUBIC_FEET_PER_MINUTE: 84,
806
+ MILLION_STANDARD_CUBIC_FEET_PER_MINUTE: 254,
807
+ CUBIC_FEET_PER_HOUR: 191,
808
+ CUBIC_FEET_PER_DAY: 248,
809
+ STANDARD_CUBIC_FEET_PER_DAY: 47808,
810
+ MILLION_STANDARD_CUBIC_FEET_PER_DAY: 47809,
811
+ THOUSAND_CUBIC_FEET_PER_DAY: 47810,
812
+ THOUSAND_STANDARD_CUBIC_FEET_PER_DAY: 47811,
813
+ POUNDS_MASS_PER_DAY: 47812,
814
+ CUBIC_METERS_PER_SECOND: 85,
815
+ CUBIC_METERS_PER_MINUTE: 165,
816
+ CUBIC_METERS_PER_HOUR: 135,
817
+ CUBIC_METERS_PER_DAY: 249,
818
+ IMPERIAL_GALLONS_PER_MINUTE: 86,
819
+ MILLILITERS_PER_SECOND: 198,
820
+ LITERS_PER_SECOND: 87,
821
+ LITERS_PER_MINUTE: 88,
822
+ LITERS_PER_HOUR: 136,
823
+ US_GALLONS_PER_MINUTE: 89,
824
+ US_GALLONS_PER_HOUR: 192,
825
+ DEGREES_ANGULAR: 90,
826
+ DEGREES_CELSIUS_PER_HOUR: 91,
827
+ DEGREES_CELSIUS_PER_MINUTE: 92,
828
+ DEGREES_FAHRENHEIT_PER_HOUR: 93,
829
+ DEGREES_FAHRENHEIT_PER_MINUTE: 94,
830
+ JOULE_SECONDS: 183,
831
+ KILOGRAMS_PER_CUBIC_METER: 186,
832
+ KILOWATT_HOURS_PER_SQUARE_METER: 137,
833
+ KILOWATT_HOURS_PER_SQUARE_FOOT: 138,
834
+ WATT_HOURS_PER_CUBIC_METER: 250,
835
+ JOULES_PER_CUBIC_METER: 251,
836
+ MEGAJOULES_PER_SQUARE_METER: 139,
837
+ MEGAJOULES_PER_SQUARE_FOOT: 140,
838
+ MOLE_PERCENT: 252,
839
+ NO_UNITS: 95,
840
+ NEWTON_SECONDS: 187,
841
+ NEWTONS_PER_METER: 188,
842
+ PARTS_PER_MILLION: 96,
843
+ PARTS_PER_BILLION: 97,
844
+ PASCAL_SECONDS: 253,
845
+ PERCENT: 98,
846
+ PERCENT_OBSCURATION_PER_FOOT: 143,
847
+ PERCENT_OBSCURATION_PER_METER: 144,
848
+ PERCENT_PER_SECOND: 99,
849
+ PER_MINUTE: 100,
850
+ PER_SECOND: 101,
851
+ PSI_PER_DEGREE_FAHRENHEIT: 102,
852
+ RADIANS: 103,
853
+ RADIANS_PER_SECOND: 184,
854
+ REVOLUTIONS_PER_MINUTE: 104,
855
+ SQUARE_METERS_PER_NEWTON: 185,
856
+ WATTS_PER_METER_PER_DEGREE_KELVIN: 189,
857
+ WATTS_PER_SQUARE_METER_DEGREE_KELVIN: 141,
858
+ PER_MILLE: 207,
859
+ GRAMS_PER_GRAM: 208,
860
+ KILOGRAMS_PER_KILOGRAM: 209,
861
+ GRAMS_PER_KILOGRAM: 210,
862
+ MILLIGRAMS_PER_GRAM: 211,
863
+ MILLIGRAMS_PER_KILOGRAM: 212,
864
+ GRAMS_PER_MILLILITER: 213,
865
+ GRAMS_PER_LITER: 214,
866
+ MILLIGRAMS_PER_LITER: 215,
867
+ MICROGRAMS_PER_LITER: 216,
868
+ GRAMS_PER_CUBIC_METER: 217,
869
+ MILLIGRAMS_PER_CUBIC_METER: 218,
870
+ MICROGRAMS_PER_CUBIC_METER: 219,
871
+ NANOGRAMS_PER_CUBIC_METER: 220,
872
+ GRAMS_PER_CUBIC_CENTIMETER: 221,
873
+ BECQUERELS: 222,
874
+ KILOBECQUERELS: 223,
875
+ MEGABECQUERELS: 224,
876
+ GRAY: 225,
877
+ MILLIGRAY: 226,
878
+ MICROGRAY: 227,
879
+ SIEVERTS: 228,
880
+ MILLISIEVERTS: 229,
881
+ MICROSIEVERTS: 230,
882
+ MICROSIEVERTS_PER_HOUR: 231,
883
+ MILLIREMS: 47814,
884
+ MILLIREMS_PER_HOUR: 47815,
885
+ DECIBELS_A: 232,
886
+ NEPHELOMETRIC_TURBIDITY_UNIT: 233,
887
+ PH: 234,
888
+ GRAMS_PER_SQUARE_METER: 235,
889
+ MINUTES_PER_DEGREE_KELVIN: 236
890
+ };
891
+
892
+ module.exports.EngineeringUnitsName = usc.invert(module.exports.EngineeringUnits);
893
+
894
+ module.exports.EscalatorFault = {
895
+ CONTROLLER_FAULT: 0,
896
+ DRIVE_AND_MOTOR_FAULT: 1,
897
+ MECHANICAL_COMPONENT_FAULT: 2,
898
+ OVERSPEED_FAULT: 3,
899
+ POWER_SUPPLY_FAULT: 4,
900
+ SAFETY_DEVICE_FAULT: 5,
901
+ CONTROLLER_SUPPLY_FAULT: 6,
902
+ DRIVE_TEMPERATURE_EXCEEDED: 7,
903
+ COMB_PLATE_FAULT: 8
904
+ };
905
+
906
+ module.exports.EscalatorFaultName = usc.invert(module.exports.EscalatorFault);
907
+
908
+ module.exports.EscalatorMode = {
909
+ UNKNOWN: 0,
910
+ STOP: 1,
911
+ UP: 2,
912
+ DOWN: 3,
913
+ INSPECTION: 4,
914
+ OUT_OF_SERVICE: 5
915
+ };
916
+
917
+ module.exports.EscalatorModeName = usc.invert(module.exports.EscalatorMode);
918
+
919
+ module.exports.EscalatorOperationDirection = {
920
+ UNKNOWN: 0,
921
+ STOPPED: 1,
922
+ UP_RATED_SPEED: 2,
923
+ UP_REDUCED_SPEED: 3,
924
+ DOWN_RATED_SPEED: 4,
925
+ DOWN_REDUCED_SPEED: 5
926
+ };
927
+
928
+ module.exports.EscalatorOperationDirectionName = usc.invert(module.exports.EscalatorOperationDirection);
929
+
930
+ module.exports.EventState = {
931
+ NORMAL: 0,
932
+ FAULT: 1,
933
+ OFFNORMAL: 2,
934
+ HIGH_LIMIT: 3,
935
+ LOW_LIMIT: 4,
936
+ LIFE_SAFETY_ALARM: 5
937
+ };
938
+
939
+ module.exports.EventStateName = usc.invert(module.exports.EventState);
940
+
941
+ module.exports.EventType = {
942
+ CHANGE_OF_BITSTRING: 0,
943
+ CHANGE_OF_STATE: 1,
944
+ CHANGE_OF_VALUE: 2,
945
+ COMMAND_FAILURE: 3,
946
+ FLOATING_LIMIT: 4,
947
+ OUT_OF_RANGE: 5,
948
+ COMPLEX_EVENT_TYPE: 6,
949
+ CHANGE_OF_LIFE_SAFETY: 8,
950
+ EXTENDED: 9,
951
+ BUFFER_READY: 10,
952
+ UNSIGNED_RANGE: 11,
953
+ ACCESS_EVENT: 13,
954
+ DOUBLE_OUT_OF_RANGE: 14,
955
+ SIGNED_OUT_OF_RANGE: 15,
956
+ UNSIGNED_OUT_OF_RANGE: 16,
957
+ CHANGE_OF_CHARACTERSTRING: 17,
958
+ CHANGE_OF_STATUS_FLAGS: 18,
959
+ CHANGE_OF_RELIABILITY: 19,
960
+ NONE: 20,
961
+ CHANGE_OF_DISCRETE_VALUE: 21,
962
+ CHANGE_OF_TIMER: 22
963
+ };
964
+
965
+ module.exports.EventTypeName = usc.invert(module.exports.EventType);
966
+
967
+ module.exports.FaultType = {
968
+ NONE: 0,
969
+ FAULT_CHARACTERSTRING: 1,
970
+ FAULT_EXTENDED: 2,
971
+ FAULT_LIFE_SAFETY: 3,
972
+ FAULT_STATE: 4,
973
+ FAULT_STATUS_FLAGS: 5,
974
+ FAULT_OUT_OF_RANGE: 6,
975
+ FAULT_LISTED: 7
976
+ };
977
+
978
+ module.exports.FaultTypeName = usc.invert(module.exports.FaultType);
979
+
980
+ module.exports.FileAccessMethod = {
981
+ RECORD_ACCESS: 0,
982
+ STREAM_ACCESS: 1
983
+ };
984
+
985
+ module.exports.FileAccessMethodName = usc.invert(module.exports.FileAccessMethod);
986
+
987
+ module.exports.IPMode = {
988
+ NORMAL: 0,
989
+ FOREIGN: 1,
990
+ BBMD: 2
991
+ };
992
+
993
+ module.exports.IPModeName = usc.invert(module.exports.IPMode);
994
+
995
+ module.exports.LifeSafetyMode = {
996
+ OFF: 0,
997
+ ON: 1,
998
+ TEST: 2,
999
+ MANNED: 3,
1000
+ UNMANNED: 4,
1001
+ ARMED: 5,
1002
+ DISARMED: 6,
1003
+ PREARMED: 7,
1004
+ SLOW: 8,
1005
+ FAST: 9,
1006
+ DISCONNECTED: 10,
1007
+ ENABLED: 11,
1008
+ DISABLED: 12,
1009
+ AUTOMATIC_RELEASE_DISABLED: 13,
1010
+ DEFAULT: 14
1011
+ };
1012
+
1013
+ module.exports.LifeSafetyModeName = usc.invert(module.exports.LifeSafetyMode);
1014
+
1015
+ module.exports.LifeSafetyOperation = {
1016
+ NONE: 0,
1017
+ SILENCE: 1,
1018
+ SILENCE_AUDIBLE: 2,
1019
+ SILENCE_VISUAL: 3,
1020
+ RESET: 4,
1021
+ RESET_ALARM: 5,
1022
+ RESET_FAULT: 6,
1023
+ UNSILENCE: 7,
1024
+ UNSILENCE_AUDIBLE: 8,
1025
+ UNSILENCE_VISUAL: 9
1026
+ };
1027
+
1028
+ module.exports.LifeSafetyOperationName = usc.invert(module.exports.LifeSafetyOperation);
1029
+
1030
+ module.exports.LifeSafetyState = {
1031
+ QUIET: 0,
1032
+ PRE_ALARM: 1,
1033
+ ALARM: 2,
1034
+ FAULT: 3,
1035
+ FAULT_PRE_ALARM: 4,
1036
+ FAULT_ALARM: 5,
1037
+ NOT_READY: 6,
1038
+ ACTIVE: 7,
1039
+ TAMPER: 8,
1040
+ TEST_ALARM: 9,
1041
+ TEST_ACTIVE: 10,
1042
+ TEST_FAULT: 11,
1043
+ TEST_FAULT_ALARM: 12,
1044
+ HOLDUP: 13,
1045
+ DURESS: 14,
1046
+ TAMPER_ALARM: 15,
1047
+ ABNORMAL: 16,
1048
+ EMERGENCY_POWER: 17,
1049
+ DELAYED: 18,
1050
+ BLOCKED: 19,
1051
+ LOCAL_ALARM: 20,
1052
+ GENERAL_ALARM: 21,
1053
+ SUPERVISORY: 22,
1054
+ TEST_SUPERVISORY: 23
1055
+ };
1056
+
1057
+ module.exports.LifeSafetyStateName = usc.invert(module.exports.LifeSafetyState);
1058
+
1059
+ module.exports.LiftCarDirection = {
1060
+ UNKNOWN: 0,
1061
+ NONE: 1,
1062
+ STOPPED: 2,
1063
+ UP: 3,
1064
+ DOWN: 4,
1065
+ UP_AND_DOWN: 5
1066
+ };
1067
+
1068
+ module.exports.LiftCarDirectionName = usc.invert(module.exports.LiftCarDirection);
1069
+
1070
+ module.exports.LiftCarDoorCommand = {
1071
+ NONE: 0,
1072
+ OPEN: 1,
1073
+ CLOSE: 2
1074
+ };
1075
+
1076
+ module.exports.LiftCarDoorCommandName = usc.invert(module.exports.LiftCarDoorCommand);
1077
+
1078
+ module.exports.LiftCarDriveStatus = {
1079
+ UNKNOWN: 0,
1080
+ STATIONARY: 1,
1081
+ BRAKING: 2,
1082
+ ACCELERATE: 3,
1083
+ DECELERATE: 4,
1084
+ RATED_SPEED: 5,
1085
+ SINGLE_FLOOR_JUMP: 6,
1086
+ TWO_FLOOR_JUMP: 7,
1087
+ THREE_FLOOR_JUMP: 8,
1088
+ MULTI_FLOOR_JUMP: 9
1089
+ };
1090
+
1091
+ module.exports.LiftCarDriveStatusName = usc.invert(module.exports.LiftCarDriveStatus);
1092
+
1093
+ module.exports.LiftCarMode = {
1094
+ UNKNOWN: 0,
1095
+ NORMAL: 1,
1096
+ VIP: 2,
1097
+ HOMING: 3,
1098
+ PARKING: 4,
1099
+ ATTENDANT_CONTROL: 5,
1100
+ FIREFIGHTER_CONTROL: 6,
1101
+ EMERGENCY_POWER: 7,
1102
+ INSPECTION: 8,
1103
+ CABINET_RECALL: 9,
1104
+ EARTHQUAKE_OPERATION: 10,
1105
+ FIRE_OPERATION: 11,
1106
+ OUT_OF_SERVICE: 12,
1107
+ OCCUPANT_EVACUATION: 13
1108
+ };
1109
+
1110
+ module.exports.LiftCarModeName = usc.invert(module.exports.LiftCarMode);
1111
+
1112
+ module.exports.LiftFault = {
1113
+ CONTROLLER_FAULT: 0,
1114
+ DRIVE_AND_MOTOR_FAULT: 1,
1115
+ GOVERNOR_AND_SAFETY_GEAR_FAULT: 2,
1116
+ LIFT_SHAFT_DEVICE_FAULT: 3,
1117
+ POWER_SUPPLY_FAULT: 4,
1118
+ SAFETY_INTERLOCK_FAULT: 5,
1119
+ DOOR_CLOSING_FAULT: 6,
1120
+ DOOR_OPENING_FAULT: 7,
1121
+ CAR_STOPPED_OUTSIDE_LANDING_ZONE: 8,
1122
+ CALL_BUTTON_STUCK: 9,
1123
+ START_FAILURE: 10,
1124
+ CONTROLLER_SUPPLY_FAULT: 11,
1125
+ SELF_TEST_FAILURE: 12,
1126
+ RUNTIME_LIMIT_EXCEEDED: 13,
1127
+ POSITION_LOST: 14,
1128
+ DRIVE_TEMPERATURE_EXCEEDED: 15,
1129
+ LOAD_MEASUREMENT_FAULT: 16
1130
+ };
1131
+
1132
+ module.exports.LiftFaultName = usc.invert(module.exports.LiftFault);
1133
+
1134
+ module.exports.LiftGroupMode = {
1135
+ UNKNOWN: 0,
1136
+ NORMAL: 1,
1137
+ DOWN_PEAK: 2,
1138
+ TWO_WAY: 3,
1139
+ FOUR_WAY: 4,
1140
+ EMERGENCY_POWER: 5,
1141
+ UP_PEAK: 6
1142
+ };
1143
+
1144
+ module.exports.LiftGroupModeName = usc.invert(module.exports.LiftGroupMode);
1145
+
1146
+ module.exports.LightingInProgress = {
1147
+ IDLE: 0,
1148
+ FADE_ACTIVE: 1,
1149
+ RAMP_ACTIVE: 2,
1150
+ NOT_CONTROLLED: 3,
1151
+ OTHER: 4
1152
+ };
1153
+
1154
+ module.exports.LightingInProgressName = usc.invert(module.exports.LightingInProgress);
1155
+
1156
+ module.exports.LightingOperation = {
1157
+ NONE: 0,
1158
+ FADE_TO: 1,
1159
+ RAMP_TO: 2,
1160
+ STEP_UP: 3,
1161
+ STEP_DOWN: 4,
1162
+ STEP_ON: 5,
1163
+ STEP_OFF: 6,
1164
+ WARN: 7,
1165
+ WARN_OFF: 8,
1166
+ WARN_RELINQUISH: 9,
1167
+ STOP: 10
1168
+ };
1169
+
1170
+ module.exports.LightingOperationName = usc.invert(module.exports.LightingOperation);
1171
+
1172
+ module.exports.LightingTransition = {
1173
+ NONE: 0,
1174
+ FADE: 1,
1175
+ RAMP: 2
1176
+ };
1177
+
1178
+ module.exports.LightingTransitionName = usc.invert(module.exports.LightingTransition);
1179
+
1180
+ module.exports.LockStatus = {
1181
+ LOCKED: 0,
1182
+ UNLOCKED: 1,
1183
+ LOCK_FAULT: 2,
1184
+ UNUSED: 3,
1185
+ UNKNOWN: 4
1186
+ };
1187
+
1188
+ module.exports.LockStatusName = usc.invert(module.exports.LockStatus);
1189
+
1190
+ module.exports.LoggingType = {
1191
+ POLLED: 0,
1192
+ COV: 1,
1193
+ TRIGGERED: 2
1194
+ };
1195
+
1196
+ module.exports.LoggingTypeName = usc.invert(module.exports.LoggingType);
1197
+
1198
+ module.exports.Maintenance = {
1199
+ NONE: 0,
1200
+ PERIODIC_TEST: 1,
1201
+ NEED_SERVICE_OPERATIONAL: 2,
1202
+ NEED_SERVICE_INOPERATIVE: 3
1203
+ };
1204
+
1205
+ module.exports.MaintenanceName = usc.invert(module.exports.Maintenance);
1206
+
1207
+ module.exports.NetworkNumberQuality = {
1208
+ UNKNOWN: 0,
1209
+ LEARNED: 1,
1210
+ LEARNED_CONFIGURED: 2,
1211
+ CONFIGURED: 3
1212
+ };
1213
+
1214
+ module.exports.NetworkNumberQualityName = usc.invert(module.exports.NetworkNumberQuality);
1215
+
1216
+ module.exports.NetworkPortCommand = {
1217
+ IDLE: 0,
1218
+ DISCARD_CHANGES: 1,
1219
+ RENEW_FD_REGISTRATION: 2,
1220
+ RESTART_SLAVE_DISCOVERY: 3,
1221
+ RENEW_DHCP: 4,
1222
+ RESTART_AUTONEGOTIATION: 5,
1223
+ DISCONNECT: 6,
1224
+ RESTART_PORT: 7
1225
+ };
1226
+
1227
+ module.exports.NetworkPortCommandName = usc.invert(module.exports.NetworkPortCommand);
1228
+
1229
+ module.exports.NetworkType = {
1230
+ ETHERNET: 0,
1231
+ ARCNET: 1,
1232
+ MSTP: 2,
1233
+ PTP: 3,
1234
+ LONTALK: 4,
1235
+ IPV4: 5,
1236
+ ZIGBEE: 6,
1237
+ VIRTUAL: 7,
1238
+ IPV6: 9,
1239
+ SERIAL: 10
1240
+ };
1241
+
1242
+ module.exports.NetworkTypeName = usc.invert(module.exports.NetworkType);
1243
+
1244
+ module.exports.NodeType = {
1245
+ UNKNOWN: 0,
1246
+ SYSTEM: 1,
1247
+ NETWORK: 2,
1248
+ DEVICE: 3,
1249
+ ORGANIZATIONAL: 4,
1250
+ AREA: 5,
1251
+ EQUIPMENT: 6,
1252
+ POINT: 7,
1253
+ COLLECTION: 8,
1254
+ PROPERTY: 9,
1255
+ FUNCTIONAL: 10,
1256
+ OTHER: 11,
1257
+ SUBSYSTEM: 12,
1258
+ BUILDING: 13,
1259
+ FLOOR: 14,
1260
+ SECTION: 15,
1261
+ MODULE: 16,
1262
+ TREE: 17,
1263
+ MEMBER: 18,
1264
+ PROTOCOL: 19,
1265
+ ROOM: 20,
1266
+ ZONE: 21
1267
+ };
1268
+
1269
+ module.exports.NodeTypeName = usc.invert(module.exports.NodeType);
1270
+
1271
+ module.exports.NotifyType = {
1272
+ ALARM: 0,
1273
+ EVENT: 1,
1274
+ ACK_NOTIFICATION: 2
1275
+ };
1276
+
1277
+ module.exports.NotifyTypeName = usc.invert(module.exports.NotifyType);
1278
+
1279
+ module.exports.ObjectType = {
1280
+ ACCESS_CREDENTIAL: 32,
1281
+ ACCESS_DOOR: 30,
1282
+ ACCESS_POINT: 33,
1283
+ ACCESS_RIGHTS: 34,
1284
+ ACCESS_USER: 35,
1285
+ ACCESS_ZONE: 36,
1286
+ ACCUMULATOR: 23,
1287
+ ALERT_ENROLLMENT: 52,
1288
+ ANALOG_INPUT: 0,
1289
+ ANALOG_OUTPUT: 1,
1290
+ ANALOG_VALUE: 2,
1291
+ AVERAGING: 18,
1292
+ BINARY_INPUT: 3,
1293
+ BINARY_LIGHTING_OUTPUT: 55,
1294
+ BINARY_OUTPUT: 4,
1295
+ BINARY_VALUE: 5,
1296
+ BITSTRING_VALUE: 39,
1297
+ CALENDAR: 6,
1298
+ CHANNEL: 53,
1299
+ CHARACTERSTRING_VALUE: 40,
1300
+ COMMAND: 7,
1301
+ CREDENTIAL_DATA_INPUT: 37,
1302
+ DATEPATTERN_VALUE: 41,
1303
+ DATE_VALUE: 42,
1304
+ DATETIMEPATTERN_VALUE: 43,
1305
+ DATETIME_VALUE: 44,
1306
+ DEVICE: 8,
1307
+ ELEVATOR_GROUP: 57,
1308
+ ESCALATOR: 58,
1309
+ EVENT_ENROLLMENT: 9,
1310
+ EVENT_LOG: 25,
1311
+ FILE: 10,
1312
+ GLOBAL_GROUP: 26,
1313
+ GROUP: 11,
1314
+ INTEGER_VALUE: 45,
1315
+ LARGE_ANALOG_VALUE: 46,
1316
+ LIFE_SAFETY_POINT: 21,
1317
+ LIFE_SAFETY_ZONE: 22,
1318
+ LIFT: 59,
1319
+ LIGHTING_OUTPUT: 54,
1320
+ LOAD_CONTROL: 28,
1321
+ LOOP: 12,
1322
+ MULTI_STATE_INPUT: 13,
1323
+ MULTI_STATE_OUTPUT: 14,
1324
+ MULTI_STATE_VALUE: 19,
1325
+ NETWORK_PORT: 56,
1326
+ NETWORK_SECURITY: 38,
1327
+ NOTIFICATION_CLASS: 15,
1328
+ NOTIFICATION_FORWARDER: 51,
1329
+ OCTETSTRING_VALUE: 47,
1330
+ POSITIVE_INTEGER_VALUE: 48,
1331
+ PROGRAM: 16,
1332
+ PULSE_CONVERTER: 24,
1333
+ SCHEDULE: 17,
1334
+ STRUCTURED_VIEW: 29,
1335
+ TIMEPATTERN_VALUE: 49,
1336
+ TIME_VALUE: 50,
1337
+ TIMER: 31,
1338
+ TREND_LOG: 20,
1339
+ TREND_LOG_MULTIPLE: 27
1340
+ };
1341
+
1342
+ module.exports.ObjectTypeName = usc.invert(module.exports.ObjectType);
1343
+
1344
+ module.exports.Polarity = {
1345
+ NORMAL: 0,
1346
+ REVERSE: 1
1347
+ };
1348
+
1349
+ module.exports.PolarityName = usc.invert(module.exports.Polarity);
1350
+
1351
+ module.exports.ProgramError = {
1352
+ NORMAL: 0,
1353
+ LOAD_FAILED: 1,
1354
+ INTERNAL: 2,
1355
+ PROGRAM: 3,
1356
+ OTHER: 4
1357
+ };
1358
+
1359
+ module.exports.ProgramErrorName = usc.invert(module.exports.ProgramError);
1360
+
1361
+ module.exports.ProgramRequest = {
1362
+ READY: 0,
1363
+ LOAD: 1,
1364
+ RUN: 2,
1365
+ HALT: 3,
1366
+ RESTART: 4,
1367
+ UNLOAD: 5
1368
+ };
1369
+
1370
+ module.exports.ProgramRequestName = usc.invert(module.exports.ProgramRequest);
1371
+
1372
+ module.exports.ProgramState = {
1373
+ IDLE: 0,
1374
+ LOADING: 1,
1375
+ RUNNING: 2,
1376
+ WAITING: 3,
1377
+ HALTED: 4,
1378
+ UNLOADING: 5
1379
+ };
1380
+
1381
+ module.exports.ProgramStateName = usc.invert(module.exports.ProgramState);
1382
+
1383
+ module.exports.PropertyIdentifier = {
1384
+ ABSENTEE_LIMIT: 244,
1385
+ ACCEPTED_MODES: 175,
1386
+ ACCESS_ALARM_EVENTS: 245,
1387
+ ACCESS_DOORS: 246,
1388
+ ACCESS_EVENT: 247,
1389
+ ACCESS_EVENT_AUTHENTICATION_FACTOR: 248,
1390
+ ACCESS_EVENT_CREDENTIAL: 249,
1391
+ ACCESS_EVENT_TAG: 322,
1392
+ ACCESS_EVENT_TIME: 250,
1393
+ ACCESS_TRANSACTION_EVENTS: 251,
1394
+ ACCOMPANIMENT: 252,
1395
+ ACCOMPANIMENT_TIME: 253,
1396
+ ACK_REQUIRED: 1,
1397
+ ACKED_TRANSITIONS: 0,
1398
+ ACTION: 2,
1399
+ ACTION_TEXT: 3,
1400
+ ACTIVATION_TIME: 254,
1401
+ ACTIVE_AUTHENTICATION_POLICY: 255,
1402
+ ACTIVE_COV_MULTIPLE_SUBSCRIPTIONS: 481,
1403
+ ACTIVE_COV_SUBSCRIPTIONS: 152,
1404
+ ACTIVE_TEXT: 4,
1405
+ ACTIVE_VT_SESSIONS: 5,
1406
+ ACTUAL_SHED_LEVEL: 212,
1407
+ ADJUST_VALUE: 176,
1408
+ ALARM_VALUE: 6,
1409
+ ALARM_VALUES: 7,
1410
+ ALIGN_INTERVALS: 193,
1411
+ ALL: 8,
1412
+ ALL_WRITES_SUCCESSFUL: 9,
1413
+ ALLOW_GROUP_DELAY_INHIBIT: 365,
1414
+ APDU_LENGTH: 399,
1415
+ APDU_SEGMENT_TIMEOUT: 10,
1416
+ APDU_TIMEOUT: 11,
1417
+ APPLICATION_SOFTWARE_VERSION: 12,
1418
+ ARCHIVE: 13,
1419
+ ASSIGNED_ACCESS_RIGHTS: 256,
1420
+ ASSIGNED_LANDING_CALLS: 447,
1421
+ ATTEMPTED_SAMPLES: 124,
1422
+ AUTHENTICATION_FACTORS: 257,
1423
+ AUTHENTICATION_POLICY_LIST: 258,
1424
+ AUTHENTICATION_POLICY_NAMES: 259,
1425
+ AUTHENTICATION_STATUS: 260,
1426
+ AUTHORIZATION_EXEMPTIONS: 364,
1427
+ AUTHORIZATION_MODE: 261,
1428
+ AUTO_SLAVE_DISCOVERY: 169,
1429
+ AVERAGE_VALUE: 125,
1430
+ BACKUP_AND_RESTORE_STATE: 338,
1431
+ BACKUP_FAILURE_TIMEOUT: 153,
1432
+ BACKUP_PREPARATION_TIME: 339,
1433
+ BACNET_IP_GLOBAL_ADDRESS: 407,
1434
+ BACNET_IP_MODE: 408,
1435
+ BACNET_IP_MULTICAST_ADDRESS: 409,
1436
+ BACNET_IP_NAT_TRAVERSAL: 410,
1437
+ BACNET_IP_UDP_PORT: 412,
1438
+ BACNET_IPV6_MODE: 435,
1439
+ BACNET_IPV6_UDP_PORT: 438,
1440
+ BACNET_IPV6_MULTICAST_ADDRESS: 440,
1441
+ BBMD_ACCEPT_FD_REGISTRATIONS: 413,
1442
+ BBMD_BROADCAST_DISTRIBUTION_TABLE: 414,
1443
+ BBMD_FOREIGN_DEVICE_TABLE: 415,
1444
+ BELONGS_TO: 262,
1445
+ BIAS: 14,
1446
+ BIT_MASK: 342,
1447
+ BIT_TEXT: 343,
1448
+ BLINK_WARN_ENABLE: 373,
1449
+ BUFFER_SIZE: 126,
1450
+ CAR_ASSIGNED_DIRECTION: 448,
1451
+ CAR_DOOR_COMMAND: 449,
1452
+ CAR_DOOR_STATUS: 450,
1453
+ CAR_DOOR_TEXT: 451,
1454
+ CAR_DOOR_ZONE: 452,
1455
+ CAR_DRIVE_STATUS: 453,
1456
+ CAR_LOAD: 454,
1457
+ CAR_LOAD_UNITS: 455,
1458
+ CAR_MODE: 456,
1459
+ CAR_MOVING_DIRECTION: 457,
1460
+ CAR_POSITION: 458,
1461
+ CHANGE_OF_STATE_COUNT: 15,
1462
+ CHANGE_OF_STATE_TIME: 16,
1463
+ CHANGES_PENDING: 416,
1464
+ CHANNEL_NUMBER: 366,
1465
+ CLIENT_COV_INCREMENT: 127,
1466
+ COMMAND: 417,
1467
+ COMMAND_TIME_ARRAY: 430,
1468
+ CONFIGURATION_FILES: 154,
1469
+ CONTROL_GROUPS: 367,
1470
+ CONTROLLED_VARIABLE_REFERENCE: 19,
1471
+ CONTROLLED_VARIABLE_UNITS: 20,
1472
+ CONTROLLED_VARIABLE_VALUE: 21,
1473
+ COUNT: 177,
1474
+ COUNT_BEFORE_CHANGE: 178,
1475
+ COUNT_CHANGE_TIME: 179,
1476
+ COV_INCREMENT: 22,
1477
+ COV_PERIOD: 180,
1478
+ COV_RESUBSCRIPTION_INTERVAL: 128,
1479
+ COVU_PERIOD: 349,
1480
+ COVU_RECIPIENTS: 350,
1481
+ CREDENTIAL_DISABLE: 263,
1482
+ CREDENTIAL_STATUS: 264,
1483
+ CREDENTIALS: 265,
1484
+ CREDENTIALS_IN_ZONE: 266,
1485
+ CURRENT_COMMAND_PRIORITY: 431,
1486
+ DATABASE_REVISION: 155,
1487
+ DATE_LIST: 23,
1488
+ DAYLIGHT_SAVINGS_STATUS: 24,
1489
+ DAYS_REMAINING: 267,
1490
+ DEADBAND: 25,
1491
+ DEFAULT_FADE_TIME: 374,
1492
+ DEFAULT_RAMP_RATE: 375,
1493
+ DEFAULT_STEP_INCREMENT: 376,
1494
+ DEFAULT_SUBORDINATE_RELATIONSHIP: 490,
1495
+ DEFAULT_TIMEOUT: 393,
1496
+ DEPLOYED_PROFILE_LOCATION: 484,
1497
+ DERIVATIVE_CONSTANT: 26,
1498
+ DERIVATIVE_CONSTANT_UNITS: 27,
1499
+ DESCRIPTION: 28,
1500
+ DESCRIPTION_OF_HALT: 29,
1501
+ DEVICE_ADDRESS_BINDING: 30,
1502
+ DEVICE_TYPE: 31,
1503
+ DIRECT_READING: 156,
1504
+ DISTRIBUTION_KEY_REVISION: 328,
1505
+ DO_NOT_HIDE: 329,
1506
+ DOOR_ALARM_STATE: 226,
1507
+ DOOR_EXTENDED_PULSE_TIME: 227,
1508
+ DOOR_MEMBERS: 228,
1509
+ DOOR_OPEN_TOO_LONG_TIME: 229,
1510
+ DOOR_PULSE_TIME: 230,
1511
+ DOOR_STATUS: 231,
1512
+ DOOR_UNLOCK_DELAY_TIME: 232,
1513
+ DUTY_WINDOW: 213,
1514
+ EFFECTIVE_PERIOD: 32,
1515
+ EGRESS_ACTIVE: 386,
1516
+ EGRESS_TIME: 377,
1517
+ ELAPSED_ACTIVE_TIME: 33,
1518
+ ELEVATOR_GROUP: 459,
1519
+ ENABLE: 133,
1520
+ ENERGY_METER: 460,
1521
+ ENERGY_METER_REF: 461,
1522
+ ENTRY_POINTS: 268,
1523
+ ERROR_LIMIT: 34,
1524
+ ESCALATOR_MODE: 462,
1525
+ EVENT_ALGORITHM_INHIBIT: 354,
1526
+ EVENT_ALGORITHM_INHIBIT_REF: 355,
1527
+ EVENT_DETECTION_ENABLE: 353,
1528
+ EVENT_ENABLE: 35,
1529
+ EVENT_MESSAGE_TEXTS: 351,
1530
+ EVENT_MESSAGE_TEXTS_CONFIG: 352,
1531
+ EVENT_PARAMETERS: 83,
1532
+ EVENT_STATE: 36,
1533
+ EVENT_TIME_STAMPS: 130,
1534
+ EVENT_TYPE: 37,
1535
+ EXCEPTION_SCHEDULE: 38,
1536
+ EXECUTION_DELAY: 368,
1537
+ EXIT_POINTS: 269,
1538
+ EXPECTED_SHED_LEVEL: 214,
1539
+ EXPIRATION_TIME: 270,
1540
+ EXTENDED_TIME_ENABLE: 271,
1541
+ FAILED_ATTEMPT_EVENTS: 272,
1542
+ FAILED_ATTEMPTS: 273,
1543
+ FAILED_ATTEMPTS_TIME: 274,
1544
+ FAULT_HIGH_LIMIT: 388,
1545
+ FAULT_LOW_LIMIT: 389,
1546
+ FAULT_PARAMETERS: 358,
1547
+ FAULT_SIGNALS: 463,
1548
+ FAULT_TYPE: 359,
1549
+ FAULT_VALUES: 39,
1550
+ FD_BBMD_ADDRESS: 418,
1551
+ FD_SUBSCRIPTION_LIFETIME: 419,
1552
+ FEEDBACK_VALUE: 40,
1553
+ FILE_ACCESS_METHOD: 41,
1554
+ FILE_SIZE: 42,
1555
+ FILE_TYPE: 43,
1556
+ FIRMWARE_REVISION: 44,
1557
+ FLOOR_TEXT: 464,
1558
+ FULL_DUTY_BASELINE: 215,
1559
+ GLOBAL_IDENTIFIER: 323,
1560
+ GROUP_ID: 465,
1561
+ GROUP_MEMBER_NAMES: 346,
1562
+ GROUP_MEMBERS: 345,
1563
+ GROUP_MODE: 467,
1564
+ HIGH_LIMIT: 45,
1565
+ HIGHER_DECK: 468,
1566
+ IN_PROCESS: 47,
1567
+ IN_PROGRESS: 378,
1568
+ INACTIVE_TEXT: 46,
1569
+ INITIAL_TIMEOUT: 394,
1570
+ INPUT_REFERENCE: 181,
1571
+ INSTALLATION_ID: 469,
1572
+ INSTANCE_OF: 48,
1573
+ INSTANTANEOUS_POWER: 379,
1574
+ INTEGRAL_CONSTANT: 49,
1575
+ INTEGRAL_CONSTANT_UNITS: 50,
1576
+ INTERFACE_VALUE: 387,
1577
+ INTERVAL_OFFSET: 195,
1578
+ IP_ADDRESS: 400,
1579
+ IP_DEFAULT_GATEWAY: 401,
1580
+ IP_DHCP_ENABLE: 402,
1581
+ IP_DHCP_LEASE_TIME: 403,
1582
+ IP_DHCP_LEASE_TIME_REMAINING: 404,
1583
+ IP_DHCP_SERVER: 405,
1584
+ IP_DNS_SERVER: 406,
1585
+ IP_SUBNET_MASK: 411,
1586
+ IPV6_ADDRESS: 436,
1587
+ IPV6_AUTO_ADDRESSING_ENABLE: 442,
1588
+ IPV6_DEFAULT_GATEWAY: 439,
1589
+ IPV6_DHCP_LEASE_TIME: 443,
1590
+ IPV6_DHCP_LEASE_TIME_REMAINING: 444,
1591
+ IPV6_DHCP_SERVER: 445,
1592
+ IPV6_DNS_SERVER: 441,
1593
+ IPV6_PREFIX_LENGTH: 437,
1594
+ IPV6_ZONE_INDEX: 446,
1595
+ IS_UTC: 344,
1596
+ KEY_SETS: 330,
1597
+ LANDING_CALL_CONTROL: 471,
1598
+ LANDING_CALLS: 470,
1599
+ LANDING_DOOR_STATUS: 472,
1600
+ LAST_ACCESS_EVENT: 275,
1601
+ LAST_ACCESS_POINT: 276,
1602
+ LAST_COMMAND_TIME: 432,
1603
+ LAST_CREDENTIAL_ADDED: 277,
1604
+ LAST_CREDENTIAL_ADDED_TIME: 278,
1605
+ LAST_CREDENTIAL_REMOVED: 279,
1606
+ LAST_CREDENTIAL_REMOVED_TIME: 280,
1607
+ LAST_KEY_SERVER: 331,
1608
+ LAST_NOTIFY_RECORD: 173,
1609
+ LAST_PRIORITY: 369,
1610
+ LAST_RESTART_REASON: 196,
1611
+ LAST_RESTORE_TIME: 157,
1612
+ LAST_STATE_CHANGE: 395,
1613
+ LAST_USE_TIME: 281,
1614
+ LIFE_SAFETY_ALARM_VALUES: 166,
1615
+ LIGHTING_COMMAND: 380,
1616
+ LIGHTING_COMMAND_DEFAULT_PRIORITY: 381,
1617
+ LIMIT_ENABLE: 52,
1618
+ LIMIT_MONITORING_INTERVAL: 182,
1619
+ LINK_SPEED: 420,
1620
+ LINK_SPEED_AUTONEGOTIATE: 422,
1621
+ LINK_SPEEDS: 421,
1622
+ LIST_OF_GROUP_MEMBERS: 53,
1623
+ LIST_OF_OBJECT_PROPERTY_REFERENCES: 54,
1624
+ LOCAL_DATE: 56,
1625
+ LOCAL_FORWARDING_ONLY: 360,
1626
+ LOCAL_TIME: 57,
1627
+ LOCATION: 58,
1628
+ LOCK_STATUS: 233,
1629
+ LOCKOUT: 282,
1630
+ LOCKOUT_RELINQUISH_TIME: 283,
1631
+ LOG_BUFFER: 131,
1632
+ LOG_DEVICE_OBJECT_PROPERTY: 132,
1633
+ LOG_INTERVAL: 134,
1634
+ LOGGING_OBJECT: 183,
1635
+ LOGGING_RECORD: 184,
1636
+ LOGGING_TYPE: 197,
1637
+ LOW_DIFF_LIMIT: 390,
1638
+ LOW_LIMIT: 59,
1639
+ LOWER_DECK: 473,
1640
+ MAC_ADDRESS: 423,
1641
+ MACHINE_ROOM_ID: 474,
1642
+ MAINTENANCE_REQUIRED: 158,
1643
+ MAKING_CAR_CALL: 475,
1644
+ MANIPULATED_VARIABLE_REFERENCE: 60,
1645
+ MANUAL_SLAVE_ADDRESS_BINDING: 170,
1646
+ MASKED_ALARM_VALUES: 234,
1647
+ MAX_ACTUAL_VALUE: 382,
1648
+ MAX_APDU_LENGTH_ACCEPTED: 62,
1649
+ MAX_FAILED_ATTEMPTS: 285,
1650
+ MAX_INFO_FRAMES: 63,
1651
+ MAX_MASTER: 64,
1652
+ MAX_PRES_VALUE: 65,
1653
+ MAX_SEGMENTS_ACCEPTED: 167,
1654
+ MAXIMUM_OUTPUT: 61,
1655
+ MAXIMUM_VALUE: 135,
1656
+ MAXIMUM_VALUE_TIMESTAMP: 149,
1657
+ MEMBER_OF: 159,
1658
+ MEMBER_STATUS_FLAGS: 347,
1659
+ MEMBERS: 286,
1660
+ MIN_ACTUAL_VALUE: 383,
1661
+ MIN_PRES_VALUE: 69,
1662
+ MINIMUM_OFF_TIME: 66,
1663
+ MINIMUM_ON_TIME: 67,
1664
+ MINIMUM_OUTPUT: 68,
1665
+ MINIMUM_VALUE: 136,
1666
+ MINIMUM_VALUE_TIMESTAMP: 150,
1667
+ MODE: 160,
1668
+ MODEL_NAME: 70,
1669
+ MODIFICATION_DATE: 71,
1670
+ MUSTER_POINT: 287,
1671
+ NEGATIVE_ACCESS_RULES: 288,
1672
+ NETWORK_ACCESS_SECURITY_POLICIES: 332,
1673
+ NETWORK_INTERFACE_NAME: 424,
1674
+ NETWORK_NUMBER: 425,
1675
+ NETWORK_NUMBER_QUALITY: 426,
1676
+ NETWORK_TYPE: 427,
1677
+ NEXT_STOPPING_FLOOR: 476,
1678
+ NODE_SUBTYPE: 207,
1679
+ NODE_TYPE: 208,
1680
+ NOTIFICATION_CLASS: 17,
1681
+ NOTIFICATION_THRESHOLD: 137,
1682
+ NOTIFY_TYPE: 72,
1683
+ NUMBER_OF_APDU_RETRIES: 73,
1684
+ NUMBER_OF_AUTHENTICATION_POLICIES: 289,
1685
+ NUMBER_OF_STATES: 74,
1686
+ OBJECT_IDENTIFIER: 75,
1687
+ OBJECT_LIST: 76,
1688
+ OBJECT_NAME: 77,
1689
+ OBJECT_PROPERTY_REFERENCE: 78,
1690
+ OBJECT_TYPE: 79,
1691
+ OCCUPANCY_COUNT: 290,
1692
+ OCCUPANCY_COUNT_ADJUST: 291,
1693
+ OCCUPANCY_COUNT_ENABLE: 292,
1694
+ OCCUPANCY_LOWER_LIMIT: 294,
1695
+ OCCUPANCY_LOWER_LIMIT_ENFORCED: 295,
1696
+ OCCUPANCY_STATE: 296,
1697
+ OCCUPANCY_UPPER_LIMIT: 297,
1698
+ OCCUPANCY_UPPER_LIMIT_ENFORCED: 298,
1699
+ OPERATION_DIRECTION: 477,
1700
+ OPERATION_EXPECTED: 161,
1701
+ OPTIONAL: 80,
1702
+ OUT_OF_SERVICE: 81,
1703
+ OUTPUT_UNITS: 82,
1704
+ PACKET_REORDER_TIME: 333,
1705
+ PASSBACK_MODE: 300,
1706
+ PASSBACK_TIMEOUT: 301,
1707
+ PASSENGER_ALARM: 478,
1708
+ POLARITY: 84,
1709
+ PORT_FILTER: 363,
1710
+ POSITIVE_ACCESS_RULES: 302,
1711
+ POWER: 384,
1712
+ POWER_MODE: 479,
1713
+ PRESCALE: 185,
1714
+ PRESENT_VALUE: 85,
1715
+ PRIORITY: 86,
1716
+ PRIORITY_ARRAY: 87,
1717
+ PRIORITY_FOR_WRITING: 88,
1718
+ PROCESS_IDENTIFIER: 89,
1719
+ PROCESS_IDENTIFIER_FILTER: 361,
1720
+ PROFILE_LOCATION: 485,
1721
+ PROFILE_NAME: 168,
1722
+ PROGRAM_CHANGE: 90,
1723
+ PROGRAM_LOCATION: 91,
1724
+ PROGRAM_STATE: 92,
1725
+ PROPERTY_LIST: 371,
1726
+ PROPORTIONAL_CONSTANT: 93,
1727
+ PROPORTIONAL_CONSTANT_UNITS: 94,
1728
+ PROTOCOL_LEVEL: 482,
1729
+ PROTOCOL_OBJECT_TYPES_SUPPORTED: 96,
1730
+ PROTOCOL_REVISION: 139,
1731
+ PROTOCOL_SERVICES_SUPPORTED: 97,
1732
+ PROTOCOL_VERSION: 98,
1733
+ PULSE_RATE: 186,
1734
+ READ_ONLY: 99,
1735
+ REASON_FOR_DISABLE: 303,
1736
+ REASON_FOR_HALT: 100,
1737
+ RECIPIENT_LIST: 102,
1738
+ RECORD_COUNT: 141,
1739
+ RECORDS_SINCE_NOTIFICATION: 140,
1740
+ REFERENCE_PORT: 483,
1741
+ REGISTERED_CAR_CALL: 480,
1742
+ RELIABILITY: 103,
1743
+ RELIABILITY_EVALUATION_INHIBIT: 357,
1744
+ RELINQUISH_DEFAULT: 104,
1745
+ REPRESENTS: 491,
1746
+ REQUESTED_SHED_LEVEL: 218,
1747
+ REQUESTED_UPDATE_INTERVAL: 348,
1748
+ REQUIRED: 105,
1749
+ RESOLUTION: 106,
1750
+ RESTART_NOTIFICATION_RECIPIENTS: 202,
1751
+ RESTORE_COMPLETION_TIME: 340,
1752
+ RESTORE_PREPARATION_TIME: 341,
1753
+ ROUTING_TABLE: 428,
1754
+ SCALE: 187,
1755
+ SCALE_FACTOR: 188,
1756
+ SCHEDULE_DEFAULT: 174,
1757
+ SECURED_STATUS: 235,
1758
+ SECURITY_PDU_TIMEOUT: 334,
1759
+ SECURITY_TIME_WINDOW: 335,
1760
+ SEGMENTATION_SUPPORTED: 107,
1761
+ SERIAL_NUMBER: 372,
1762
+ SETPOINT: 108,
1763
+ SETPOINT_REFERENCE: 109,
1764
+ SETTING: 162,
1765
+ SHED_DURATION: 219,
1766
+ SHED_LEVEL_DESCRIPTIONS: 220,
1767
+ SHED_LEVELS: 221,
1768
+ SILENCED: 163,
1769
+ SLAVE_ADDRESS_BINDING: 171,
1770
+ SLAVE_PROXY_ENABLE: 172,
1771
+ START_TIME: 142,
1772
+ STATE_CHANGE_VALUES: 396,
1773
+ STATE_DESCRIPTION: 222,
1774
+ STATE_TEXT: 110,
1775
+ STATUS_FLAGS: 111,
1776
+ STOP_TIME: 143,
1777
+ STOP_WHEN_FULL: 144,
1778
+ STRIKE_COUNT: 391,
1779
+ STRUCTURED_OBJECT_LIST: 209,
1780
+ SUBORDINATE_ANNOTATIONS: 210,
1781
+ SUBORDINATE_LIST: 211,
1782
+ SUBORDINATE_NODE_TYPES: 487,
1783
+ SUBORDINATE_RELATIONSHIPS: 489,
1784
+ SUBORDINATE_TAGS: 488,
1785
+ SUBSCRIBED_RECIPIENTS: 362,
1786
+ SUPPORTED_FORMAT_CLASSES: 305,
1787
+ SUPPORTED_FORMATS: 304,
1788
+ SUPPORTED_SECURITY_ALGORITHMS: 336,
1789
+ SYSTEM_STATUS: 112,
1790
+ TAGS: 486,
1791
+ THREAT_AUTHORITY: 306,
1792
+ THREAT_LEVEL: 307,
1793
+ TIME_DELAY: 113,
1794
+ TIME_DELAY_NORMAL: 356,
1795
+ TIME_OF_ACTIVE_TIME_RESET: 114,
1796
+ TIME_OF_DEVICE_RESTART: 203,
1797
+ TIME_OF_STATE_COUNT_RESET: 115,
1798
+ TIME_OF_STRIKE_COUNT_RESET: 392,
1799
+ TIME_SYNCHRONIZATION_INTERVAL: 204,
1800
+ TIME_SYNCHRONIZATION_RECIPIENTS: 116,
1801
+ TIMER_RUNNING: 397,
1802
+ TIMER_STATE: 398,
1803
+ TOTAL_RECORD_COUNT: 145,
1804
+ TRACE_FLAG: 308,
1805
+ TRACKING_VALUE: 164,
1806
+ TRANSACTION_NOTIFICATION_CLASS: 309,
1807
+ TRANSITION: 385,
1808
+ TRIGGER: 205,
1809
+ UNITS: 117,
1810
+ UPDATE_INTERVAL: 118,
1811
+ UPDATE_KEY_SET_TIMEOUT: 337,
1812
+ UPDATE_TIME: 189,
1813
+ USER_EXTERNAL_IDENTIFIER: 310,
1814
+ USER_INFORMATION_REFERENCE: 311,
1815
+ USER_NAME: 317,
1816
+ USER_TYPE: 318,
1817
+ USES_REMAINING: 319,
1818
+ UTC_OFFSET: 119,
1819
+ UTC_TIME_SYNCHRONIZATION_RECIPIENTS: 206,
1820
+ VALID_SAMPLES: 146,
1821
+ VALUE_BEFORE_CHANGE: 190,
1822
+ VALUE_CHANGE_TIME: 192,
1823
+ VALUE_SET: 191,
1824
+ VALUE_SOURCE: 433,
1825
+ VALUE_SOURCE_ARRAY: 434,
1826
+ VARIANCE_VALUE: 151,
1827
+ VENDOR_IDENTIFIER: 120,
1828
+ VENDOR_NAME: 121,
1829
+ VERIFICATION_TIME: 326,
1830
+ VIRTUAL_MAC_ADDRESS_TABLE: 429,
1831
+ VT_CLASSES_SUPPORTED: 122,
1832
+ WEEKLY_SCHEDULE: 123,
1833
+ WINDOW_INTERVAL: 147,
1834
+ WINDOW_SAMPLES: 148,
1835
+ WRITE_STATUS: 370,
1836
+ ZONE_FROM: 320,
1837
+ ZONE_MEMBERS: 165,
1838
+ ZONE_TO: 321
1839
+ };
1840
+
1841
+ module.exports.PropertyIdentifierName = usc.invert(module.exports.PropertyIdentifier);
1842
+
1843
+ module.exports.ProtocolLevel = {
1844
+ PHYSICAL: 0,
1845
+ PROTOCOL: 1,
1846
+ BACNET_APPLICATION: 2,
1847
+ NON_BACNET_APPLICATION: 3
1848
+ };
1849
+
1850
+ module.exports.ProtocolLevelName = usc.invert(module.exports.ProtocolLevel);
1851
+
1852
+ module.exports.Relationship = {
1853
+ UNKNOWN: 0,
1854
+ DEFAULT: 1,
1855
+ CONTAINS: 2,
1856
+ CONTAINED_BY: 3,
1857
+ USES: 4,
1858
+ USED_BY: 5,
1859
+ COMMANDS: 6,
1860
+ COMMANDED_BY: 7,
1861
+ ADJUSTS: 8,
1862
+ ADJUSTED_BY: 9,
1863
+ INGRESS: 10,
1864
+ EGRESS: 11,
1865
+ SUPPLIES_AIR: 12,
1866
+ RECEIVES_AIR: 13,
1867
+ SUPPLIES_HOT_AIR: 14,
1868
+ RECEIVES_HOT_AIR: 15,
1869
+ SUPPLIES_COOL_AIR: 16,
1870
+ RECEIVES_COOL_AIR: 17,
1871
+ SUPPLIES_POWER: 18,
1872
+ RECEIVES_POWER: 19,
1873
+ SUPPLIES_GAS: 20,
1874
+ RECEIVES_GAS: 21,
1875
+ SUPPLIES_WATER: 22,
1876
+ RECEIVES_WATER: 23,
1877
+ SUPPLIES_HOT_WATER: 24,
1878
+ RECEIVES_HOT_WATER: 25,
1879
+ SUPPLIES_COOL_WATER: 26,
1880
+ RECEIVES_COOL_WATER: 27,
1881
+ SUPPLIES_STEAM: 28,
1882
+ RECEIVES_STEAM: 29
1883
+ };
1884
+
1885
+ module.exports.RelationshipName = usc.invert(module.exports.Relationship);
1886
+
1887
+ module.exports.Reliability = {
1888
+ NO_FAULT_DETECTED: 0,
1889
+ NO_SENSOR: 1,
1890
+ OVER_RANGE: 2,
1891
+ UNDER_RANGE: 3,
1892
+ OPEN_LOOP: 4,
1893
+ SHORTED_LOOP: 5,
1894
+ NO_OUTPUT: 6,
1895
+ UNRELIABLE_OTHER: 7,
1896
+ PROCESS_ERROR: 8,
1897
+ MULTI_STATE_FAULT: 9,
1898
+ CONFIGURATION_ERROR: 10,
1899
+ COMMUNICATION_FAILURE: 12,
1900
+ MEMBER_FAULT: 13,
1901
+ MONITORED_OBJECT_FAULT: 14,
1902
+ TRIPPED: 15,
1903
+ LAMP_FAILURE: 16,
1904
+ ACTIVATION_FAILURE: 17,
1905
+ RENEW_DHCP_FAILURE: 18,
1906
+ RENEW_FD_REGISTRATION_FAILURE: 19,
1907
+ RESTART_AUTO_NEGOTIATION_FAILURE: 20,
1908
+ RESTART_FAILURE: 21,
1909
+ PROPRIETARY_COMMAND_FAILURE: 22,
1910
+ FAULTS_LISTED: 23,
1911
+ REFERENCED_OBJECT_FAULT: 24
1912
+ };
1913
+
1914
+ module.exports.ReliabilityName = usc.invert(module.exports.Reliability);
1915
+
1916
+ module.exports.RestartReason = {
1917
+ UNKNOWN: 0,
1918
+ COLDSTART: 1,
1919
+ WARMSTART: 2,
1920
+ DETECTED_POWER_LOST: 3,
1921
+ DETECTED_POWERED_OFF: 4,
1922
+ HARDWARE_WATCHDOG: 5,
1923
+ SOFTWARE_WATCHDOG: 6,
1924
+ SUSPENDED: 7,
1925
+ ACTIVATE_CHANGES: 8
1926
+ };
1927
+
1928
+ module.exports.ReliabilityName = usc.invert(module.exports.Reliability);
1929
+
1930
+ module.exports.SecurityLevel = {
1931
+ INCAPABLE: 0,
1932
+ PLAIN: 1,
1933
+ SIGNED: 2,
1934
+ ENCRYPTED: 3,
1935
+ SIGNED_END_TO_END: 4,
1936
+ ENCRYPTED_END_TO_END: 5
1937
+ };
1938
+
1939
+ module.exports.ReliabilityName = usc.invert(module.exports.Reliability);
1940
+
1941
+ module.exports.SecurityPolicy = {
1942
+ PLAIN_NON_TRUSTED: 0,
1943
+ PLAIN_TRUSTED: 1,
1944
+ SIGNED_TRUSTED: 2,
1945
+ ENCRYPTED_TRUSTED: 3
1946
+ };
1947
+
1948
+ module.exports.SecurityPolicyName = usc.invert(module.exports.SecurityPolicy);
1949
+
1950
+ module.exports.Segmentation = {
1951
+ SEGMENTED_BOTH: 0,
1952
+ SEGMENTED_TRANSMIT: 1,
1953
+ SEGMENTED_RECEIVE: 2,
1954
+ NO_SEGMENTATION: 3
1955
+ };
1956
+
1957
+ module.exports.SegmentationName = usc.invert(module.exports.Segmentation);
1958
+
1959
+ module.exports.ShedState = {
1960
+ SHED_INACTIVE: 0,
1961
+ SHED_REQUEST_PENDING: 1,
1962
+ SHED_COMPLIANT: 2,
1963
+ SHED_NON_COMPLIANT: 3
1964
+ };
1965
+
1966
+ module.exports.ShedStateName = usc.invert(module.exports.ShedState);
1967
+
1968
+ module.exports.SilencedState = {
1969
+ UNSILENCED: 0,
1970
+ AUDIBLE_SILENCED: 1,
1971
+ VISIBLE_SILENCED: 2,
1972
+ ALL_SILENCED: 3
1973
+ };
1974
+
1975
+ module.exports.SilencedStateName = usc.invert(module.exports.SilencedState);
1976
+
1977
+ module.exports.TimerState = {
1978
+ IDLE: 0,
1979
+ RUNNING: 1,
1980
+ EXPIRED: 2
1981
+ };
1982
+
1983
+ module.exports.TimerStateName = usc.invert(module.exports.TimerState);
1984
+
1985
+ module.exports.TimerTransition = {
1986
+ NONE: 0,
1987
+ IDLE_TO_RUNNING: 1,
1988
+ RUNNING_TO_IDLE: 2,
1989
+ RUNNING_TO_RUNNING: 3,
1990
+ RUNNING_TO_EXPIRED: 4,
1991
+ FORCED_TO_EXPIRED: 5,
1992
+ EXPIRED_TO_IDLE: 6,
1993
+ EXPIRED_TO_RUNNING: 7
1994
+ };
1995
+
1996
+ module.exports.TimerTransitionName = usc.invert(module.exports.TimerTransition);
1997
+
1998
+ module.exports.VTClass = {
1999
+ DEFAULT_TERMINAL: 0,
2000
+ ANSI_X3_64: 1,
2001
+ DEC_VT52: 2,
2002
+ DEC_VT100: 3,
2003
+ DEC_VT220: 4,
2004
+ HP_700_94: 5,
2005
+ IBM_3130: 6
2006
+ };
2007
+
2008
+ module.exports.VTClassName = usc.invert(module.exports.VTClass);
2009
+
2010
+ module.exports.WriteStatus = {
2011
+ IDLE: 0,
2012
+ IN_PROGRESS: 1,
2013
+ SUCCESSFUL: 2,
2014
+ FAILED: 3
2015
+ };
2016
+
2017
+ module.exports.WriteStatusName = usc.invert(module.exports.WriteStatus);
2018
+
2019
+ // ASHRE 135-2016 - 21 FORMAL DESCRIPTION OF APPLICATION PROTOCOL DATA UNITS - Bitstrings
2020
+ module.exports.DaysOfWeek = {
2021
+ MONDAY: 0,
2022
+ TUESDAY: 1,
2023
+ WEDNESDAY: 2,
2024
+ THURSDAY: 3,
2025
+ FRIDAY: 4,
2026
+ SATURDAY: 5,
2027
+ SUNDAY: 6
2028
+ };
2029
+
2030
+ module.exports.DaysOfWeekName = usc.invert(module.exports.DaysOfWeek);
2031
+
2032
+ module.exports.EventTransitionBits = {
2033
+ TO_OFFNORMAL: 0,
2034
+ TO_FAULT: 1,
2035
+ TO_NORMAL: 2
2036
+ };
2037
+
2038
+ module.exports.EventTransitionBitsName = usc.invert(module.exports.EventTransitionBits);
2039
+
2040
+ module.exports.LimitEnable = {
2041
+ LOW_LIMIT_ENABLE: 0,
2042
+ HIGH_LIMIT_ENABLE: 1
2043
+ };
2044
+
2045
+ module.exports.LimitEnableName = usc.invert(module.exports.LimitEnable);
2046
+
2047
+ module.exports.LogStatus = {
2048
+ LOG_DISABLED: 0,
2049
+ BUFFER_PURGED: 1,
2050
+ LOG_INTERRUPTED: 2
2051
+ };
2052
+
2053
+ module.exports.LogStatusName = usc.invert(module.exports.LogStatus);
2054
+
2055
+ module.exports.ObjectTypesSupported = {
2056
+ ANALOG_INPUT: 0,
2057
+ ANALOG_OUTPUT: 1,
2058
+ ANALOG_VALUE: 2,
2059
+ BINARY_INPUT: 3,
2060
+ BINARY_OUTPUT: 4,
2061
+ BINARY_VALUE: 5,
2062
+ CALENDAR: 6,
2063
+ COMMAND: 7,
2064
+ DEVICE: 8,
2065
+ EVENT_ENROLLMENT: 9,
2066
+ FILE: 10,
2067
+ GROUP: 11,
2068
+ LOOP: 12,
2069
+ MULTI_STATE_INPUT: 13,
2070
+ MULTI_STATE_OUTPUT: 14,
2071
+ NOTIFICATION_CLASS: 15,
2072
+ PROGRAM: 16,
2073
+ SCHEDULE: 17,
2074
+ AVERAGING: 18,
2075
+ MULTI_STATE_VALUE: 19,
2076
+ TREND_LOG: 20,
2077
+ LIFE_SAFETY_POINT: 21,
2078
+ LIFE_SAFETY_ZONE: 22,
2079
+ ACCUMULATOR: 23,
2080
+ PULSE_CONVERTER: 24,
2081
+ EVENT_LOG: 25,
2082
+ GLOBAL_GROUP: 26,
2083
+ TREND_LOG_MULTIPLE: 27,
2084
+ LOAD_CONTROL: 28,
2085
+ STRUCTURED_VIEW: 29,
2086
+ ACCESS_DOOR: 30,
2087
+ TIMER: 31,
2088
+ ACCESS_CREDENTIAL: 32,
2089
+ ACCESS_POINT: 33,
2090
+ ACCESS_RIGHTS: 34,
2091
+ ACCESS_USER: 35,
2092
+ ACCESS_ZONE: 36,
2093
+ CREDENTIAL_DATA_INPUT: 37,
2094
+ NETWORK_SECURITY: 38,
2095
+ BITSTRING_VALUE: 39,
2096
+ CHARACTERSTRING_VALUE: 40,
2097
+ DATEPATTERN_VALUE: 41,
2098
+ DATE_VALUE: 42,
2099
+ DATETIMEPATTERN_VALUE: 43,
2100
+ DATETIME_VALUE: 44,
2101
+ INTEGER_VALUE: 45,
2102
+ LARGE_ANALOG_VALUE: 46,
2103
+ OCTETSTRING_VALUE: 47,
2104
+ POSITIVE_INTEGER_VALUE: 48,
2105
+ TIMEPATTERN_VALUE: 49,
2106
+ TIME_VALUE: 50,
2107
+ NOTIFICATION_FORWARDER: 51,
2108
+ ALERT_ENROLLMENT: 52,
2109
+ CHANNEL: 53,
2110
+ LIGHTING_OUTPUT: 54,
2111
+ BINARY_LIGHTING_OUTPUT: 55,
2112
+ NETWORK_PORT: 56,
2113
+ ELEVATOR_GROUP: 57,
2114
+ ESCALATOR: 58,
2115
+ LIFT: 59
2116
+ };
2117
+
2118
+ module.exports.ObjectTypesSupportedName = usc.invert(module.exports.ObjectTypesSupported);
2119
+
2120
+ module.exports.ResultFlags = {
2121
+ FIRST_ITEM: 0,
2122
+ LAST_ITEM: 1,
2123
+ MORE_ITEMS: 2
2124
+ };
2125
+
2126
+ module.exports.ResultFlagsName = usc.invert(module.exports.ResultFlags);
2127
+
2128
+ module.exports.ServicesSupported = {
2129
+ ACKNOWLEDGE_ALARM: 0,
2130
+ CONFIRMED_COV_NOTIFICATION: 1,
2131
+ CONFIRMED_EVENT_NOTIFICATION: 2,
2132
+ GET_ALARM_SUMMARY: 3,
2133
+ GET_ENROLLMENT_SUMMARY: 4,
2134
+ SUBSCRIBE_COV: 5,
2135
+ ATOMIC_READ_FILE: 6,
2136
+ ATOMIC_WRITE_FILE: 7,
2137
+ ADD_LIST_ELEMENT: 8,
2138
+ REMOVE_LIST_ELEMENT: 9,
2139
+ CREATE_OBJECT: 10,
2140
+ DELETE_OBJECT: 11,
2141
+ READ_PROPERTY: 12,
2142
+ READ_PROPERTY_MULTIPLE: 14,
2143
+ WRITE_PROPERTY: 15,
2144
+ WRITE_PROPERTY_MULTIPLE: 16,
2145
+ DEVICE_COMMUNICATION_CONTROL: 17,
2146
+ CONFIRMED_PRIVATE_TRANSFER: 18,
2147
+ CONFIRMED_TEXT_MESSAGE: 19,
2148
+ REINITIALIZE_DEVICE: 20,
2149
+ VT_OPEN: 21,
2150
+ VT_CLOSE: 22,
2151
+ VT_DATA: 23,
2152
+ READ_PROPERTY_CONDITIONAL: 13,
2153
+ AUTHENTICATE: 24,
2154
+ REQUEST_KEY: 25,
2155
+ I_AM: 26,
2156
+ I_HAVE: 27,
2157
+ UNCONFIRMED_COV_NOTIFICATION: 28,
2158
+ UNCONFIRMED_EVENT_NOTIFICATION: 29,
2159
+ UNCONFIRMED_PRIVATE_TRANSFER: 30,
2160
+ UNCONFIRMED_TEXT_MESSAGE: 31,
2161
+ TIME_SYNCHRONIZATION: 32,
2162
+ WHO_HAS: 33,
2163
+ WHO_IS: 34,
2164
+ READ_RANGE: 35,
2165
+ UTC_TIME_SYNCHRONIZATION: 36,
2166
+ LIFE_SAFETY_OPERATION: 37,
2167
+ SUBSCRIBE_COV_PROPERTY: 38,
2168
+ GET_EVENT_INFORMATION: 39,
2169
+ WRITE_GROUP: 40,
2170
+ SUBSCRIBE_COV_PROPERTY_MULTIPLE: 41,
2171
+ CONFIRMED_COV_NOTIFICATION_MULTIPLE: 42,
2172
+ UNCONFIRMED_COV_NOTIFICATION_MULTIPLE: 43
2173
+ };
2174
+
2175
+ module.exports.ServicesSupportedName = usc.invert(module.exports.ServicesSupported);
2176
+
2177
+ module.exports.StatusFlags = {
2178
+ IN_ALARM: 0,
2179
+ FAULT: 1,
2180
+ OVERRIDDEN: 2,
2181
+ OUT_OF_SERVICE: 3
2182
+ };
2183
+
2184
+ module.exports.StatusFlagsName = usc.invert(module.exports.StatusFlags);
2185
+
2186
+ // ASHRE 135-2016 - 20.2.1.4 Application Tags - Enumerators
2187
+ /**
2188
+ * @readonly
2189
+ * @enum {ApplicationTag}
2190
+ */
2191
+ module.exports.ApplicationTag = {
2192
+ NULL: 0,
2193
+ BOOLEAN: 1,
2194
+ UNSIGNED_INTEGER: 2,
2195
+ SIGNED_INTEGER: 3,
2196
+ REAL: 4,
2197
+ DOUBLE: 5,
2198
+ OCTET_STRING: 6,
2199
+ CHARACTER_STRING: 7,
2200
+ BIT_STRING: 8,
2201
+ ENUMERATED: 9,
2202
+ DATE: 10,
2203
+ TIME: 11,
2204
+ OBJECTIDENTIFIER: 12,
2205
+ // Application Tags - Internal
2206
+ EMPTYLIST: 100,
2207
+ WEEKNDAY: 101,
2208
+ DATERANGE: 102,
2209
+ DATETIME: 103,
2210
+ TIMESTAMP: 104,
2211
+ ERROR: 105,
2212
+ DEVICE_OBJECT_PROPERTY_REFERENCE: 106,
2213
+ DEVICE_OBJECT_REFERENCE: 107,
2214
+ OBJECT_PROPERTY_REFERENCE: 108,
2215
+ DESTINATION: 109,
2216
+ RECIPIENT: 110,
2217
+ COV_SUBSCRIPTION: 111,
2218
+ CALENDAR_ENTRY: 112,
2219
+ WEEKLY_SCHEDULE: 113,
2220
+ SPECIAL_EVENT: 114,
2221
+ READ_ACCESS_SPECIFICATION: 115,
2222
+ READ_ACCESS_RESULT: 116,
2223
+ LIGHTING_COMMAND: 117,
2224
+ CONTEXT_SPECIFIC_DECODED: 118,
2225
+ CONTEXT_SPECIFIC_ENCODED: 119,
2226
+ LOG_RECORD: 120
2227
+ };
2228
+
2229
+ module.exports.ApplicationTagName = usc.invert(module.exports.ApplicationTag);
2230
+
2231
+ // ASHRE 135-2016 - J.2.1.1 BVLC-Result: Format - Enumerators
2232
+ module.exports.BvlcResultFormat = {
2233
+ SUCCESSFUL_COMPLETION: 0x0000,
2234
+ WRITE_BROADCAST_DISTRIBUTION_TABLE_NAK: 0x0010,
2235
+ READ_BROADCAST_DISTRIBUTION_TABLE_NAK: 0x0020,
2236
+ REGISTER_FOREIGN_DEVICE_NAK: 0x0030,
2237
+ READ_FOREIGN_DEVICE_TABLE_NAK: 0x0040,
2238
+ DELETE_FOREIGN_DEVICE_TABLE_ENTRY_NAK: 0x0050,
2239
+ DISTRIBUTE_BROADCAST_TO_NETWORK_NAK: 0x0060
2240
+ };
2241
+
2242
+ module.exports.BvlcResultFormatName = usc.invert(module.exports.BvlcResultFormat);
2243
+
2244
+ // ASHRE 135-2016 - J.2.1 BVLC-Result: Purpose - Enumerators
2245
+ module.exports.BvlcResultPurpose = {
2246
+ BVLC_RESULT: 0x00,
2247
+ WRITE_BROADCAST_DISTRIBUTION_TABLE: 0x01,
2248
+ READ_BROADCAST_DISTRIBUTION_TABLE: 0x02,
2249
+ READ_BROADCAST_DISTRIBUTION_TABLE_ACK: 0x03,
2250
+ FORWARDED_NPDU: 0x04,
2251
+ REGISTER_FOREIGN_DEVICE: 0x05,
2252
+ READ_FOREIGN_DEVICE_TABLE: 0x06,
2253
+ READ_FOREIGN_DEVICE_TABLE_ACK: 0x07,
2254
+ DELETE_FOREIGN_DEVICE_TABLE_ENTRY: 0x08,
2255
+ DISTRIBUTE_BROADCAST_TO_NETWORK: 0x09,
2256
+ ORIGINAL_UNICAST_NPDU: 0x0A,
2257
+ ORIGINAL_BROADCAST_NPDU: 0x0B,
2258
+ SECURE_BVLL: 0x0C
2259
+ };
2260
+
2261
+ module.exports.BvlcResultPurposeName = usc.invert(module.exports.BvlcResultPurpose);
2262
+
2263
+ // ASHRE 135-2016 - 20.2.9 Encoding of a Character String Value - Enumerators
2264
+ module.exports.CharacterStringEncoding = {
2265
+ UTF_8: 0,
2266
+ MICROSOFT_DBCS: 1,
2267
+ JIS_X_0208: 2,
2268
+ UCS_4: 3,
2269
+ UCS_2: 4,
2270
+ ISO_8859_1: 5
2271
+ };
2272
+
2273
+ module.exports.CharacterStringEncodingName = usc.invert(module.exports.CharacterStringEncoding);
2274
+
2275
+ // ASHRE 135-2016 - 13.3.3 CHANGE_OF_VALUE Event Algorithm - Internal
2276
+ module.exports.CovType = {
2277
+ REAL: 0,
2278
+ BIT_STRING: 1
2279
+ };
2280
+
2281
+ module.exports.CovTypeName = usc.invert(module.exports.CovType);
2282
+
2283
+ // ASHRE 135-2016 - 16.1.1.1.2 Enable/Disable - Enumerators
2284
+ /**
2285
+ * @readonly
2286
+ * @enum {EnableDisable}
2287
+ */
2288
+ module.exports.EnableDisable = {
2289
+ ENABLE: 0,
2290
+ DISABLE: 1,
2291
+ DISABLE_INITIATION: 2
2292
+ };
2293
+
2294
+ module.exports.EnableDisableName = usc.invert(module.exports.EnableDisable);
2295
+
2296
+ // ASHRE 135-2016 - 20.1.2.5 max-apdu-length-accepted - Enumerators
2297
+ /**
2298
+ * @readonly
2299
+ * @enum {MaxApduLengthAccepted}
2300
+ */
2301
+ module.exports.MaxApduLengthAccepted = {
2302
+ OCTETS_50: 0b0000,
2303
+ OCTETS_128: 0b0001,
2304
+ OCTETS_206: 0b0010,
2305
+ OCTETS_480: 0b0011,
2306
+ OCTETS_1024: 0b0100,
2307
+ OCTETS_1476: 0b0101
2308
+ };
2309
+
2310
+ module.exports.MaxApduLengthAcceptedName = usc.invert(module.exports.MaxApduLengthAccepted);
2311
+
2312
+ // ASHRE 135-2016 - 20.1.2.4 max-segments-accepted - Enumerators
2313
+ /**
2314
+ * @readonly
2315
+ * @enum {MaxSegmentsAccepted}
2316
+ */
2317
+ module.exports.MaxSegmentsAccepted = {
2318
+ SEGMENTS_0: (0b000 &lt;&lt; 4),
2319
+ SEGMENTS_2: (0b001 &lt;&lt; 4),
2320
+ SEGMENTS_4: (0b010 &lt;&lt; 4),
2321
+ SEGMENTS_8: (0b011 &lt;&lt; 4),
2322
+ SEGMENTS_16: (0b100 &lt;&lt; 4),
2323
+ SEGMENTS_32: (0b101 &lt;&lt; 4),
2324
+ SEGMENTS_64: (0b110 &lt;&lt; 4),
2325
+ SEGMENTS_65: (0b111 &lt;&lt; 4)
2326
+ };
2327
+
2328
+ module.exports.MaxSegmentsAcceptedName = usc.invert(module.exports.MaxSegmentsAccepted);
2329
+
2330
+ // ASHRE 135-2016 - 6.2.4 Network Layer Message Type - Enumerators
2331
+ module.exports.NetworkLayerMessageType = {
2332
+ WHO_IS_ROUTER_TO_NETWORK: 0x00,
2333
+ I_AM_ROUTER_TO_NETWORK: 0x01,
2334
+ I_COULD_BE_ROUTER_TO_NETWORK: 0x02,
2335
+ REJECT_MESSAGE_TO_NETWORK: 0x03,
2336
+ ROUTER_BUSY_TO_NETWORK: 0x04,
2337
+ ROUTER_AVAILABLE_TO_NETWORK: 0x05,
2338
+ INITIALIZE_ROUTING_TABLE: 0x06,
2339
+ INITIALIZE_ROUTING_TABLE_ACK: 0x07,
2340
+ ESTABLISH_CONNECTION_TO_NETWORK: 0x08,
2341
+ DISCONNECT_CONNECTION_TO_NETWORK: 0x09,
2342
+ CHALLENGE_REQUEST: 0x0A,
2343
+ SECURITY_PAYLOAD: 0x0B,
2344
+ SECURITY_RESPONSE: 0x0C,
2345
+ REQUEST_KEY_UPDATE: 0x0D,
2346
+ UPDATE_KEY_SET: 0x0E,
2347
+ UPDATE_DISTRIBUTION_KEY: 0x0F,
2348
+ REQUEST_MASTER_KEY: 0x10,
2349
+ SET_MASTER_KEY: 0x11,
2350
+ WHAT_IS_NETWORK_NUMBER: 0x12,
2351
+ NETWORK_NUMBER_IS: 0x13
2352
+ };
2353
+
2354
+ module.exports.NetworkLayerMessageTypeName = usc.invert(module.exports.NetworkLayerMessageType);
2355
+
2356
+ // ASHRE 135-2016 - 6.2.2 Network Layer Protocol Control Information - Enumerators
2357
+ module.exports.NpduControlBit = {
2358
+ EXPECTING_REPLY: (1 &lt;&lt; 2),
2359
+ SOURCE_SPECIFIED: (1 &lt;&lt; 3),
2360
+ DESTINATION_SPECIFIED: (1 &lt;&lt; 5),
2361
+ NETWORK_LAYER_MESSAGE: (1 &lt;&lt; 7)
2362
+ };
2363
+
2364
+ module.exports.NpduControlBitName = usc.invert(module.exports.NpduControlBit);
2365
+
2366
+ // ASHRE 135-2016 - 6.2.2 Network Layer Protocol Control Information - Enumerators
2367
+ module.exports.NpduControlPriority = {
2368
+ NORMAL_MESSAGE: 0b00,
2369
+ URGENT_MESSAGE: 0b01,
2370
+ CRITICAL_EQUIPMENT_MESSAGE: 0b10,
2371
+ LIFE_SAFETY_MESSAGE: 0b11
2372
+ };
2373
+
2374
+ module.exports.NpduControlPriorityName = usc.invert(module.exports.NpduControlPriority);
2375
+
2376
+ // ASHRE 135-2016 - 20.1.2.11 Format of the BACnet-Confirmed-Request-PDU - Enumerators
2377
+ module.exports.PduConReqBit = {
2378
+ SEGMENTED_RESPONSE_ACCEPTED: (1 &lt;&lt; 1),
2379
+ MORE_FOLLOWS: (1 &lt;&lt; 2),
2380
+ SEGMENTED_MESSAGE: (1 &lt;&lt; 3)
2381
+ };
2382
+
2383
+ module.exports.PduConReqBitName = usc.invert(module.exports.PduConReqBit);
2384
+
2385
+ // ASHRE 135-2016 - 20.1.6.6 Format of the BACnet-SegmentACK-PDU - Enumerators
2386
+ module.exports.PduSegAckBit = {
2387
+ SERVER: (1 &lt;&lt; 0),
2388
+ NEGATIVE_ACK: (1 &lt;&lt; 1)
2389
+ };
2390
+
2391
+ module.exports.PduSegAckBitName = usc.invert(module.exports.PduSegAckBit);
2392
+
2393
+ // ASHRE 135-2016 - 21 FORMAL DESCRIPTION OF APPLICATION PROTOCOL DATA UNITS - Enumerators
2394
+ module.exports.PduType = {
2395
+ CONFIRMED_REQUEST: (0 &lt;&lt; 4),
2396
+ UNCONFIRMED_REQUEST: (1 &lt;&lt; 4),
2397
+ SIMPLE_ACK: (2 &lt;&lt; 4),
2398
+ COMPLEX_ACK: (3 &lt;&lt; 4),
2399
+ SEGMENT_ACK: (4 &lt;&lt; 4),
2400
+ ERROR: (5 &lt;&lt; 4),
2401
+ REJECT: (6 &lt;&lt; 4),
2402
+ ABORT: (7 &lt;&lt; 4)
2403
+ };
2404
+
2405
+ module.exports.PduTypeName = usc.invert(module.exports.PduType);
2406
+
2407
+ // ASHRE 135-2016 - 21 FORMAL DESCRIPTION OF APPLICATION PROTOCOL DATA UNITS - Enumerators
2408
+ module.exports.PropertyStates = {
2409
+ BOOLEAN_VALUE: 0,
2410
+ BINARY_VALUE: 1,
2411
+ EVENT_TYPE: 2,
2412
+ POLARITY: 3,
2413
+ PROGRAM_CHANGE: 4,
2414
+ PROGRAM_STATE: 5,
2415
+ REASON_FOR_HALT: 6,
2416
+ RELIABILITY: 7,
2417
+ STATE: 8,
2418
+ SYSTEM_STATUS: 9,
2419
+ UNITS: 10,
2420
+ UNSIGNED_VALUE: 11,
2421
+ LIFE_SAFETY_MODE: 12,
2422
+ LIFE_SAFETY_STATE: 13,
2423
+ RESTART_REASON: 14,
2424
+ DOOR_ALARM_STATE: 15,
2425
+ ACTION: 16,
2426
+ DOOR_SECURED_STATUS: 17,
2427
+ DOOR_STATUS: 18,
2428
+ DOOR_VALUE: 19,
2429
+ FILE_ACCESS_METHOD: 20,
2430
+ LOCK_STATUS: 21,
2431
+ LIFE_SAFETY_OPERATION: 22,
2432
+ MAINTENANCE: 23,
2433
+ NODE_TYPE: 24,
2434
+ NOTIFY_TYPE: 25,
2435
+ SECURITY_LEVEL: 26,
2436
+ SHED_STATE: 27,
2437
+ SILENCED_STATE: 28,
2438
+ ACCESS_EVENT: 30,
2439
+ ZONE_OCCUPANCY_STATE: 31,
2440
+ ACCESS_CREDENTIAL_DISABLE_REASON: 32,
2441
+ ACCESS_CREDENTIAL_DISABLE: 33,
2442
+ AUTHENTICATION_STATUS: 34,
2443
+ BACKUP_STATE: 36,
2444
+ WRITE_STATUS: 37,
2445
+ LIGHTING_IN_PROGRESS: 38,
2446
+ LIGHTING_OPERATION: 39,
2447
+ LIGHTING_TRANSITION: 40,
2448
+ INTEGER_VALUE: 41,
2449
+ BINARY_LIGHTING_VALUE: 42,
2450
+ TIMER_STATE: 43,
2451
+ TIMER_TRANSITION: 44,
2452
+ BACNET_IP_MODE: 45,
2453
+ NETWORK_PORT_COMMAND: 46,
2454
+ NETWORK_TYPE: 47,
2455
+ NETWORK_NUMBER_QUALITY: 48,
2456
+ ESCALATOR_OPERATION_DIRECTION: 49,
2457
+ ESCALATOR_FAULT: 50,
2458
+ ESCALATOR_MODE: 51,
2459
+ LIFT_CAR_DIRECTION: 52,
2460
+ LIFT_CAR_DOOR_COMMAND: 53,
2461
+ LIFT_CAR_DRIVE_STATUS: 54,
2462
+ LIFT_CAR_MODE: 55,
2463
+ LIFT_GROUP_MODE: 56,
2464
+ LIFT_FAULT: 57,
2465
+ PROTOCOL_LEVEL: 58,
2466
+ EXTENDED_VALUE: 63
2467
+ };
2468
+
2469
+ module.exports.PropertyStatesName = usc.invert(module.exports.PropertyStates);
2470
+
2471
+ // ASHRE 135-2016 - 15.8.1.1.4 Range - Internal
2472
+ module.exports.ReadRangeType = {
2473
+ BY_POSITION: 0,
2474
+ BY_SEQUENCE_NUMBER: 1,
2475
+ BY_TIME_REFERENCE_TIME_COUNT: 2
2476
+ };
2477
+
2478
+ module.exports.ReadRangeTypeName = usc.invert(module.exports.ReadRangeType);
2479
+
2480
+ // ASHRE 135-2016 - 16.4.1.1.1 Reinitialized State of Device - Enumerators
2481
+ /**
2482
+ * @readonly
2483
+ * @enum {ReinitializedState}
2484
+ */
2485
+ module.exports.ReinitializedState = {
2486
+ COLDSTART: 0,
2487
+ WARMSTART: 1,
2488
+ STARTBACKUP: 2,
2489
+ ENDBACKUP: 3,
2490
+ STARTRESTORE: 4,
2491
+ ENDRESTORE: 5,
2492
+ ABORTRESTORE: 6,
2493
+ ACTIVATE_CHANGES: 7
2494
+ };
2495
+
2496
+ module.exports.ReinitializedStateName = usc.invert(module.exports.ReinitializedState);
2497
+
2498
+ // ASHRE 135-2016 - 21 FORMAL DESCRIPTION OF APPLICATION PROTOCOL DATA UNITS - Internal
2499
+ module.exports.TimeStamp = {
2500
+ TIME: 0,
2501
+ SEQUENCE_NUMBER: 1,
2502
+ DATETIME: 2
2503
+ };
2504
+
2505
+ module.exports.TimeStampName = usc.invert(module.exports.TimeStamp);
2506
+ </code></pre>
2507
+ </article>
2508
+ </section>
2509
+
2510
+
2511
+
2512
+
2513
+
2514
+
2515
+ </div>
2516
+
2517
+ <br class="clear">
2518
+
2519
+ <footer>
2520
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.4</a> on Tue Jun 02 2020 20:24:55 GMT+0200 (Central European Summer Time) using the <a href="https://github.com/mochajs/mocha-docdash">@mocha/docdash</a> theme.
2521
+ </footer>
2522
+
2523
+ <script src="scripts/prettify/prettify.js"></script>
2524
+ <script src="scripts/prettify/lang-css.js"></script>
2525
+ <script>prettyPrint();</script>
2526
+ <script src="scripts/linenumber.js"></script>
2527
+
2528
+
2529
+ </body>
2530
+ </html>