#!/bin/sh
# bramka-common - skrypt wczytujcy z wejcia numer telefonu, tre smsa,
# i wysya go do odpowiedniej bramki.
# (c)   Sebastian Zagrodzki <s.zagrodzki@mimuw.edu.pl>
#       Jacek Fiok          <j.fiok@zodiac.mimuw.edu.pl>
# Strona domowa: http://sokrates.mimuw.edu.pl/~zagrodzki
#
# Ten program moe by wykorzystywany jedynie do celw niekomercyjnych.
# Uywanie go bez wiedzy i zgody autora w celach zarobkowych jest
# niedozwolone.
# Autor nie ponosi odpowiedzialnoci za adne skutki wynike z dziaania 
# programu, nie gwarantuje te poprawnoci jego dziaania.

[ -r /usr/share/sms/smsrc ] && . /usr/share/sms/smsrc
[ -r /etc/smsrc ] && . /etc/smsrc
[ -r $HOME/etc/smsrc ] && . $HOME/etc/smsrc
[ -r $HOME/.smsrc ] && . $HOME/.smsrc

[ -z "$KATALOG" ] && KATALOG=/usr/share/sms
[ -z "$NOPL" -a -r "$KATALOG/nopl" ] && NOPL="$KATALOG/nopl"
[ -z "$NOPL" -a -r "/usr/share/sms/nopl" ] && NOPL="/usr/share/sms/nopl"

read TELEFON
TRESC="`cat`"

[ -n "$NOPL" ] && TRESC="`echo \"$TRESC\" | . \"$NOPL\"`"

TELEFON=${TELEFON#00}
TELEFON=${TELEFON#+}
TELEFON=${TELEFON#48}

PREFIX="`echo $TELEFON | cut -c 1-3`"
case "$PREFIX" in
501|502|503|504|505|506)
	BRAMKI="sms.ideawww"                     # sms.aircall sms.freesms
	;;
601)
	BRAMKI="sms.plussmtp sms.pluswww sms.ua" # sms.freesms sms.quios
	;;
603|605|607|609|691)
	BRAMKI="sms.plussmtp sms.pluswww sms.ua" # sms.freesms sms.quios
	;;
600|602|604|606|608|610|692)
	BRAMKI="sms.era sms.ua"                  # sms.aircall sms.freesms
	;;
*)
	echo "Nie wiem co zrobi z takim numerem!!!"
	exit 1
esac

for i in $BRAMKI; do
	/bin/sh "$KATALOG/$i" "$TELEFON" "$TRESC" >/dev/null 2>&1 && echo "Wiadomo wysana" && exit 0
done
ERRNO=$?
echo -n "BD: "
case $ERRNO in
  1) echo "bd poczenia z serwerem"
  ;;
  2) echo "zy numer"
  ;;
  3) echo "przekroczony limit wiadomoci"
  ;;
  4) echo "odbiorca ma nieaktywny odbir SMS-w z internetu" 
  ;;
  127) echo "nieznana odpowied serwera"
  ;;
  *)
  ;;
esac
exit $ERRNO
