summaryrefslogtreecommitdiff
path: root/recipes/callweaver
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/callweaver
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/callweaver')
-rw-r--r--recipes/callweaver/callweaver-perl.bb23
-rw-r--r--recipes/callweaver/callweaver_1.2.0-rc5.bb141
-rw-r--r--recipes/callweaver/files/bootstrap.patch13
-rw-r--r--recipes/callweaver/files/init75
-rw-r--r--recipes/callweaver/files/logrotate13
-rw-r--r--recipes/callweaver/files/volatiles6
6 files changed, 271 insertions, 0 deletions
diff --git a/recipes/callweaver/callweaver-perl.bb b/recipes/callweaver/callweaver-perl.bb
new file mode 100644
index 0000000000..99e2fb73bf
--- /dev/null
+++ b/recipes/callweaver/callweaver-perl.bb
@@ -0,0 +1,23 @@
+DESCRIPTION = "Callweaver::OGI Perl Gateway Interface Module"
+HOMEPAGE = "http://www.callweaver.org"
+SECTION = "libs"
+LICENSE = "GPL"
+DEPENDS = "install-native"
+RDEPENDS = "perl callweaver-ogi"
+PR = "r0"
+S = "${WORKDIR}/callweaver-1.2-${CWRCV}/contrib/ogi-perl/callweaver-perl-0.0.1"
+
+CWRCV = "rc5"
+
+SRC_URI = "http://devs.callweaver.org/release/callweaver-1.2.0-${CWRCV}.tar.bz2"
+
+inherit cpan
+
+do_install_append () {
+ install -d ${D}${datadir}/callweaver/ogi/perl
+ install ${S}/examples/* ${D}${datadir}/callweaver/ogi/perl
+}
+
+PACKAGES =+ "${PN}-examples"
+
+FILES_${PN}-examples = "${datadir}/callweaver/ogi/perl"
diff --git a/recipes/callweaver/callweaver_1.2.0-rc5.bb b/recipes/callweaver/callweaver_1.2.0-rc5.bb
new file mode 100644
index 0000000000..f0f572de50
--- /dev/null
+++ b/recipes/callweaver/callweaver_1.2.0-rc5.bb
@@ -0,0 +1,141 @@
+DESCRIPTION = "A flexible VOIP soft switch/PBX."
+DESCRIPTION_${PN}-ogi = "Callweaver Gateway Interface for scripted PBX call processing"
+DESCRIPTION_${PN}-fax = "Fax send/receive file and T.38 support for Callweaver"
+DESCRIPTION_${PN}-ldap = "LDAP Directory services interface for Callweaver"
+DESCRIPTION_${PN}-sounds = "Standard set of audio prompts for Callweaver"
+HOMEPAGE = "http://www.callweaver.org"
+RDEPENDS = "ssmtp"
+SECTION = "voip"
+LICENSE = "GPL"
+DEPENDS = "openssl zlib tiff libcap spandsp (>= 0.0.3+0.0.4pre10) speex readline js \
+ sox-native findutils-native"
+RRECOMMENDS = "logrotate"
+RRECOMMENDS_${PN}-ogi = "perl perl-module-strict callweaver-perl"
+PR = "r1"
+S = "${WORKDIR}/callweaver-1.2-rc5"
+
+CWRCV = "rc5"
+
+SRC_URI = "http://devs.callweaver.org/release/callweaver-1.2.0-${CWRCV}.tar.bz2 \
+ svn://svn.callweaver.org/callweaver-sounds/trunk/sounds/en_US;module=MelanieTaylor;proto=https;rev=4466 \
+ file://bootstrap.patch;patch=1 \
+ file://logrotate \
+ file://volatiles \
+ file://init"
+
+PARALLEL_MAKE = ""
+INITSCRIPT_NAME = "callweaver"
+INITSCRIPT_PARAMS = "defaults 60"
+
+inherit autotools update-rc.d
+
+EXTRA_OECONF = " --with-ssl=${STAGING_DIR_HOST}${layout_exec_prefix} --enable-low_memory \
+ --disable-zaptel --with-directory-layout=lsb --enable-t38 \
+ --with-codec-speex=${STAGING_DIR_HOST}${layout_exec_prefix} \
+ --with-perl-shebang='#!${bindir}/perl' --with-jabber --with-res_jabber \
+ --with-javascript --with-res_js \
+ --bindir=${bindir} --datadir=${datadir} --sysconfdir=${sysconfdir} \
+ --includedir=${includedir} --infodir=${infodir} --mandir=${mandir} \
+ --localstatedir=${localstatedir} --libdir=${libdir}"
+
+do_configure_prepend () {
+ ${S}/bootstrap.sh
+ # Fix some stupidness with the VoiceMail app naming. Case Matters!
+ sed -i 's:Voicemail:VoiceMail:' ${S}/configs/extensions.conf.sample
+ sed -i 's:/var:${localstatedir}:' ${WORKDIR}/volatiles
+ sed -i 's:/var:${localstatedir}:' ${WORKDIR}/logrotate
+ sed -i 's:/etc/init.d:${sysconfdir}/init.d:' ${WORKDIR}/logrotate
+}
+
+do_install_append() {
+ install -c -D -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/callweaver
+ install -c -D -m 644 ${WORKDIR}/logrotate ${D}${sysconfdir}/logrotate.d/callweaver
+ install -c -D -m 644 ${WORKDIR}/volatiles ${D}${sysconfdir}/default/volatiles/callweaver
+ # And now for sounds...
+ for file in `find ${WORKDIR}/MelanieTaylor -name \*.wav`; do
+ echo $file
+ sox -V $file -t raw -s -r 8000 -c 1 -w `echo $file|sed -e s/\.wav$/.sln/` resample -ql;
+ sox -V $file -t raw -U -r 8000 -c 1 -b `echo $file|sed -e s/\.wav$/.ulaw/` resample -ql;
+ sox -V $file -t raw -A -r 8000 -c 1 -b `echo $file|sed -e s/\.wav$/.alaw/` resample -ql;
+ sox -V $file -t gsm -r 8000 -c 1 -b `echo $file|sed -e s/\.wav$/.gsm/` resample -ql;
+ relfile=`echo $file|sed -e s:^${WORKDIR}/MelanieTaylor/::`
+ relfile2=`echo $relfile|sed -e s:\.wav$::`
+ install -c -D -m 644 ${WORKDIR}/MelanieTaylor/$relfile2.sln ${D}${datadir}/callweaver/sounds/$relfile2.sln
+ install -c -D -m 644 ${WORKDIR}/MelanieTaylor/$relfile2.ulaw ${D}${datadir}/callweaver/sounds/$relfile2.ulaw
+ install -c -D -m 644 ${WORKDIR}/MelanieTaylor/$relfile2.alaw ${D}${datadir}/callweaver/sounds/$relfile2.alaw
+ install -c -D -m 644 ${WORKDIR}/MelanieTaylor/$relfile2.gsm ${D}${datadir}/callweaver/sounds/$relfile2.gsm
+ done
+}
+
+pkg_postinst_prepend() {
+ grep -q callweaver ${sysconfdir}/group || addgroup --system callweaver
+ grep -q callweaver ${sysconfdir}/passwd || adduser --system --home ${localstatedir}/run/callweaver --no-create-home --disabled-password --ingroup callweaver -s ${base_bindir}/false callweaver
+ chown -R callweaver:callweaver ${libdir}/callweaver ${localstatedir}/lib/callweaver ${localstatedir}/spool/callweaver ${localstatedir}/log/callweaver ${localstatedir}/run/callweaver ${sysconfdir}/callweaver ${datadir}/callweaver
+ /etc/init.d/populate-volatile.sh update
+}
+
+pkg_postinst_${PN}-fax () {
+ chown -R callweaver:callweaver ${libdir}/callweaver
+}
+
+pkg_postinst_${PN}-ldap () {
+ chown -R callweaver:callweaver ${libdir}/callweaver
+}
+
+pkg_postinst_${PN}-sounds () {
+ chown -R callweaver:callweaver ${datadir}/callweaver
+}
+
+CONFFILES_${PN} += "${sysconfdir}/callweaver/musiconhold.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/adsi.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/adtranvofr.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/agents.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/cdr.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/callweaver.adsi"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/callweaver.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/cdr_custom.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/cdr_manager.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/cdr_tds.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/codecs.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/dnsmgr.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/dundi.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/enum.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/extconfig.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/extensions.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/extensions.ael"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/features.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/iax.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/indications.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/logger.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/manager.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/meetme.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/mgcp.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/modem.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/modules.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/muted.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/osp.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/privacy.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/queues.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/rpt.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/rtp.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/sip.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/sip_notify.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/udptl.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/voicemail.conf"
+CONFFILES_${PN} += "${sysconfdir}/callweaver/woomera.conf"
+
+PACKAGES = "${PN}-dbg ${PN}-sounds ${PN}-fax ${PN}-ogi ${PN}-ldap ${PN}-doc ${PN}-dev ${PN}"
+
+FILES_${PN}-dbg += "${datadir}/callweaver/ogi/.debug ${libdir}/callweaver/modules/.debug"
+FILES_${PN}-sounds += "${datadir}/callweaver/sounds/*"
+FILES_${PN}-dev += "${libdir}/callweaver/modules/*.la \
+ ${libdir}/callweaver/*.la \
+ ${libdir}/callweaver/*.so \
+ ${includedir}/callweaver/*"
+FILES_${PN}-fax += "${libdir}/callweaver/modules/app_backgrounddetect.so \
+ ${libdir}/callweaver/modules/app_faxdetect.so \
+ ${libdir}/callweaver/modules/app_rxfax.so \
+ ${libdir}/callweaver/modules/app_txfax.so"
+FILES_${PN}-ogi += "${libdir}/callweaver/modules/res_ogi.so \
+ ${datadir}/callweaver/ogi/*"
+FILES_${PN}-ldap += "${libdir}/callweaver/modules/app_ldap.*"
diff --git a/recipes/callweaver/files/bootstrap.patch b/recipes/callweaver/files/bootstrap.patch
new file mode 100644
index 0000000000..b3a021cd8d
--- /dev/null
+++ b/recipes/callweaver/files/bootstrap.patch
@@ -0,0 +1,13 @@
+Index: callweaver-1.2-rc5/bootstrap.sh
+===================================================================
+--- callweaver-1.2-rc5.orig/bootstrap.sh 2008-01-18 10:47:41.000000000 +0100
++++ callweaver-1.2-rc5/bootstrap.sh 2008-01-18 10:48:02.000000000 +0100
+@@ -36,7 +36,7 @@
+ debug "Found $COMMAND"
+ fi
+
+- INS_VER=`$COMMAND --version | head -1 | sed 's/[^0-9]*//' | cut -d' ' -f1`
++ INS_VER=`$COMMAND --version | head -n 1 | sed 's/[^0-9]*//' | cut -d' ' -f1`
+ INS_MAJOR=`echo $INS_VER | cut -d. -f1 | sed s/[a-zA-Z\-].*//g`
+ INS_MINOR=`echo $INS_VER | cut -d. -f2 | sed s/[a-zA-Z\-].*//g`
+ INS_MICRO=`echo $INS_VER | cut -d. -f3 | sed s/[a-zA-Z\-].*//g`
diff --git a/recipes/callweaver/files/init b/recipes/callweaver/files/init
new file mode 100644
index 0000000000..02cc3c1b0e
--- /dev/null
+++ b/recipes/callweaver/files/init
@@ -0,0 +1,75 @@
+#! /bin/sh
+#
+# This is an init script for openembedded
+# Copy it to /etc/init.d/callweaver and type
+# > update-rc.d callweaver defaults 60
+#
+callweaver=/usr/sbin/callweaver
+pidfile=/var/run/callweaver/callweaver.pid
+
+test -x "$callweaver" || exit 0
+
+case "$1" in
+ start)
+ echo -n "Starting Callweaver"
+ start-stop-daemon --start --quiet --exec $callweaver -- -npq
+ echo "."
+ ;;
+ stop)
+ echo -n "Stopping Callweaver"
+ $callweaver -rx "stop gracefully"
+ sleep 4
+ if [ -f $pidfile ]; then
+ start-stop-daemon --stop --quiet --pidfile $pidfile
+ fi
+ echo "."
+ ;;
+ force-stop)
+ echo -n "Stopping Callweaver"
+ $callweaver -rx "stop now"
+ sleep 2
+ if [ -f $pidfile ]; then
+ start-stop-daemon --stop --quiet --pidfile $pidfile
+ fi
+ echo "."
+ ;;
+ restart)
+ echo -n "Restarting Callweaver"
+ if [ -f $pidfile ]; then
+ $callweaver -rx "restart gracefully"
+ sleep 2
+ else
+ start-stop-daemon --start --quiet --exec $callweaver -- -npq
+ fi
+ ;;
+ force-restart)
+ echo -n "Forcibly Restarting Callweaver"
+ if [ -f $pidfile ]; then
+ $callweaver -rx "restart now"
+ sleep 2
+ else
+ start-stop-daemon --start --quiet --exec $callweaver -- -npq
+ fi
+ ;;
+ reload)
+ echo -n "Reloading Callweaver Configuration"
+ if [ -f $pidfile ]; then
+ $callweaver -rx "reload"
+ else
+ start-stop-daemon --start --quiet --exec $callweaver -- -npq
+ fi
+ echo "."
+ ;;
+ logger-reload)
+# echo -n "Restating Callweaver Logger"
+ if [ -f $pidfile ]; then
+ $callweaver -rx "logger reload"
+ fi
+# echo "."
+ ;;
+ *)
+ echo "Usage: /etc/init.d/callweaver {start|stop|force-stop|restart|force-restart|reload|logger-reload}"
+ exit 1
+esac
+
+exit 0
diff --git a/recipes/callweaver/files/logrotate b/recipes/callweaver/files/logrotate
new file mode 100644
index 0000000000..438f5f16bd
--- /dev/null
+++ b/recipes/callweaver/files/logrotate
@@ -0,0 +1,13 @@
+/var/log/callweaver/cdr-csv/Master.csv /var/log/callweaver/queue_log /var/log/callweaver/event_log /var/log/callweaver/messages
+/var/log/callweaver/full {
+ daily
+ missingok
+ compress
+ delaycompress
+ rotate 30
+ sharedscripts
+ postrotate
+ /etc/init.d/callweaver logger-reload
+ endscript
+}
+
diff --git a/recipes/callweaver/files/volatiles b/recipes/callweaver/files/volatiles
new file mode 100644
index 0000000000..c978630ffe
--- /dev/null
+++ b/recipes/callweaver/files/volatiles
@@ -0,0 +1,6 @@
+d callweaver callweaver 0775 /var/run/callweaver none
+d callweaver callweaver 0775 /var/lib/callweaver none
+d callweaver callweaver 0775 /var/log/callweaver/cdr-csv none
+d callweaver callweaver 0775 /var/log/callweaver/cdr-custom none
+d callweaver callweaver 0775 /var/spool/callweaver/outgoing none
+d callweaver callweaver 0775 /var/spool/callweaver/voicemail none