Skript na posilani sms vsude

root root na birko.cjb.net
Středa Červen 25 09:25:58 CEST 2003


Dobry den,
 
  je to mirne offtopic, ale myslim, ze to vic pomuze a usetri
nez uskodi. :) Prikladam skriptik a rychlou jehlou spichnutou
utilitku co vyzaduje - dohromady dokazi zbesile rychle a efektivne
odesilat smsky na libovolneho operatora, podporuji telefonni
seznamek s bookmarky a snad jsou i slusne napsany. Nemusite me 
flejmit, vim ze to sem tak uplne nepatri, ale delam to s dobrym 
umyslem. ;)
  Bugy, upravy nesikovnosti a podobne vitam.

Dave
------------- další část ---------------
#!/bin/sh
#
# Odesle SMS pomoci brany www.smsoperator.cz
# Funguje na libovolneho operatora, text do delky 1000 znaku
#
# Dave Lister <dave na birko.cjb.net>, licence GNU/GPL :)
#
# 06/23/2003	Initial release

RC=~/.smsrc
WGET=/usr/bin/wget
HEX=/usr/local/bin/hex

############################# Main
# Ohlidame dostupnost pomucek
if [ ! -x "$WGET" ]; then
	echo -e "Error: Skript vyzaduje wget. Uprav k nemu cestu nebo ho nainstaluj.\n"
	exit 1
fi
	
if [ ! -x "$HEX" ]; then
	echo -e "Error: Skript vyzaduje konvertor hex. Uprav k nemu cestu nebo ho nainstaluj.\n"
	exit 1
fi

# Zadne parametry? Vypis napovedy
if [ $# -eq 0 ]; then
	echo "Pouziti: $0 [Zkratka] | [Volacka Cislo]"
	echo "Posle sms na cislo pod zalozkou 'zkratka' (v souboru $RC)"
	echo "nebo primo na cislo 'volacka/cislo' pres web smsoperator.cz"
	echo -e "\n  Zkratka\tSyntax zalozek - viz zdroj skriptu"
	echo -e "  Volacka\tPredvolba na 3 cislice"
	echo -e "  Cislo\t\tTelefonni cislo na 6 cislic"
	exit 1
fi


# Nacteme jmenne zkratky z osobniho seznamu v $RC
# a porovname s parametrem $1. Kdyz to sedne, pouzijeme
# uvedenou volacku a cislo. Kdyz se zkratka v $RC
# nevyskytne, pouzijeme $1 jako volacku a $2 jako cislo.
#
# Polozky musi mit tvar:
#
# zkratka  volacka  cislo
# kamos    604      123456
#
# odkomentovane radky se neberou v potaz

NUM=`if [ -e $RC ]; then

	grep -v "^#" $RC | while read nick pre num; do

		if [ "$nick" = "$1" ]; then
			echo $pre $num 
		fi
	
	done
fi`

# Mame zadane rovnou cele cislo?
if [ $# -eq 2 ]; then
	NUM="$1 $2"
fi

# Kontrola udaju
if [ "$NUM" = "" ]; then
	echo "Error: Nedostatecny pocet parametru!"
	exit 1
fi

echo "Text pro zpravu na $NUM (Enter=konec):"
read -e MSG

########################## Functions
# Funkce odesilajici smsky
function sendSMS() {
	PRE=$1
	NUM=$2
	shift 2
	MSG=`$HEX "$*"`
	
	echo -n "Kontaktuji branu..."
	A=`$WGET http://smsoperator.cz/brana.php3 --output-document=- 2>/dev/null|grep '"A"'|sed "s/\(.*value=\"\)\([A-Za-z]*\)\(.*\)/\2/"`

	echo -en " ok.\nOdesilam..."
	
	if [ "$PRE" -eq "608" -o "$PRE" -eq "776" -o "$PRE" -eq "777" ]; then
		OP="CZ_OSKAR"
	elif [ "$PRE" -eq "601" -o "$PRE" -eq "602" -o \( "$PRE" -ge "606" -a "$PRE" -le "729" \) ]; then 
		OP="CZ_EUROTEL"
	else
		OP="CZ_TMOBIL"
	fi

	$WGET --output-document=- --referer="http://smsoperator.cz/brana.php3" "http://smsoperator.cz/sms_odesli.php3?akce=odesli&A=$A&operator=$OP%7C%2B420$PRE&cislo=$NUM&od_jmeno=&od_kont=&zprava=$MSG&B1=Odeslat%20%3E%3E" >/dev/null 2>/dev/null

	echo " ok"
}

sendSMS $NUM $MSG

exit 0


------------- další část ---------------
A non-text attachment was scrubbed...
Name: hex.c
Type: text/x-csrc
Size: 279 bytes
Desc: [žádný popis není k dispozici]
URL: <http://www.linux.cz/pipermail/linux/attachments/20030625/24bd8486/attachment.bin>


Další informace o konferenci Linux