#!/usr/bin/env bash source $SNAP/helper/functions if [ -z "${DAEMONIZED}" ]; then DAEMONIZED=0 fi function lprint { if [ ${DAEMONIZED} -eq 0 ]; then echo ${1} else logger "${SNAP_NAME}: ${1}" fi } export NETWORK_KEY=$(snapctl get network.key) SETTINGS_KEY=$(same_network_key "${NETWORK_KEY}") if [ $? -ne 0 ]; then snapctl set network.key="${SETTINGS_KEY}" export NETWORK_KEY="${SETTINGS_KEY}" fi OPT_HELP=false if [ "${1}" = "--help" ]; then OPT_HELP=true fi if [ ${OPT_HELP} = true ]; then plugs_connected if [ $? -ne 0 ]; then echo "" echo "NOTE! NOTE! NOTE!" echo "" fi echo "${SNAP_NAME} ($ ($ 1 --version))" echo "" echo "IMPORTANT! The DAEMON/SERVICE is disabled by default after installation." echo "You have to manually 'daemonize' it with executing the command" echo "" echo "$ ${SNAP_NAME}.enable" echo "" echo "Set your configuration as descrived below" echo "" echo "Base configuration values:" echo "- network.key: $(snapctl get network.key)" echo "Server configuration values: $(snapctl get server -d)" echo "" echo "- server.ssl: Use secure communication" echo "- server.host: IP address to bind to, e.g 127.0.0.1" echo "- server.port: Port to reach the web interface" echo "" echo "Session configuration values: $(snapctl get session -d)" echo "" echo "Set options with: $ snap set ${SNAP_NAME} param=key" echo "For example: $ snap set ${SNAP_NAME} server.host=0.0.0.0" echo "" echo "Other settings can be set in the UI after start." echo "" echo "Follow the log with" echo "$ snap logs ${SNAP_NAME} -f" echo "" echo "Other commands" echo "Disable the daemon: $ ${SNAP_NAME}.disable" echo "Restart the daemon: $ ${SNAP_NAME}.restart" exit 0 fi require_root plugs_connected if [ $? -ne 0 ]; then exit 1 fi ensure_zwavejs_config export SERVER_SSL=$(snapctl get server.ssl) export SERVER_HOST=$(snapctl get server.host) export SERVER_PORT=$(snapctl get server.port) export GIT_DIR="${SNAP}/usr/lib/zwavejs2mqtt/.git" export HTTPS="${SERVER_SSL}" export SESSION_SECRET=$(snapctl get session.secret) export USE_SECURE_COOKIE=$(snapctl get session.cookie-secure) if [ "${HTTPS}" != true ]; then unset HTTPS unset SERVER_SSL fi if [ "${USE_SECURE_COOKIE}" != true ]; then unset USE_SECURE_COOKIE fi export HOST="${SERVER_HOST}" export PORT="${SERVER_PORT}" exec "$@"