For this sprint the client has asked you to implement a smart alarm system. It should have the following features:
- It should sense both movement and noise.
- The system should monitor the noise levels to determine what should be considered ambient noise at different times of day and night.
- The alarm should be able to be switched on and off from the web interface.
- The user should be able to schedule a time for the alarm to be switched on and off automatically.
- When the alarm is activated (either manually or automatically) the door should lock.
- When the alarm is switch off the door should remain locked.
- There should be a way to unlock the door (simulate this with a button or switch).
- If the door is opened when the alarm is on this should trigger it.
- There should be a siren that goes off (use the buzzer) and a notification to the web interface.
- There should be the option for a silent alarm (notification but no siren).