Aller au contenu

Recommended Posts

Yo, 

 

Je vous propose un petit module sans prétention, dialoguant avec JPI (voir le sujet ici Sujet JPI) permettant d'envoyer des SMS/MMS depuis la HC2. J'utilise ce module depuis pas mal de temps pour m'envoyer des SMS (d'alerte, d'information) depuis la HC2.

 

JPI a remplacé l'application "SMS Gateway" tournant également sur Android, JPI permettant de bénéficier d'autres fonctionnalités (Effectué des actions sur le HC2 à la réception de SMS...) Au passage de je remercie @dJuL pour cette excellente application et la rapidité de son support.

 

Voilà si ça peu aider certain c'est par ici : 

 

Principe :

Envoyé des SMS/MMS en modifiant une Variable Global se nommant : SMS/MMS

Le VD se charge d'envoyer le Message à JPI, si celui-ci ne répond pas, il retentera suivant les paramètres inscrit dans le VD ("retry_max", 6 tentatives par défaut pour les SMS, 3 pour les MMS) si après toutes ces tentatives il n'a pas réussi il enverra une Notification Push ainsi qu'un Email pour prévenir de l'échec.

L'idée est de recevoir toujours l'information même si votre passerelle SMS est indisponible.

Depuis les dernière version de JPI il est possible d'envoyer des MMS, le but est de pouvoir recevoir l'image d'une caméra directement pas MMS tout comme vous le faites sans doute déjà par Mail.

 

Utiliisation :

SMS :

Envoyer un SMS a tous les contacts : 

fibaro:setGlobal("SMS", "Test") -- Envoie Test à tous les contact de la variable DefaultContact paramètrer dans les bouton du VD.

Envoyer un SMS à des contacts spécifique présent dans la variable DefaultContact : 

fibaro:setGlobal("SMS", '"Message":"Test", "SendTo":["Georges","0606060606"]') -- Envoie Test à Georges (doit être présent dans la variable DefaultContact) et au numéro 0606060606

Envoyer un SMS à un numéro (Peut être utilisé pour des cas spécifique, temporaire, alerte les voisins...  :

fibaro:setGlobal("SMS", '"Message":"Test", "SendTo":["0606060606"]') -- Envoie Test au numéro 06060606

MMS :

Envoyer un MMS à partir d'une Caméra existante dans la HC2 : 

fibaro:setGlobal("MMS", "Cam_Salon") -- Envoie à tous les contacts un Snapshot de la caméra se nommant "Cam_Salon" attention à la casse !
fibaro:setGlobal("MMS", '"Image":"Cam_Salon", "Message":"Detection dans le salon", "SendTo":["0606060606"]') -- Envoie l'image de la camera "Cam_Salon" avec le Message Détection dans le Salon au numéro 0606060606

Envoyé un MMS à partir d'une URL : 

fibaro:setGlobal("MMS", '"Image":"http://user:pass@doorbird.mondomaine.com/bha-api/image.cgi", "Message":"Quelqu un Sonne a la porte", "SendTo":["Georges"]')

 

Installation : 

 - Importer le module Virtuel JPI_SMS_MMS_Gateway.vfib

  • Renseigner dans le VD l'adresse IP et le Port pour contacter JPI
  • Modifier la variable Default Contact dans chaque bouton (SMS/MMS), vous pouvez ajouter des contacts en respectant le schéma {"Name": "Georges","number": "0600000000"}
    • local DefaultContact = '{ "Contact": [ { "Name": "Anto", "number": "0600000000" }, {"Name": "Georges","number": "0600000000"} ]}'
  • Renseigner l'ID du User Email ainsi que le Smartphone pour la notification d'echec.
    • local UserMailID = 2;   -- Email User ID if SMS not Sent
      local smartphoneID = 600; -- Push Smartphone ID if SMS not Sent
  • Intégrer les icônes (optionnel) 
  • Cliquer au moins une fois sur les bouton SMS et MMS pour la création des variables

 - Créer une nouvelle Scène JPI Gateway de type LUA 

  • Insérer le code ci-dessous, en prenant soin de modifier le numéro  avec celui de votre VD
--[[
%% properties
%% events
%% globals
SMS
MMS
--]]

local JPI_Gateway = 125;

fibaro:debug("Start Scene")

if fibaro:getGlobalValue("SMS") ~= "" then
  fibaro:debug("Envoi du SMS : "..tostring(fibaro:getGlobalValue("SMS")))
  fibaro:call(JPI_Gateway, "pressButton", "3")
end

if fibaro:getGlobalValue("MMS") ~= "" then
  fibaro:debug("Envoi du MMS : "..tostring(fibaro:getGlobalValue("MMS")))
  fibaro:call(JPI_Gateway, "pressButton", "4")
end

 

GEA (Merci @Steven et @pepite, dieu sait que j'embête ce dernier avec mes toilettes mais il me le rend bien ;) ) : 

 

  • Sois en affectant une variable Global comme ceux-ci : 
{"Global", "SMS", ' "Message":"Ouverture de la porte de garage - #date# #time#" '}
  • Ou alors si vous disposez de la V6, mettre ces informations dans le config() :  
GEA.options.sms = {name = "SMS",
    action = function(message) fibaro:setGlobal("SMS", GEA.getMessage(message)) end,
}
  GEA.options.mms = {name = "MMS",
    action = function(message) fibaro:setGlobal("MMS", GEA.getMessage(message)) end,
}
  • Ensuite pour l'envoie d'un SMS : 
GEA.add(true, 0, "",{{"SMS", '"Message":"GEA demarrer à #time# le #date#", "SendTo":["Anto"]'}})
GEA.add(true, 0, "",{{"SMS", "GEA demarrer à #time# le #date#"}})
  •  Envoie de MMS :
GEA.add(true, 0, "",{{"MMS", "Cam_Salon"}})
GEA.add(true, 0, "",{{"MMS", '"Image":"Cam_Salon", "Message":"Detection dans le salon"'}})
GEA.add(true, 0, "",{{"MMS", '"Image":"Cam_Salon", "Message":"Detection dans le salon", "SendTo":["Anto"]'}})

Icône : 

Bouton MMS : 

JPI MMS.png

Bouton SMS :

JPI SMS.png

Bouton pour la Scène :

JPI SMS-MMS.png

Modifié par ADN182
  • Like 6

Partager ce message


Lien à poster
Partager sur d’autres sites

Yes, merci@ADN182

Le MMS est vraiment top. Merci@Djul

Qu on rende à Cesar ce qui est à Cesar :-) GEA est à@Steven. Jene suis qu un disciple qui apprend du maitre et il m en apprend énormement.
Bon faut que dedie une tablette avec SIm ou un vieux tel pour JPI.
Tu utilises JPI en passerelle SMS ?

Envoyé de mon Nexus 5X en utilisant Tapatalk

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

merci pour cela, je vais le traduire pour ma LD

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 3 heures, pepite a dit :

Tu utilises JPI en passerelle SMS ?

Oui, tout comme je le faisais avec SMS Gateway, ça permet d'avoir un moyen de communication avec la domotique ne dépendant pas de la connexion Internet. Cela me permet également de redémarrer les services de la Fibaro (root) à distance par l'envoi de SMS. Cause : ça m'est déjà arrivé d'être coincé avec une erreur 503, en week-end a plusieurs KMs sans pouvoir interagir physiquement avec la box :(.

 

Content que ça puisse servir @jojo;)

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon, faut vraiment que je me mette à JPI plus en profondeur ;-) il met aussi arriver que la box plante alors que des kms nous separe l'un de l'autre ;-)

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 18/02/2018 à 13:00, ADN182 a dit :

en modifiant une Variable Global se nommant : SMS/MMS

Bonjour,

 

Je suis un débutant sur le domaine, j'ai bien suivi les étapes mais je n'ai pas compris cette partie

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello @nabil,

 

Quand je dis ça :

Citation

Envoyé des SMS/MMS en modifiant une Variable Global se nommant : SMS/MMS

C'est à dire en faisant comme ci-dessous, tu retrouve les instructions dans la section "Utilisation" du tuto en première page :

Citation

fibaro:setGlobal("SMS", "Test")

Par cette action tu affecte la valeur "Test" à la variable Global "SMS" cela enverra "Test" à tous les contacts.

 

Tu as une HCL ou une HC2 ?  (Car il me semble qu'il n'y a pas de variable Global sur HCL :( ) 

Modifié par ADN182

Partager ce message


Lien à poster
Partager sur d’autres sites

oui, oui, il y a des variables globales dans les HCL, mais pas de LUA

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour

 

Merci de votre retour, J'en ai les deux. A vrai dire j'en ai 7 HC2 et une HCL et je les utilisent dans une contexte professionnelle.

Je vous donnerai plus de détail par la suite.

Je vais essayer de suivre les différents étapes comme dans le tuto et je vous tiendrai au courant.

Je suis vraiment intéressé par la fonction d’envois SMS parce que je supervise des équipement très critiques.

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×