node-red-contrib-panasonicprojector
Version:
Panasonic Projector Control For Node Red
81 lines (78 loc) • 3.63 kB
HTML
<!-- Settings Panel -->
<script type="text/x-red" data-template-name="panasonicprojector-panasonicprojector">
<div class="form-row">
<label for="node-input-name"><i class="icon-tag"></i> Name</label>
<input type="text" id="node-input-name" placeholder="Name">
</div>
<div class="form-row">
<label for="node-input-ipAddress"><i class="icon-bookmark"></i> IP Address</label>
<input type="text" id="node-input-ipAddress">
</div>
<div class="form-row">
<label for="node-input-port"><i class="icon-bookmark"></i> Port</label>
<input type="text" id="node-input-port">
</div>
<div class="form-row">
<label for="node-input-username"><i class="icon-bookmark"></i> Username</label>
<input type="text" id="node-input-username">
</div>
<div class="form-row">
<label for="node-input-password"><i class="icon-bookmark"></i> Password</label>
<input type="text" id="node-input-password">
</div>
<div class="form-row">
<label for="node-input-projectorId"><i class="icon-bookmark"></i> ID</label>
<input type="text" id="node-input-projectorId">
</div>
</script>
<!-- Register -->
<script type="text/javascript">
RED.nodes.registerType('panasonicprojector-panasonicprojector', {
category: 'Panasonic',
color: '#ffffef',
defaults: {
name: {value: ""},
ipAddress: {value: "0.0.0.0", required: true},
port: {value: 1024, required: true, validate: RED.validators.number()},
username: {value: "admin1", required: true},
password: {value: "panasonic", required: true},
projectorId: {value: "ZZ", required: true},
},
inputs: 1,
outputs: 1,
icon: "panasonic.png",
align: "right",
paletteLabel: "Projector",
label: function() {
return this.name||"Panasonic Projector";
}
});
</script>
<!-- Information Panel -->
<script type="text/x-red" data-help-name="panasonicprojector-panasonicprojector">
<h1>Panasonic Projector Control Node</h1>
<p>Controls a panasonic projector over TCP</p>
<p><a href="https://github.com/haydendonald/node-red-contrib-panasonicprojector"<a>Github</a></p>
</br>
<h2>How To Use:</h2>
<p>Simply pass the following into the module</p>
<h3>Using Basic Commands</h3>
<p><strong>msg.payload.command</strong>: The command to be processed</p>
<p><strong>msg.payload.parameter</strong>: The parameter(s) of the command, not required if there is none</p>
<h3>Using Sub Commands</h3>
<p><strong>msg.payload.command</strong>: The command to be processed</p>
<p><strong>msg.payload.subcommand</strong>: The sub command to be processed</p>
<p><strong>msg.payload.parameter</strong>: The parameter(s) of the command, not required if there is none</p>
</br>
<h2>Error Codes:</h2>
<p><strong>ERR1</strong>: Undefined control command</p>
<p><strong>ERR2</strong>: Out of parameter range</p>
<p><strong>ERR3</strong>: Busy state</p>
<p><strong>ERR4</strong>: Timeout</p>
<p><strong>ERR5</strong>: Wrong data length</p>
<p><strong>ERRA</strong>: Password mismatch</p>
<p><strong>ER401</strong>: Command cannot be executed</p>
<p><strong>ER402</strong>: Invalid parameter</p>
</br>
<img src="https://raw.githubusercontent.com/haydendonald/node-red-contrib-panasonicprojector/master/img/commands.png" alt="Panasonic Projector Commands"/>
</script>