Dopo le versioni 0.1 e 0.2 di autovodafone, ecco la versione 0.3 ulteriormente ottimizzata rispetto alle precedenti:
#!/bin/bash #File di log FILELOG=/var/log/autovodafone data=$(date) echo "Inserisci il destinatario:" read destinatario if [[ ! $destinatario =~ "+39" --; then destinatario="+39$destinatario" fi echo "Inserisci l'oggetto del messaggio:" read oggetto echo "Inserisci il testo del messaggio:" read testo echo "$testo" > text cat text | sed -f urlencoding.sed > encoded enc=$(cat encoded) curl -c cookiev.txt -F "username=vostrousername" -F "password=vostrapassword" https://www.vodafone.it/190/trilogy/jsp/login.do 2&>1 curl -b cookiev.txt --data "recipient=$destinatario&subjecttosend=$oggetto&SmilName=&TextName=$enc&ImageName=&AudioName=&nextPage=/web/servletresult.html" http://mmsviaweb.net.vodafoneomnitel.it/WebComposer/web/elaborapop.jsp | grep -o -E '"s*(.*)>(.*)"' > out sed -n -e s/"//g -e "s/ /+/g" -e "2p" out > out1 url="http://mmsviaweb.net.vodafoneomnitel.it" url1=$(cat out1) url2=$(echo "$url$url1") curl -b cookiev.txt $url2 > result if grep -q "SendMessage=1" result;then echo "messaggio inviato" echo "$data: messaggio inviato" >> $FILELOG else echo "il messaggio non e' stato inviato" echo "$data: il messaggio non e' stato inviato" >> $FILELOG fi rm out* rm cookiev.txt rm text rm encoded rm result exit 0
In particolare, mediante il comando:
sed -n -e s/"//g -e "s/ /+/g" -e "2p" out > out1
ho ridotto il numero di file temporanei, grazie all’utilizzo ottimizzato di sed (espressioni multiple).
Per poter eseguire lo scrip senza i privilegi di root, dovete prima identificare il proprietario dei seguenti file:
autovodafone urlencoding.sed /var/log/autovodafone
e nel caso in cui ce ne fosse bisogno, potete modificare il loro owner mediante il comando:
nightfly@nightbox:~$ sudo chwon vostrouser:vostrogruppo nomefile
A questo punto l’esecuzione dello scrip senza privilegi di root dovrebbe filare liscia.
Bye.
Aggiornamento
Il servizio Vodafone MMS gratis da Web non esiste più (ne è la riprova il timeout che ci becca ad ogni tentativo di contattare la URL http://mmsviaweb.net.vodafoneomnitel.it). Per maggiori informazioni potete consultare questo 3d.