diff options
Diffstat (limited to 'share/examples/isdn/contrib/convert.sh')
-rw-r--r-- | share/examples/isdn/contrib/convert.sh | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/share/examples/isdn/contrib/convert.sh b/share/examples/isdn/contrib/convert.sh new file mode 100644 index 0000000..b4a6e7d --- /dev/null +++ b/share/examples/isdn/contrib/convert.sh @@ -0,0 +1,86 @@ +#!/bin/sh +# +# convert recorded message to WAV format, optionally send it via mail +# +# by: Stefan Herrmann <stefan@asterix.webaffairs.net> +# Date: Fr 22 Mai 1998 14:18:40 CEST +# +# $FreeBSD$ + +CAT=/bin/cat +RM=/bin/rm +SOX=/usr/local/bin/sox +ALAW2ULAW=/usr/local/bin/alaw2ulaw +MAIL=/usr/bin/mail +GZIP=/usr/bin/gzip +ZIP=/usr/local/bin/zip +UUENCODE=/usr/bin/uuencode + +inputfile="" +outfilename="" +mailto="" +iF=0 +oF=0 +mF=0 + +set -- `getopt i:o:m: $*` + +if test $? != 0 +then + echo 'Usage: r2w -i <input file> -o <outfile name>.wav -m <email address>' + exit 1 +fi + +for i +do + case "$i" + in + -i) + inputfile=$2 + iF=1 + shift + shift + ;; + -o) + outfilename=$2 + oF=1 + shift + shift + ;; + -m) + mailto=$2 + mF=1 + shift + shift + ;; + --) + shift + break + ;; + esac +done + +if [ $iF -eq 0 -o $oF -eq 0 ] +then + echo 'Usage: r2w -i <input file> -o <outfile name>.wav -m <email address>' + exit 1 +fi + +if [ $iF -eq 1 -a $oF -eq 1 ] +then + echo + echo "converting $inputfile to $outfilename.wav ..." + + $CAT $inputfile | $ALAW2ULAW | $SOX -t raw -U -b -r 8000 - -t .wav $outfilename.wav +fi + +if [ $iF -eq 1 -a $oF -eq 1 -a $mF -eq 1 ] +then + echo "... and sending it via email to $mailto ..." + $UUENCODE $outfilename.wav message.wav | $MAIL -s"new message $outfilename" $mailto && $RM $outfilename.wav + # only usefull when sending over the internet + #$GZIP -c $outfilename.wav | $UUENCODE message.zip | $MAIL -s"Nachricht vom ISDN Anrufbeantworter" $mailto && $RM $outfilename.wav +fi + +echo "done." +echo |