SMSky z Linuxu

Ing. Vlastimil Pospíchal vpospichal na tiscali.cz
Středa Srpen 21 19:47:30 CEST 2002


On Wed, Aug 21, 2002 at 01:16:45PM +0200, Ing. Petr Müller wrote:
> Ahoj!
> Bylo tu sice už asi dost probráno o posílání SMS z Linuxu,
> ale nenašel jsem nic, co by mi pomohlo to rozchodit.
> 
> Poradíte někdo?
> Nechci to dělat cestou mailů, protože
> chci mít trochu větší jistotu,
> že to dorazí brzy.
> 
> Díky PEtr

Zatím pouze pro Eurotel:

#!/bin/sh
server="www2.eurotel.cz"
url1="http://$server/sms/index.html?n_pagestyle=new"
url2="http://$server/sms/index.html"

while [ $# -gt 0 ]; do
	case "$1" in
		[0-9]*) 
			[ "${1:0:1}" == "0" ] && telefon="${1:1:9}" || telefon="${1:0:9}"
			;;
      abcd) telefon="723123456";;
      efghi|jklmn) telefon="607654321";;
	esac
	shift
done

rozbor() {
	uv='"'
	text_zpravy="$1"
	while read -d " " slovo; do
		case "$slovo" in
			action=*)
				zahlavi="${slovo##action=$uv}"
				zahlavi="${zahlavi%%$uv}"
				;;
			name=*)
				promenna="${slovo%%>*}"
				promenna="${promenna##name=$uv}"
				promenna="${promenna%%$uv}"
				;;
			value=*) 
				hodnota=${slovo%%>*}
				hodnota="${hodnota##value=$uv}"
				hodnota="${hodnota%%$uv}"
				if [ "$promenna" ]; then
					case "$hodnota" in
						"---") hodnota="${telefon:0:3}";;
						"Odeslat") hodnota="Odeslat zprávu";;
						"Vymazat") hodnota="$text_zpravy";;
					esac
					case "$promenna" in
						"n_number") hodnota="${telefon:3:6}";;
						"n_email") hodnota="";;
					esac
					echo -ne "&$promenna=$hodnota"
				fi
				promenna=
				;;
			*)
				;;
		esac
	done
}

sestaveni() {
	text_zpravy="$2"
	zprava=`lynx -mime_header "$1" | sed -ne '
		/<form / s/^ *//p
		/<input / s/^ *//p
		/<textarea / s/^ *//p
		/<option / s/^ *//p
		/<select / s/^ *//p' |rozbor "$text_zpravy"`
	echo "${zprava:1}"
}

sestaveni "$url1" "`cat -`" |
	lynx "$url2" -mime_header -post_data |
	grep "SMS centrum" |sed -e 's/<[^>]*>//g'

####################

Kit
-- 
Ing. Vlastimil Pospíchal
http://www.hoteldrnholec.cz


Další informace o konferenci Linux