mirror of
https://github.com/stagehacks/Cue-View.git
synced 2026-08-03 04:47:47 +00:00
c3f64cd842e05d3a206eb10dbf836e5afa552c1d
Instead of preventing search when the subnet is too large, restrict the search area to part of the subnet and provide feedback about which hosts are to be searched.
Cue View
A dashboard for everything in your show.
Features
- Tons of supported equipment
- Auto discover devices on the network
- Live updating
- Configurable layout
Supported Devices
- QLab 4 & 5
- ETC Eos Consoles
- Watchout
- PJLink Projectors
- X32 Audio Consoles
- XAir Audio Consoles
- Art-Net Universes
- sACN Universes
Future Devices
- ATEM Video Mixers
- DiGiCo Consoles
- d&b DS100, amps
- Hog
- Meyer Galileo Processors
Plugins
A Cue View "plugin" is a system for communicating with a type of device, for example QLab or Watchout. It consists of a JS file that describes how to communicate with the device, an HTML template for displaying the device's data, and a CSS file to style the HTML.
plugin.js
exports.config = {
defaultName: 'Example Plugin',
connectionType: 'osc' or 'TCPsocket' or 'UDPsocket',
searchOptions: {
type: 'Bonjour',
bonjourNane: 'device'
},
searchOptions: {
type: 'UDPsocket',
searchBuffer: Buffer.from([0x00, 0x01, 0x02]),
devicePort: 1234, // port the device receives messages on
listenPort: 2345, // port Cue View should listen for responses on
validateResponse: function(msg, info){
// if this function returns true, Cue View adds the responding IP address to the list
}
},
searchOptions: {
type: 'TCPport',
searchBuffer: Buffer.from('are you there'),
testPort: 1234, // port the device receives messages on
validateResponse: function(msg, info){
// if this function returns true, Cue View adds the responding IP address to the list
}
},
defaultPort: 1234, // only available for TCPsocket and UDPsocket devices
heartbeatInterval: 5000 // how frequently, in ms, to send the heartbeat message
}
exports.ready = function (device){
// runs when Cue View identifies a new device. send all data requests here
device.send(); // method for sending a message to the device requesting more info. arguments change based on connectionType
device.send(`/this/is/osc`); // osc
device.send(`/this/is/osc`, [{ type: 'i', value: 20 }, { type: 's', value: 'foo' }]); // osc with arguments
device.send(`hello`); // UDPsocket and TCPsocket
}
exports.data = function (device, buf){
// runs when Cue View receives a message from the device.
device.draw(); // flag for QLab to update the device's view
device.send();
}
exports.heartbeat = function (device){
// runs every n milliseconds, defined by exports.heartbeatInterval
devide.send();
}
Releases
9
Languages
JavaScript
57%
EJS
24%
CSS
15.5%
HTML
3.5%
