noddos: Noddos v0.5.0 with mDNS / DNS-SD support
[feed/packages.git] / utils / domoticz / files / domoticz.init
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" ] && {
23 mkdir -p "$userdata"
24 chmod 0770 "$userdata"
25 chown domoticz:domoticz "$userdata"
26 procd_append_param command -userdata "$userdata"
27 }
28 [ -n "$sslcert" -a "${sslwww:-0}" -gt 0 ] && {
29 procd_append_param command -sslcert "$sslcert"
30 procd_append_param command -sslwww "$sslwww"
31 [ -n "$sslkey" ] && procd_append_param command -sslkey "$sslkey"
32 [ -n "$sslpass" ] && procd_append_param command -sslpass "$sslpass"
33 } || procd_append_param command -sslwww 0
34 }
35
36 start_service() {
37 procd_open_instance
38
39 procd_set_param command "$PROG"
40 procd_append_param command -scripts /usr/share/domoticz/scripts/
41 procd_append_param command -wwwroot /usr/share/domoticz/www/
42
43 config_load "domoticz"
44 config_get_bool disabled "$section" "disabled" 0
45 [ "$disabled" -gt 0 ] && return 1
46 config_foreach start_domoticz domoticz
47
48 procd_set_param pidfile "$PIDFILE"
49 procd_set_param respawn
50 procd_set_param stdout 0
51 procd_set_param term_timeout 10
52 procd_set_param user "domoticz"
53
54 procd_close_instance
55 }