summaryrefslogtreecommitdiffstats
path: root/package/owsip/files
diff options
context:
space:
mode:
Diffstat (limited to 'package/owsip/files')
-rw-r--r--package/owsip/files/telephony.conf32
-rwxr-xr-xpackage/owsip/files/telephony.defaults55
-rw-r--r--package/owsip/files/telephony.init50
3 files changed, 137 insertions, 0 deletions
diff --git a/package/owsip/files/telephony.conf b/package/owsip/files/telephony.conf
new file mode 100644
index 000000000..7cc1e9f0f
--- /dev/null
+++ b/package/owsip/files/telephony.conf
@@ -0,0 +1,32 @@
+config general general
+ option name owsip
+ option backend ltq_tapi
+ option ossdev 0
+ option log_level 3
+ option interface nas0
+ option local_port 5060
+ option rtp_port 4000
+ option locale germany
+
+config stun stun
+ option host stun.myrealm.com
+ option port 3478
+
+config account example1
+ option realm myrealm1.com
+ option username myuser1
+ option password mypass1
+ option disabled 1
+
+config account example2
+ option realm myrealm2.com
+ option username myuser2
+ option password mypass2
+ option disabled 1
+
+config contact
+ option desc "example contact description"
+ option code "example"
+ option dial "0123456789"
+ option type realm
+
diff --git a/package/owsip/files/telephony.defaults b/package/owsip/files/telephony.defaults
new file mode 100755
index 000000000..bec2878a0
--- /dev/null
+++ b/package/owsip/files/telephony.defaults
@@ -0,0 +1,55 @@
+#!/bin/sh
+#
+# Copyright (C) 2011 OpenWrt.org
+# based on ar71xx
+#
+
+COMMIT_TELEPHONY=0
+
+set_relay() {
+ local cfg="relay_$1"
+ local gpio=$1
+ local val=$2
+
+ uci -q get telephony.$cfg && return 0
+
+ uci batch <<EOF
+set telephony.$cfg='relay'
+set telephony.$cfg.gpio='$gpio'
+set telephony.$cfg.value='$val'
+EOF
+ COMMIT_TELEPHONY=1
+}
+
+set_port() {
+ local cfg="port$1"
+ local id=$1
+ local led=$2
+
+ uci -q get telephony.$cfg && return 0
+
+ uci batch <<EOF
+set telephony.$cfg='port'
+set telephony.$cfg.id='$id'
+set telephony.$cfg.led='$led'
+set telephony.$cfg.noring='0'
+set telephony.$cfg.nodial='0'
+EOF
+ COMMIT_TELEPHONY=1
+}
+
+. /lib/lantiq.sh
+
+board=$(lantiq_board_name)
+
+case "$board" in
+ARV7525PW)
+ set_relay 31 1
+ set_port 0 "soc:green:fxs1"
+ #set_port 1 "soc:green:fxs2"
+ ;;
+esac
+
+[ "$COMMIT_TELEPHONY" == "1" ] && uci commit telephony
+
+exit 0
diff --git a/package/owsip/files/telephony.init b/package/owsip/files/telephony.init
new file mode 100644
index 000000000..9e40c41f4
--- /dev/null
+++ b/package/owsip/files/telephony.init
@@ -0,0 +1,50 @@
+#!/bin/sh /etc/rc.common
+START=80
+
+SERVICE_WRITE_PID=1
+SERVICE_DAEMONIZE=1
+SERVICE_PID_FILE=/var/run/owsip.pid
+
+. /lib/functions.sh
+
+load_module() {
+ MODULE=`lsmod | grep vmmc`
+ [ ! -z "$MODULE" ] || ( insmod vmmc ; sleep 3 )
+ [ ! -c /dev/vmmc10 ] && {
+ mknod /dev/vmmc10 c 122 10
+ mknod /dev/vmmc11 c 122 11
+ mknod /dev/vmmc12 c 122 12
+ mknod /dev/vmmc13 c 122 13
+ mknod /dev/vmmc14 c 122 14
+ mknod /dev/vmmc15 c 122 15
+ mknod /dev/vmmc16 c 122 16
+ mknod /dev/vmmc17 c 122 17
+ mknod /dev/vmmc18 c 122 18
+ }
+}
+
+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
+ load_module
+ service_start /usr/bin/owsip_ua
+}
+
+stop() {
+ service_stop /usr/bin/owsip_ua
+}