domoticz.init (1651B)
1 #!/bin/sh /etc/rc.common 2 3 START=99 4 USE_PROCD=1 5 PROG=/usr/bin/domoticz 6 PIDFILE=/var/run/domoticz.pid 7 8 start_domoticz() { 9 local section="$1" 10 local loglevel sslcert sslpass sslwww syslog userdata 11 12 config_get loglevel "$section" "loglevel" 13 config_get sslcert "$section" "sslcert" 14 config_get sslkey "$section" "sslkey" 15 config_get sslpass "$section" "sslpass" 16 config_get sslwww "$section" "sslwww" 17 config_get syslog "$section" "syslog" 18 config_get userdata "$section" "userdata" 19 20 [ -n "$loglevel" ] && procd_append_param command -loglevel "$loglevel" 21 [ -n "$syslog" ] && procd_append_param command -syslog "$syslog" 22 [ -n "$userdata" ] && procd_append_param command -userdata "$userdata" 23 [ -n "$sslcert" -a "${sslwww:-0}" -gt 0 ] && { 24 procd_append_param command -sslcert "$sslcert" 25 procd_append_param command -sslwww "$sslwww" 26 [ -n "$sslkey" ] && procd_append_param command -sslkey "$sslkey" 27 [ -n "$sslpass" ] && procd_append_param command -sslpass "$sslpass" 28 } || procd_append_param command -sslwww 0 29 } 30 31 start_service() { 32 mkdir -p /var/lib/domoticz 33 chmod 0770 /var/lib/domoticz 34 chown domoticz:domoticz /var/lib/domoticz 35 36 procd_open_instance 37 38 procd_set_param command "$PROG" 39 procd_append_param command -scripts /usr/share/domoticz/scripts/ 40 procd_append_param command -wwwroot /usr/share/domoticz/www/ 41 42 config_load "domoticz" 43 config_get_bool disabled "$section" "disabled" 0 44 [ "$disabled" -gt 0 ] && return 1 45 config_foreach start_domoticz domoticz 46 47 procd_set_param pidfile "$PIDFILE" 48 procd_set_param respawn 49 procd_set_param stdout 0 50 procd_set_param term_timeout 10 51 procd_set_param user "domoticz" 52 53 procd_close_instance 54 }