Web Server Software
The web server software is actually a Lua interpreter with a Web server extension. The extension is libmicrohttp written and maintained by Christian Grothoff. The Lua interpreter is standard Lua 5.1 and the webserver is activated by running scripts that interpret the REST commands.
The RESTful command structure is shown here:
These commands are sent as a URI with the base part the web server address then rest/<command>. In Firenet we use GET and POST. Get is used for a simple command with no extra data and POST is used along with a JSON representation of the data.
For example to fire channel 3 on node 5 and if we assume the web server is at 192.168.1.123:8080 the RESTful command URI would be: http://192.168.1.123:8080/rest/firenet/fire/5/3
As detailed in the Network section Firenet is normally connected via USB connection to a Serial device. That would then connect to real hardware. In addition a simulation mode is added so if you connect to a port named X and tell it the number of Firenet nodes it will simulate the network and the nodes. This allows you to run the system and try out shows with no hardware.