Contenu

Notification par SMS chez Free Mobile via API avec un client Shell

Contenu
Avertissement
Dernière modification de cet article le 2014-06-11, le contenu pourrait être dépassé/obsolète.

Hier, l’opérateur Free Mobile a annoncé un nouveau service gratuit pour ses abonnés : le service d’envoi de SMS via une API.

Pratique et réclamé depuis un moment (même payant) ce service permet d’envoyer des SMS à son propre numéro d’abonné Free Mobile (et uniquement à celui-ci) depuis des appareils connectés tels que les lapin Karotz, un NAS, un serveur (de domotique par exemple).

Le service gratuit s’active en un clic via l’Espace Abonné, “Gérer mon compte” > “Mes Options” et est actif quasi-immédiatement.

Une fois activé, l’envoi du SMS se fait via l’adresse https://smsapi.free-mobile.fr/sendmsg avec les paramètres suivants :

  • user : L’identifiant Free Mobile (celui utilisé pour accéder à l’Espace Abonné)
  • pass : La clé d’identification générée et fournie par Free Mobile via l’Espace Abonné
  • msg : Le contenu du SMS encodé sous forme d’url (en Percent-encoding)

Par exemple pour envoyer le message « All your base are belong to us » sur votre mobile il vous suffit d’utiliser (accéder à) l’URL suivante (remplacer “1234567890” et “s0me5eCre74p1K3y” par vos informations) :

https://smsapi.free-mobile.fr/sendmsg?user=1234567890&pass=s0me5eCre74p1K3y&msg=All%20your%20base%20are%20belong%20to%20us

Pour aider l’envoi de SMS d’alerte depuis vos serveurs en ligne de commande je vous propose le client shell tout simple suivant (et un script PHP aussi simple plus tard) :

1
send-notification.sh "All your base are belong to us"

Code source disponible sur GitHub : freemobile-smsapi-client

Plus de raison de ne pas vous faire envoyer des SMS d’alertes en cas d’événements importants tels que la chute de services (Nginx, Apache, MySQL, etc.), de problèmes matériels (grappe RAID, segfault kernel, redémarrage impromptu, etc.) ou attaques (fail2ban, fichiers de logs, etc.) voire d’intrusions physiques (dans le cas d’installation domotique : eeDomus, domogik, Homewizard, VeraLite, Z-Wave).