node-red-contrib-uhppoted
Version:
A set of nodes for the UHPPOTE Wiegand Access Controller
104 lines (97 loc) • 4.21 kB
HTML
<script type="text/html" data-template-name="uhppoted-get-door-control">
<div class="form-row">
<label for="node-input-name"><i class="fa fa-tag"></i>Name</label>
<input type="text" id="node-input-name" placeholder="Name" />
</div>
<div class="form-row">
<label for="node-input-topic"><i class="fa fa-tag"></i>Topic</label>
<input type="text" id="node-input-topic" placeholder="Message topic" />
</div>
<div class="form-row">
<label for="node-input-config"><i class="fa fa-tag"></i>Configuration</label>
<input id="node-input-config" />
</div>
</script>
<script type="text/html" data-help-name="uhppoted-get-door-control">
<p>Retrieves the current device door control state for a UHPPOTE access controller.</p>
<h3>Inputs</h3>
<dl class="message-properties">
<dt>payload<span class="property-type">object</span></dt>
<dd>JSON object with the controller ID and door number for 'get-door-control'</dd>
<dt class="optional">topic<span class="property-type">string</span></dt>
<dd>identifying message topic for output</dd>
</dl>
<h3>Outputs</h3>
<dl class="message-properties">
<dt>payload<span class="property-type">object</span></dt>
<dd>JSON object with the controller current device door control state</dd>
<dt>topic<span class="property-type">string</span></dt>
<dd>message topic copied from input</dd>
</dl>
<h3>Details</h3>
<p>The input <code>msg.payload</code> is a JSON object identifying the destination controller
and the door number.</p>
<p>The controller is identified by specifying either the (legacy) 'deviceId' or the composite
controller' object which supports both UDP and TCP connections. Defaults to broadcast UDP if
the address or protocol are not valid.</p>
<dl class="message-properties">
<dt>deviceId<span class="property-type">uint32</span></dt>
<dd>controller serial number</dd>
<dt>controller.id<span class="property-type">uint32</span></dt>
<dd>controller serial number</dd>
<dt>controller.address<span class="property-type">string</span></dt>
<dd>controller IPv4 address</dd>
<dt>controller.protocol<span class="property-type">string</span></dt>
<dd>controller connection protocol ('udp' or 'tcp')</dd>
<dt>door<span class="property-type">uint8</span></dt>
<dd>Door number (1-4)</dd>
</dl>
<h4>Example:</h4>
<pre>
{
"deviceId": 405419896,
"door": 3
}</pre>
<pre>
{
"controller": {
"controller": 405419896,
"address": "192.168.1.100",
"protocol": "tcp"
},
"door": 3
}</pre>
<p>The output <code>msg.payload</code> is a JSON object containing the door control state
(normally open, normally closed or controlled) from the UHPPOTE controller with
serial number matching the request:</p>
<dl class="message-properties">
<dt>deviceId<span class="property-type">uint32</span></dt>
<dd>controller serial number</dd>
<dt>doorControlState.door<span class="property-type">uint8</span></dt>
<dd>Door ID (1-4)</dd>
<dt>doorControlState.delay<span class="property-type">uint8</span></dt>
<dd>Door unlock duration (seconds)</dd>
<dt>doorControlState.control.value<span class="property-type">uint8</span></dt>
<dd>Numeric code for door control state (normally open:1, normally closed:2, controlled:3)</dd>
<dt>doorControlState.control.state<span class="property-type">string</span></dt>
<dd>'normally open', 'normally closed', 'controlled' or 'unknown'</dd>
</dl>
<h4>Example:</h4>
<pre>
{
"deviceId": 405419896,
"doorControlState": {
door: 1,
delay: 5,
control: {
value: 3,
state: "controlled"
}
}
}</pre>
<h3>References</h3>
<ul>
<li><a href="https://github.com/uhppoted">uhppoted</a>: GitHub umbrella project</li>
<li><a href="https://github.com/uhppoted/uhppoted-lib-node-red">uhppoted-lib-node-red</a>: GitHub project</li>
</ul>
</script>