Free vient de mettre en service une nouvelle option gratuite : Notification par SMS.
Quel rapport avec la framboise ? Eh bien amis RaspiNautes, si vous avez réalisé une application domotique, votre framboise va pouvoir envoyer GRATUITEMENT des SMS sur votre mobile Free pourvu qu’elle dispose d’une connexion Internet.
Au sommaire :
L’option SMS gratuits de Free
Même pour l’offre à 2€
Cette option est accessible par tous les abonnés de l’offre Free Mobile, même avec un abonnement à 2€ !!
Il suffit d’aller dans votre espace abonné et de l’activer.
A partir de ce moment, tout appareil pouvant accéder à une page web sur Internet peut envoyer des messages par SMS sur votre portable. Ce peut-être une centrale d’alarme, un dsique de sauvegarde ou… votre framboise préférée qui se manifeste lorsqu’un événement est détecté (intrusion, inondation, détection de fumée…) !
Envoyer un SMS
Pour envoyer le SMS, il faut simplement accéder au lien https://smsapi.free-mobile.fr/sendmsg en passant les paramètres
L’envoi du SMS se fait en appelant le lien suivant : https://smsapi.free-mobile.fr/sendmsg avec les paramètres nécessaires :
https://smsapi.free-mobile.fr/sendmsg?user=votre_login&pass=votre_passwd&msg=Intrusion_zone_2
avec
- user : votre login Free
- pass : votre clé d’identification générée automatiquement par le service Free
- msg : le contenu du SMS encodé sous forme d’url (Percent-encoding : un espace est codé %20)
Exemple : Envoyer le message « Hello World ! » sera codé : Hello%20World%20!
Il est également possible d’envoyer les paramètres en POST. Le contenu du message n’a pas besoin d’être encodé si vous choisissez cette méthode.
Codes d’erreur
Le code de retour HTTP indique le résultat de l’opération :
- 200 : Requête traitée avec succès : le SMS a été envoyé sur votre mobile.
- 400 : La syntaxe de la requête est erronée
- 402 : Trop de SMS ont été envoyés en trop peu de temps.
- 403 : Vous n’avez pas activé le service ou vous avez fait une erreur dans le login ou le mot de passe.
- 500 : Erreur interne du serveur. Réessayez ultérieurement.
Conclusion
Les amateurs de solutions domotique vont adorer ! Leur framboise va pouvoir les informer en direct et en continu des événements, températures…. Vous avez déjà testé ce nouveau service ? Laissez vos impressions dans les commentaires ci-dessous.
Merci à Keleb de m’avoir signalé cette info !
Bonjour ,
Je cherche à faire le test depuis une commande python .
J’ai trouvé quelques éléments de réponse dans l’aide à la fonction « urllib » pour ouvrir une adresse https , mais étant novice dans ce langage , je cherche toujours .
Bon , je suis arrivé à envoyer la commande et recevoir le message , mais je ne pense pas avoir envoyer les données de façon sécurisés .
j’ai importé la librairie URLLIB .
Et j’ai utilisé la commande : urllib.urlopen(« https://smsapi.free-mobile … etc etc etc … »)
Bonjour
Merci pour ce retour
nul doute que les exemples vont rapidement fleurir concernant l’utilisation de ce service gratuit 😉
cordialement
François
https://gist.github.com/nvallas/4a244c7a35372ea94141
https://gist.github.com/Val/
Bonjour Val
Merci pour ces exemples !
Cordialement
François
Bonjour,
Juste pour dire qu’on peut utiliser l’option « -k » de cURL pour ne pas avoir de certificat à donner, et qu’on peut aussi se passer de l’encodage du message avec une syntaxe comme :
curl -w “%{http_code}“ -k -G ‘https://smsapi.free-mobile.fr/sendmsg’ -d user=NNNNNNNN -d pass=XXXXXXXX -d msg=“Test d’envoi de message“
;-))
Bien sur il faut rectifier les guillemets français mis automatiquement par le formatage du blog, par des guillemets droits ;-(
Merci pour toutes ces précisions Zipe31 !
eh oui WordPress fait parfois ce qu’il veut….
J’ai rectifié les guillemets… c’est OK comme ça ? 😉
Cordialement
François
C’est parfaitement parfait comme dirait la pub, merci. 😉
J’utilise Domoticz sur mon raspberry, je me demande si cette solution serait gérable par Domoticz….mes compétences en programmation sont malheureusement limitées, donc si des exemples existent je suis preneur.
Bien sur, par exemple, dans « On action » sur un interrupteur il faut mettre l’url de sms freemobile afin de déclencher l’envoi de sms sur le changement d’état à On sur l’interrupteur….ou on peut aussi appeler un script php qui lancera un exec avec une commande wget et l’url….
J’ai testé sur domoticz comme tu le préconise, mais impossible d’enregistrer avec https:// (seulement avec http://, et évidemment ça ne fonctionne pas)…..peut être la deuxième solution mais c’est du charabia pour moi !
merci quand même.
Merci pour cette infos, et merci aussi à Zipe31 et ceux qui donnent des retours d’expériences.
C’est ce qui fait la richesse de la communauté RasPi. Partager les connaissances enrichit tout le monde ! celui qui reçoit comme celui qui donne 🙂
Merci pour cette information. Reste plus qu’à attendre que Free arrive en Belgique ou que d’autres opérateurs suivent ! 🙂
ça pourrait faire tache d’huile… 😉
En utilisant le module urllib dans un petit script python couplé avec motion et une caméra, je me suis fait un belle petite installation de vidéo surveillance!
merci la framboise!
Bonjour
Si vous souhaitez décrire votre réalisation sur framboise314 ce sera avec plaisir !
Il y a beaucoup de demandes autour de motions…
Cordialement
François
@ pascal:
je suis pas le roi de la programmation, mais le script suivant semble marcher!
s’il y a des connaisseurs, sur les extensions complémentaires de la commande Curl (ex: -k) je suis preneur!!
commandArray = {}
if (devicechanged[‘detecteur presence’] == ‘On’) then
os.execute(‘curl -k “https://smsapi.free-mobile.fr/sendmsg?user=xxxxxxx&pass=xxxxxxx&msg=alerte ! “’)
end
return commandArray
bis repetita,
il faut rectifier les guillemets français mis automatiquement par le formatage du blog, par des guillemets droits
Bonjour Oscar
C’est fait!
merci pour ce script
Cordialement
François
Super Info !!
Je l’ai testé en php c’est nikel 🙂
merci Fred
vous nous collez un ch’ti bout de script dans les commentaires ?
Cordialement
François
function EnvoieSmsFree($Login,$PassWord,$Message){
$url = sprintf(‘https://smsapi.free-mobile.fr/sendmsg?user=%d&pass=%s&msg=%s’,$Login,$PassWord,rawurlencode($Message));
$timeout = 50;
$http_code =0;
$ch = curl_init($url);
try {
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
} finally {
curl_close($ch); // Fermeture de la session cURL
}
return $http_code;
/*
200 : Requête traitée avec succès : le SMS a été envoyé sur votre mobile.
400 : La syntaxe de la requête est erronée
402 : Trop de SMS ont été envoyés en trop peu de temps.
403 : Vous n’avez pas activé le service ou vous avez fait une erreur dans le login ou le mot de passe.
500 : Erreur interne du serveur. Réessayez ultérieurement.
*/
}
Un grand merci Fred ! 😉
Cordialement
François
De rien 🙂
n’oublie pas de remplacer les guillemets simples que wordpress a remplacés.
Ils sont situés dans le sprintf, à côté des parenthèses qui englobent les paramètres de ce sprintf.
Ce service est génial est très simple d’utilisation.
Un pas de plus pour ma domotique 🙂
I love free.
Bonjour à tous,
Ma petite contribution en python.
#!/usr/bin/python
# -*-coding:Utf-8 -*
# José - Juin 2014
import urllib2
import sys
user = 'identifiant'
pas = 'motdepasse'
texte = 'message a transmettre'
url = 'https://smsapi.free-mobile.fr/sendmsg?&user='+user+'&pass='+pas+'&msg='+texte
req = urllib2.Request(url)
try:
reponse = urllib2.urlopen(req)
except IOError, e:
if hasattr(e,'code'):
if e.code == 400:
print 'Un des paramètres obligatoires est manquant.'
if e.code == 402:
print 'Trop de SMS ont été envoyés en trop peu de temps.'
if e.code == 403:
print 'Le service n’est pas activé sur l’espace abonné, ou login / clé incorrect.'
if e.code == 500:
print 'Erreur côté serveur. Veuillez réessayez ultérieurement.'
print 'Le SMS a été envoyé sur votre mobile.'
A bientôt
merci José ! 😉
je vais voir si je peux remettre l indentation « mangée » par WordPress
Cordialement
François
Voici la version python3 pour ceux qui sont intéressé:
import urllib.request
user = ‘USER’
password =’PASS’
url = ‘https://smsapi.free-mobile.fr/sendmsg?&user=’ + user + ‘&pass=’+password + ‘&msg=’ + message
try:
req = urllib.request.urlopen(url)
except Exception as e:
if hasattr(e, ‘code’):
if e.code == 400:
raise Exception(‘One parameter is missing’)
if e.code == 402:
raise Exception(‘Too many sms in a short periode’)
if e.code == 403:
raise Exception(‘user/password incorrect.’)
if e.code == 500:
raise Exception(‘Try latter’)
Merci Axel
J’ai repris l’indentation systématiquement avalée par WordPress
Cordialement
François
Merci Oscar,
J’ai suivi tes conseils et le résultat fonctionne.
Bonsoir.
Pour infos, j’ai intégré cette notification dans mon application d’alerte Leboncoin: http://alerte.ilatumi.org/
100% Open Source et gratuit. Les sources sont sur GitHub. En fouillant un peu, vous trouverez la classe PHP que j’ai créée pour envoyer facilement les SMS (peut-être utilisé dans n’importe quel projet PHP).
Et en plus, ça tourne nikel sur un Raspberry Pi (testé et approuvé 😉 )
Bonjour
J’utilise LBCAlerte sur un serveur OVH et tout fonctionne bien, par contre sur mon Raspberry avec Apache et MYSQL ca ne fonctionne pas. Apres copie des fichiers, je lance l’installation et j’ai une page blanche, donc impossible à configurer. Y a t il une config particuliere pour Raspberry ?
Merci
Il faut bien vérifier que php-curl soit installé. Un truc du genre :
sudo apt-get install php5-curl
Mais le fait qu’il manque ne devrait pas faire de page blanche (il me semble).
Il n’y a pas besoin de MySQL. Il faut aussi vérifier que tu as bien PHP 5.3 minimum.
Super
C’est bien çà il faut installer php5-curl.
Merci
Bonjour,
J’ai écrit un module python pour utiliser ce service:
http://pastebin.com/Jaja9Jf6
Il y a du contrôle d’erreurs et le code est documenté.
Bonjour,
Sans vouloir être hors-sujet sur ce post :
je travaille actuellement à trouver une solution de notification SMS avec mon Pi, que j’utilisais auparavant avec une clef 3G pour la connectivité classique, le but serait uniquement d’utiliser cette clef en tant que modem GSM ( pour des questions d’autonomie du Pi), avec un abonnement low cost avec option sms illimités ( car je ne suis pas chez FREE..), je viens de tomber sur ce site :
https://github.com/gammu
quelqu’un a t’ il déjà implémenté ce module python sur son Pi ??
Merci d’avance
Bonjour
pas de souci, il y a peu de hors sujets sur ce blog (le modérateur est magnanime ! 🙂 )
vous pouvez aussi poser la question sur le forum pour multiplier vos chances d’avoir une réponse
voyez aussi http://milillicuti.com/raspberry-pi-et-sms/
Bonne journée
Cordialement
François
Merci beaucoup pour le lien qui réponds parfaitement à mes questions, je test ce week end avec ma clef ICON 220 sur modèle B avec..et vous ferais un retour d’usage
je pense que vais vite devenir accro à votre forum
car cela devient rare les modérateur magnanime et réactif..
Bonjour,
Tout d’abord merci pour ce merveilleux site!!! et FREE…
Raspberry B+ / sonde DS18b20 / relais sur GPIO / Domoticz V2.2284
Je souhaite utiliser cette fonction pour m’envoyez un SMS quand ma pompe à eau de puit canadien est en route (SEWT). Cette pompe est mise en route par rapport à une plage de température extérieur (événement avec blocky) ça marche trés bien.
J’ai donc fait un script sh pour m’envoyez un sms quand cette pompe se met en route, ça marche trés bien sauf que domoticz vient vérifiez toutes les 30 secondes (a chaque prise de température si le relais est à ON) je recois donc un sms toutes les minutes, je suis spamé par la framboise!
Avec script LUA même constat et envoi SMS par blocky pareil. si vous avez des idées…?
Cordialement
D_J_U
Bonjour a tous
et pour arduino, avez vous une solution
Ping : Envoi SMS Gratuit vers Free - Api-Domotik
Bonjour à tous,
exste t-il un moyen d’envoyer un SMS sur un mobile ORANGE?
J’ai un Raspberry Pi 2 depuis un mois. J’arrive à m’envoyer des e-mail par Mutt via Motion et sSMPT. Je voudrais faire la même chose avec les SMS.
Cordialement
Pat
Bonjour
pour autant que je sache non… 🙁
mais un lecteur pourra peut être vous aider
posez la question sur le forum, vous avez plus de chance d’avoir une réponse que sur une page un peu ancienne du blog
cordialement
François
S’il s’agit de l’API Free Mobile, non on ne peut pas.
Mais il y a des services d’envoi de SMS. C’est payant (autour de 8 centimes / SMS).
OVH propose ce service. On peut envoyer des SMS via une API.
Merci François et Blount, ok pour le forum et OVH.
Est il possible de rajouter une pièce jointe (photos par exemple) ?
Qui a déjà testé ?
A+
Bonjour Estelle
posez la question directement à l’équipe de Raspbian-France…
A mon avis, SMS n’intègre pas d’image (ce serait MMS)
A confirmer toutefois
bonne journée
Cordialement
François
Merci pour la réponse