This change fixes some bugs relating to the Makefile and the
systemd watchdog notifier system. We have also removed the run.sh
script which was the culprit of latter problem (not sure exactly
how, but probably something to do with PIDs).
This change bumps the required iot tag and adds functional option
variadic parameters to the httpSender constructor so that we can
provide the HTTPAddress config variable and modify the httpSend
destination address. In addition to this, we have added an option
for the report callback.
This change adds functionality for broadcastManager state save.
This is done by marshalling the broadcastManager and saving to a
file. Loading is performed by unmarshalling an re-populating a
broadcastManager value. Testing has been added for this
functionality. Other functionality has been added a side effect.
Interface the function with pre-existing data structures. The filters can now be generated into a filter type using a generic Generate function.
This generates a filter off of the specifications within the filter struct. There is a generic Apply function which takes in a buffer of PCM data (defined in pcm.go),
and outputs to a []byte.
This change adds a "watchdog notifier" utility which tracks the
health of request handlers and notifies an external systemd
watchdog if everything looks good. This allows us to cause a
termination if any request handlers get hung.
This includes adding facilities to handle termination signals
and err handling. Some modifications have been made to the file
input to accomodate the concurrency requirements. The slate
read mechanism is still fairly rudimentary and can only read
from a hardcoded file, but at this stage is for prototyping
purposes.
This change removes usage of netsender to provide remote
configuration of the service and replaces with a basic control
REST API with PUT and DELETE methods. PUT requests add or update
a broadcast, and DELETE removes a broadcast. In addition to these
changes, some modification of the NOOP lexer has been performed
including tuning of the controller.
Prior to this change, CV was included by default, however, this
doesn't seem appropriate given that this functionality is rarely
used. For that reason, the meaning of the nocv tag has been
inverted i.e. it is now called withcv, and it the tag must be
included to build CV components.
revid & device/file: removing Loop mode which was conflicting with Loop variable, and improve file input with logging and robustness
Resolves issue #374
Approved-by: Trek Hopton