Ein av dei tinga eg verkeleg likte hos Telenor var det udokumenterte HTTP GET-apiet for å sende SMS. Etter at eg bytta til OneCall på privattelefonen har eg brukt ting som Prowl og NotifyMyAndroid for å få kjappe meldinger til mobiltelefonane mine. Dette er vel og bra det, men dersom ein til dømes er i utlandet og har satt opp FTF-varsling på geocaching.com for det området ein befinn seg i ynskjer ein jo ikkje å pådra seg enorme utgifter ved å ha mobildata slått på.
Så, med litt hjelp frå Firebug i Firefox laga eg eit enkelt lite script for å sende SMS frå kommandolinja med ditt OneCall-abonnement. Enjoy!
#!/bin/bash
#
# Quick and dirty script for sending SMS via onecall.no.
# Firebug is my friend.
#
# Works as of 2013-05-17, but URLs, POST variables and
# valid post data may change at any time
#
# Sent SMS may or may not be charged to your phone bill
#
CONFIGFILE="$HOME/.onecallsms"
if [ -f "$CONFIGFILE" ]; then
. "$CONFIGFILE"
else
USER="$1"
shift
PASSWORD="$1"
shift
fi
TONUM="$1"
shift
if [ -z "$1" ]; then
echo "Usage: $0 YourNumber Password ToNumber The rest of the arguments is the message"
exit 1
fi
if [ "$(uname)" = "Darwin" ]; then
CJAR=$(mktemp -t foo)
else
CJAR=$(mktemp)
fi
chmod 0600 "$CJAR"
curl -c "$CJAR" https://www.onecall.no/minesider/login.php \
-d Logg_Inn=Logg_Inn \
-d password=$PASSWORD \
-d username=$USER \
-d whereto= \
curl -b "$CJAR" -c "$CJAR" https://www.onecall.no/minesider/sendsmsnow-test.php \
-e https://www.onecall.no/minesider/velkommen_til_minesider.php \
-d avsender=$USER \
-d nummer=$TONUM \
-d smsmsg="$*"
RESULT="$?"
rm -f "$CJAR"
exit $RESULT