Astuce pour recevoir des notifications par SMS

Voici une petite astuce (que j’ai piqué à Sebsauvage) pour recevoir un SMS pour des événements lié à Duniter ou autre…

Service SMS de Free

Pour commencer il vous faut activer le service de notification par SMS de Freemobile.
Vous obtiendrez ainsi une clé d’identification.

Créer le script

Ensuite, vous devez créer le fichier ci-dessous. Ici le script envoie une notification quand Duniter calcule un bloc.

#!/bin/bash
# Surveillance des logs, et envoi d'un SMS quand un utilisateur se connecte ou déconnecte.

logger "SMS: Démarrage script SMS connexions."

envoie_sms () {
   chaine="vincentux: `date +%Y-%m-%d_%Hh%M` $*"
   logger "SMS: $chaine"
   curl -G -d user=UTILISATEUR -d pass=MOTDEPASS --data-urlencode msg="$chaine" 'https://smsapi.free-mobile.fr/sendmsg'
}

# Expressions régulières pour détecter certains évènements
reg_done="Done"
  
tail -fn0 /root/.config/duniter/duniter_default/duniter.log | \
while read line ; do
   if [[ $line =~ $reg_done ]] ; then
      envoie_sms "Duniter a trouvé un bloc"
   fi
done

Crontab

Et pour finir, on créer un crontab pour le lancer au démarrage :

@reboot nohup /home/scripts/logs-sms.sh

Biensûr vous pouvez adapter ce script pour surveiller ce que vous voulez :wink:

4 Likes

Je crois que l’url pour l’envoi au service Free est tronquée :

'https://smsapi.$...?

Yes…

c’est modifié :wink: