– Web frontend of Maschinendeck Door opening System
This application uses the node package pm2 for daemonizing. You can install it via (sudo) npm i -g pm2. To account for system restarts, you have to run
pm2 startup systemdand run the command that is generated.
Afterwards, Copy .env.sample to .env and fill in the necessary values. Then run npm i as well as npm run install and serve the application via reverse
proxy to the port entered in .env file via the webserver of your choice.
The application creates the file database.sqlite in the root folder, please make shure this file has adequate file permissions, as it contains user credentials.
To remove the daemonized application, simply run npm run remove.
To administer the user database, run the maintenance command npm run usermanager which lets you add, remove and edit users via a command line wizard.
Copy .env.sample to .env and fill in the desired values. Then just run npm i and npm run build as well as npm run dev.
/**
* JWT secret
*
* @default null
*/
SECRET
/**
* Number of hours a JWT is valid
*
* @default 12
* @optional
*/
TOKEN_HOURS
/**
* Port for the webserver to listen on
*
* @default 9000
* @optional
*/
PORT
/**
* Port for serial communication (/dev/ttyserial.something)
* @default ""
*/
SERIALPORT
/**
* Baudrate for Serial connection with MDoS
*
* @default 9600
*/
BAUDRATE
/**
* Domain of this application
*
* @default null
*/
DOMAIN
/**
* Mailserver to use for "change password" functionality
*
* @default hamal.uberspace.de
* @optional
*/
MAIL_SERVER
/**
* User for access to mailserver
*
* @default noreply@tuer.maschinendeck.org
* @optional
*/
MAIL_USER
/**
* Password for SMTP user
*
* @default null
*/
MAIL_PASSWORD
/**
* SMTP port on mail server
*
* @default 587
* @optional
*/
MAIL_PORT
/**
* MQTT server to publish to (leave empty to disable)
*
* @default bridge.local
* @optional
*/
MQTT_SERVER
/**
* User for authentication on the MQTT server
*
* @default bridge
* @optional
*/
MQTT_USER
/**
* Password for authentication on the MQTT server
*
* @optional
*/
MQTT_PASSWORD
/**
* MQTT topic to publish to
*
* @default maschinendeck/security/door
* @optional
*/
MQTT_TOPIC