Files

45 lines
892 B
Bash
Executable File

#!/bin/sh /etc/rc.common
# Cellular Modem Manager Daemon
# Dante <dante@seckv.com>
USE_PROCD=1
START=95
STOP=10
PROG="/usr/libexec/modem-collector"
start_service() {
local enabled check_interval
config_load modem-manager
config_get_bool enabled global enabled 1
config_get check_interval global check_interval 15
[ "$enabled" -eq 1 ] || return 0
mkdir -p /tmp/run/modem-manager /var/log /var/lock
touch /var/log/modem-manager.log
# Warm up devices discovery cache at startup
/usr/libexec/modem-detect --cache >/dev/null 2>&1 &
procd_open_instance
procd_set_param command "$PROG"
procd_set_param respawn 3600 5 0
procd_set_param stdout 1
procd_set_param stderr 1
procd_close_instance
}
stop_service() {
rm -f /var/lock/modem_terminal_active.lock 2>/dev/null || true
}
reload_service() {
stop
start
}
service_triggers() {
procd_add_reload_trigger "modem-manager"
}