#!/bin/sh # $Id$ # -*- sh -*- vim: ft=sh sw=4 sts=4 # /usr/local/sbin/obexd # Designed to repeatedly call obexserver to receive new files, and send them # off in an email to root. on_term() { killall obexserver >/dev/null 2>&1 || true exit } trap on_term SIGTERM #trap on_term SIGQUIT trap on_term SIGINT trap "sdptool del OPUSH >/dev/null || true" EXIT sdptool add --channel=10 OPUSH >/dev/null while true; do filename=`obexserver|grep '^Filename = '|sed -e 's/^Filename = //'` ( case "$filename" in *.txt) ctype=text/plain ;; *.htm|*.html) ctype=text/html ;; *.vcf) ctype=text/x-vcard ;; *.wav) ctype=audio/x-wav ;; *.mid|*.midi) ctype=audio/midi ;; *.jpg|*.jpeg) ctype=image/jpeg ;; *.gif) ctype=image/gif ;; "WAP bookmark") ctype=text/x-url ;; *.3gp) ctype=video/x-realmedia ;; # ??? *) ctype=application/octet-stream ;; esac # metasend can't handle file names with spaces tempfile=`mktemp -t obexd.XXXXXX` case "$ctype" in text/*) tr -d '\r' < "/tmp/$filename" >> $tempfile ;; *) cat "/tmp/$filename" >> $tempfile ;; esac rm -f "/tmp/$filename" metasend -b -F bluetooth -t root -s "Object received via Bluetooth" -c '' \ -D "$filename" -S 4000000 -m "$ctype; name=\"`echo $filename|tr ' ' '_'`\""\ -f $tempfile rm -f $tempfile ) done