diff options
Diffstat (limited to 'package/owsip/files/telephony.init')
-rw-r--r-- | package/owsip/files/telephony.init | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/package/owsip/files/telephony.init b/package/owsip/files/telephony.init new file mode 100644 index 000000000..90909e625 --- /dev/null +++ b/package/owsip/files/telephony.init @@ -0,0 +1,33 @@ +#!/bin/sh /etc/rc.common +START=80 + +SERVICE_WRITE_PID=1 +SERVICE_DAEMONIZE=1 +SERVICE_PID_FILE=/var/run/owsip.pid + +. /lib/functions.sh + +relay_set () { + local cfg="$1" + local gpio value + + config_get gpio "$cfg" gpio + config_get value "$cfg" value + [ -n "gpio" ] || return 0 + [ ! -f "/sys/class/gpio/gpio$gpio/direction" ] && + echo "$gpio" > /sys/class/gpio/export + [ -f "/sys/class/gpio/gpio$gpio/direction" ] && { + echo "out" > /sys/class/gpio/gpio$gpio/direction + echo "$value" > /sys/class/gpio/gpio$gpio/value + } +} + +start() { + config_load telephony + config_foreach relay_set relay + service_start /usr/bin/owsip_ua +} + +stop() { + service_stop /usr/bin/owsip_ua +} |