Web applications
The security system will be based on a web application that will be used to record and view events from the sensors and will allow a configuration of sensors and alarms.
For this, we will use the Flask framework for Python, which was used in the previous chapter, and the MQTT protocol to establish communication between the sensors and web application. This protocol is a publisher and subscriber model, where clients can subscribe to information (topics) they are interested in and receive new data as it is made available (published) by other clients.
An overview of the structure of the web application is shown in the following diagram. As we did in the previous chapter, we will use the SQLite database engine:
Deploying our application
We will first start by deploying the web application on the Pi. This will mostly be the same process as was used in the previous chapter for the weather station web application. However, there are additional steps here as the security application...