Aller au contenu
pepite

SMS 2 JPI - HC2

Recommended Posts

Bonjour,

 

Suite à une idée suggérée d' @ADN182 après l'adaptation de @dJuL de son JPI pour la Home Center 2, voilà le moyen d'envoyer des SMS à JPI pour actions sur la HC2, scène adaptée de la possibilité offerte par @Steven de piloter la HC2 depuis un Google Home.Google Home - IFTTT

Merci encore à @Steven de me corriger ;-), suis un espèce de boulet ambulant du code ;-)

 

@Lazer

Intérêt :

- Pour le fun mode Geek :-)

- Pour moi, essayer de comprendre du code de @Steven...quelle galère :60:

 

Pré -Requis :

   - Avoir installé JPI sur un périphérique dédié : JPI

   - Utilisé JPI en passerelle SMS /MMS d'@ADN182 : SMS/MMS Gateway

 

Côté JPI :

 1 - Configuration -- > Mots Clefs Persos

1009013773_Capturedecran2018-12-12a18_05_32.png.1d2c900ea776e9906a9e6759b95d3551.png

 

2 - Créer des mots clés qui seront récupérables dans les scénarios.

Pour Moi, j'ai créé :

 - SMS2JPI qui correspond à l'id de la scène côté HC2

1642934666_Capturedecran2018-12-12a18_05_53.png.b075bb218b2566cfccd62e0bba12f98e.png

 

- HC2, qui correspond au mot clé à mettre dans le SMS envoyé à JPI qui permettra de déclencher la scène côté JPI

235495099_Capturedecran2018-12-12a18_05_45.png.59208d447e0b072a5e949d21ea03e87e.png

 

3 - Créer Scenario sur l'arrivée d'un SMS : Evènements/Scénarios -> Téléphonie -> SMS entrant

500262447_Capturedecran2018-12-12a18_06_12.png.97fbd91c7c7c768ca565674a3fd7c3c7.png

    --> Je n'ai autorisé que mon téléphone pour le déclenchement (Mot clé perso créé par défaut par JPI, numéro à configurer si besoin)

    --> Clef de Scénario : le mot clé perso {HC2}

828415183_Capturedecran2018-12-12a18_07_18.thumb.png.033fa294195851781ab8e34e2a310c30.png

 

4 - Cliquer sur "+" en bas à gauche du cadre pour ajouter un scénario se déclenchant au mot clé {HC2}

1156983707_Capturedecran2018-12-12a18_08_14.thumb.png.85ee90223c21612e41ddcd3b01e49315.png

 

5 - Configurer le scénario

 

609846946_Capturedecran2018-12-12a18_08_45.thumb.png.af2e8f97eee33d5c9d1570e04cebd1bc.png

 

1356482417_Capturedecran2018-12-12a18_11_54.thumb.png.d68dfae1bf60cbaef7cd92d0bed9b8e8.png

795827704_Capturedecran2018-12-12a18_09_42.thumb.png.8b2a21ceddcb3c166156fac2711991ea.png

 

1363541618_Capturedecran2018-12-12a18_10_00.thumb.png.dd152005bd826b398e14c667a5b0a673.png

 

730917516_Capturedecran2018-12-12a18_10_24.thumb.png.116e6cf360ea5a703a4b2eb3fbe5a063.png

 

420960964_Capturedecran2018-12-12a18_10_44.thumb.png.c8e23a4219c22e0522e0334f7538112a.png

 

 

- Côté HC2

1 - Créer une scène en LUA puis copier coller

SMS2JPI.lua

 

2 - Donner les droits de l'utilisateur renseigné côté JPI  à la scène côté HC2

 

3 - Configurer la scène, tout se passe dans "Configuration Générale"


 

 -- ===================================================
  -- CONFIGURATON GENERALE
  -- ===================================================
local SMS2JPI = {
          mot_cle_jpi          = "HC2",                                 -- mot clé créé côté JPI pour déclenchement de la scène
          mot_cle_separateur   = "et",                                    -- mot clé séparateur permettant d'enchainer les sms (actions HC2)
          allLightRoom         = {"allume", "éteins", "les lumières"},    -- permet l'allumage ou l'extinciton de toutes les lumières d'une piéce (allume les lumières du salon : allumera TOUTES les lumières de la pièce SALON)
          allBlindRoom         = {"ouvre", "ferme", "les volets"},        -- permet l'ouverture/fermeture de TOUS les volets d'une pièce (ouvre les volets du salon : ouvrira TOUS les volets de la pièce SALON)
          light_augmente       = "augmenter",                            -- augmenter la variation de lampes à dimmer
          light_diminue        = "diminuer",                            -- diminuer la variation de lampes à dimmer
          dim_value            = 20,                                    -- valeur par défaut de la variation
          regexSceneStart      = "lance la scène",                        -- demarrer une scène
          regexSceneStop       = "stop la scène",                        -- arrêter une scène
          debug                = true                                   -- true/false
    }
  -- ===================================================
  -- FIN CONFIGURATION GENERALE
  -- =================================================== 
 -- ===================================================
  -- DECLARATION SMS
  -- ===================================================

local SMS = {
  ["allume le bonhomme"]                        = function() fibaro:call(id.BONHOMME, "turnOn")  end,
  ["éteins le bonhomme"]                        = function() fibaro:call(id.BONHOMME, "turnOff")  end,
  ["allume le lampadaire"]                      = function() fibaro:call(id.LAMPADAIRE, "turnOn")  end,
  ["éteins le lampadaire"]                      = function() fibaro:call(id.LAMPADAIRE, "turnOff")  end,
  ["éteins la télé"]                            = function() fibaro:call(id.DECODEUR_TV, "turnOff") fibaro:call(id.TV, "turnOff") end,
  ["quelle est la température extérieure"]      = "SONOS_TTS TempExt",
  ["quelle est la météo du jour"]               = "SONOS_TTS Meteo_Jour",
  ["quelle est la météo de demain"]             = "SONOS_TTS Meteo_Demain",
 
}

  -- ===================================================
  -- FIN DECLARATION SMS
  -- ===================================================

 

 

Have FUN

 

Ne manque que l'icône en cours de @fredokl

  • Like 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Ah super ça, merci @pepite :)

 

Par contre, je suis bigleux, ou il manque la scène en question ?!?

Partager ce message


Lien à poster
Partager sur d’autres sites

Ah ah je suis trop impatient :lol:

 

Merci ça a l'air top, je vais étudier ça :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Je ne comprends pas, j'ai faut tout comme tu as dit, le SMS est bien reçu par JPI, mais il ne déclenche pas la scène sur la HC2.

 

Dans le journal j'ai ceci :

 - 15/12/18 16:30:38 - INCOMINGSMS_EVENT déclenché - Numéro: +33612345678 (Mon NOM)
 - 15/12/18 16:30:38 - incomingsms_event - scénario: HC2
 - 15/12/18 16:30:38 - incomingsms_event - action: hc_scene => 0 [ERREUR]
 - 15/12/18 16:30:38 - INCOMINGSMS_EVENT terminé

Je ne sais pas interpréter ce journal en fait....

Pourtant j'ai bien déclaré le numéro de scène dans la variable.

 

Et je sais que JPI sait bien communiquer avec la HC2 car il pilote le Wall Plug du smartphone.

 

 

EDIT : ça fonctionne, merci @pepite pour l'aide apportée en Off... mon problème était tout bête, je n'avais pas donné les droits pour exécuter la scène à l'utilisateur.

 

Maintenant je vais pouvoir customiser un peu la scène :)

 

Modifié par Lazer
  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Quand je pourrai respirer un peu, je regarderai pour porter cela sur la LD

Partager ce message


Lien à poster
Partager sur d’autres sites

@pepite ou aux autres qui utilisent cette solution comme @ADN182 :

 

Chez vous aussi JPI consomme beaucoup de CPU sur le smartphone ?

Vu que mon vénérable HTC Desire HD est mort (ce qui m'a justement fait abandonner SMS Gateway), là je tourne sur un Samsung Galaxy S4 Mini.

Alors ce téléphone a toujours été une sombre bouse, il ne m'a pas donné satisfaction 1 seule minute, même neuf (lent, batterie anémique, signal mauvais....)

 

Mais là, JPI consomme beaucoup de CPU, ce qui se traduit par une batterie qui ne tient pas longtemps...... Le Wall Plug recherche le smartphone 2 fois par jour, c'est énorme !! (cycles de 30% => 100%)

Chez vous aussi ?

 

Ou c'est la batterie de mon smartphone qui est morte, et il faut que je la remplace ?

 

Ou alors utiliser un vrai smartphone, j'ai 2 Sony Xperia en stock, mais ça m'embête de dédier un smartphone haut de gamme pour une passerelle SMS.... car ils me servent toujours occasionnellement, quand madame casse son smartphone, je peux lui en prêter un (oui ça arrive souvent :20:)

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer

Sur une tablette huawei de trois mois, j'ai imperihome qui se met en fausse veille, motiondetector pour le réveiller et Pawserveur interrogé par la hc2 pour detecter le niveau de batterie et piloter le wallplug

J'ai trois charges de 4 heures ( début charge si < 30 et arret si > 80 )

 

Avant j'avais une tablette samsung, imperihome se réveillait seul ( pas de Motion detector ) et en charge permanente. La batterie à tenue 2 ans, elle avait méchamment gonflée. 

Partager ce message


Lien à poster
Partager sur d’autres sites

3 charges de 4h.... pas tranche de 24h ? C'est énorme !

 

Pour l'ancienne tablette, pas étonnant, il ne faut pas laisser les batteries en charge permanente, le mieux ce sont des cycles de charge partielle.

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello @Lazer,

 

J'avais jamais regarder vraiment, mais j'ai que des pics à 36% un coup tous les 20secondes sinon c'est à 1%. Je regarde ça par rapport au moniteur de ressources JPI depuis l'interface web. J'ai un Nexus 4 par contre branché en permanence sur mon routeur Asus qui fonctionne en partage de connexion au cas ou mais je peux pas arrêté le chargement :( je sais c'est pas terrible <_< 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

BOnsoir, @Lazer

 

JE n'avais jamais fait attention non plus, c'est un vieux Motrola qui ne tient pas la charge depuis longtemps, donc branché en permanence.

Comme @ADN182 je suis allé voir le mobiteur de ressources de JPI, je tourne entre 4 et 13 % de charge.

Partager ce message


Lien à poster
Partager sur d’autres sites

OK merci pour vos retours, le souci du moniteur de ressource, c'est que le simple fait de se connecter dessus, fait monter le CPU (comme sur la HC2 en fait) !

Donc cet affichage n'est pas représentatif.

Au lieu d'afficher le CPU en temps-réel (parasité par la puissance nécessaire à notre propre observation), il faudrait une moyenne flissante sur les dernières secondes et les dernières minutes, afin d'avoir quelque chose de plus représentatif.

Comme sur les systèmes Unix/Linux en fait.

 

En tout cas, je pense que JPI+PAW empêche le processeur de se mettre en veiller et de baisser sa fréquence, donc grosse consommation de batterie.

Partager ce message


Lien à poster
Partager sur d’autres sites

×