J'ai écrit un script PERL tout con pour envoyer un message depuis une
station Unix. On écrit par exemple sms-itineris toto "Salut toto"
, et le GSM
de toto reçoit le message. Autre possibilité:
Et hop, le résultat de la compilation est envoyé à toto. Débile non ?
Allez, une dernière:
make -k | sms-itineris toto
Et on est notifié du mail qu'on reçoit, même quand on voudrait ne pas
en entendre parler... Mais vous trouverez sûrement des tas d'utilisations
plus intéressantes.
$ cat ~/.forward
\tronche
"| grep -E '^(From:|Subject:)' | sms-itineris tronche"
chmod 755 sms-itineris
(Unix, en supposant que vous l'ayez sauvé
sous le nom sms-itineris
), et c'est tout.
sms-itineris destinataire message
, soit
sms-itineris destinataire
, et le message est lu sur l'entrée
standard. Si le destinataire est purement numérique, il est pris comme
le numéro, sinon on le cherche dans le fichier $HOME/.pager-calepin
,
qui est censé être une suite de lignes de la forme:
nom numéroLe nom et le numéro doivent être séparés par des tabs (\t). Exemple:
toto 12345678 maman 87654321 marlene 00000000NB: en fait, on peut ajouter autant de champs que l'on veut. J'ai commencé à utiliser la troisième colonne pour indiquer quel est le réseau considéré (ce qui permettra un de ces jours d'utiliser le même script pour tous les réseaux). Dans ce cas, çà donne par exemple:
toto 12345678 itineris maman 87654321 tam-tam marlene 00000000 itineris
Une autre possibilité intéressante de la passerelle Itineris est de
notifier de la délivrance du message par email. Pour utiliser cette
possibilité, il suffit d'utiliser -notify. Par exemple:
sms-itineris toto -notify tronche@foo.bar.com 'Salut
toto'
.
Le script de leur serveur Web fait quelques contrôles sur l'adresse email (un @ et un seul, et au moins un . derrière le @), donc j'ai implémenté la même chose, même si je n'en vois pas trop l'intérêt (une adresse peu dérailler de bien d'autres façons).
Le script est en PERL. Contrairement au script Tam-Tam, il est complètement autonome et n'utilise aucun process extérieur. Il fonctionnera si les appels socket et connect sont implémentés avec la même sémantique qu'en Unix, mais je n'ai pas (encore) pu vérifier. L'utilisation de la variable $HOME est acrobatique pour le moins.
Si vous essayez et que ça marche, soyez assez sympa pour m'envoyer un petit message. Si ça ne marche pas aussi, d'ailleurs. Merci d'avance.