Implement the avm-motion-triggerd daemon
Implement a ready-to-use daemon application to model the business case of the project. When a motion is detected check the light sensor for the current ambient light level and if the threshold is passed, turn the configured actor (AVM lib) on. Wait for the configured timeout, if set, turn out the actor. While this time range, don't detect new motions. If no timeout was configured, wait for a configured bounce lock time to prevent jitter.
Acceptance criteria:
- The application should be able to make use of a configuration file
- Make use of the existing AVM interface/test binaries
- Make use of the existing PIR Motion Detection interface/test binaries
- Make use of the existsing config interface
Meta:
- Name the application binary
avm-motion-triggerd
- Support short/long argument name eg.
-h
and--help
List of arguments:
-
avm-motion-triggerd -h|--help
Show the available arguments -
avm-motion-triggerd -c|--config
Set the path to a config file -
avm-motion-triggerd -f|--foreground
Keep the daemon running in foreground
Other things to do:
-
Document the usage in a man page -
Add new configuration parameter (Sensor: motion_sensor_locktime
) -
Add new configuration parameter (Device: actor_command
) -
Implement the business logic