mprinfo Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 heuu ça fonctionne pas avec ma HC3
pepite Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 Yes krikroff merciiiiiiiii merciiii Ca tournerait dans un VD derriere un bouton ?
mprinfo Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 J'ai oublier MERCI Krikroff pour ce code, mais je crois que je vais attendre que l'on puisse installer ton plugin comme tu dis que c'est pour bientôt car pas envie de tout refaire mais scéne et VD ou tout et prévu pour le plugin juste 2 - a supprimer. Comme le push fonctionne maintenant a merveille je peux encore attendre un peu mais ca fonction bien sur HC2 @krikroff tu as pensés a modifier le plugin pour que lorsque l'on fait un copier coller il n'y ai plus de PB avec l'espace en trop a la fin ? Je suis bête c'est vrai tu penses a tout je sais pas comment tu fais
mprinfo Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 @pepite le mieux c'est une scéne tu crée une variable globale FreeSms tu modifies la scéne comme cela --[[ %% globals FreeSms --]] puis a la place de "text" tu mets cela local message = fibaro:getGlobalValue("FreeSms") et pour envoyer un message tu mets ta variable a jour donc tu déclenche le trigger de ta scéne c'est simple comme solution NON pourquoi toujours des VD il y a aussi les scénes qui on un avantage le trigger fibaro:setGlobal('FreeSmsID', "Coucou Pépite");
pepite Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 Pourquoi le VD ? je trouve ca plus visuellement pratique ;-) mais c'est perso evidemment et plutot WAF Et avec GEA tres simple d'appeler soit une scene soit un VD ;-) Oui suis OK pour la variable Globale. En fait, dans un coin de ma tete, je me dis que je veux des mess différents en fonction de ce que je veux recevoir, donc si je veux modifier le contenu de la variable par exemple je vois 2 moyens : 1- avec GEA je fais un {"Global", "FreeSms", "coucou"} et ca lance la scene du à la modif de la variable --> question : si modif de la variable simultanée ou presque, la HC2 aura le temps de modif la variable ? 2- faire un VD avec bouton qui correspond au texte avec des setGlobal dans les boutons et appui avec GEA en fonction du texte souhaité As tu une autre idée ? d'ou ma question du VD pour les messages différents
mprinfo Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 oui effectivement si tu envoies 2 messages en simultané sa risque de pausé probléme je n'utilise pas GEA donc je ne peut rien dire a ce sujet Mais ta réflexion et bonne il faudrait peut être un compteur d'instance et si plus d' une instance on fais un sleep de 10s avant de lancer l'instance suivante a voir ce que va dire krikroff c'est pas trés propre ton idée si tu as 10 000 texte a envoyer tu fais 10 000 et ce n'est pas générique --[[ %% properties 69 value 195 value 73 value %% globals --]] local IdSMS = fibaro:getGlobalValue("IdI9305") -- récuperation de la variable global instance freesms local OrigineDeclenchement = fibaro:getSourceTrigger() -- on demande au système de récupérer (get) l'origine (Source) du déclenchement de la scène (Trigger) fibaro:debug('ID Plugin SMS = ' ..IdSMS) if OrigineDeclenchement['type'] == 'property' then -- si l'origine du déclenchement de la scène est la modification d'une propriété d'un module surveillée dans l'entête alors local id = OrigineDeclenchement['deviceID'] -- Récuperation de l'id du déclencheur local Name = fibaro:getName(id) -- Récuperation Nom du module déclencheur local MaPorte = fibaro:getValue(id, 'value' ) -- récuperation de la valeur de l'id déclencheur local MessageSms = ('La ' ..Name) fibaro:debug('id module = '..id) fibaro:debug('Nom du module = '..Name) fibaro:debug('value = ' ..MaPorte) if (MaPorte == '0') then fibaro:call(IdSMS, "sendPush", MessageSms .." est Fermee") fibaro:debug( 'Fermer' ) else fibaro:call(IdSMS, "sendPush", MessageSms .." est Ouverte") fibaro:debug( 'Ouverte' ) end elseif OrigineDeclenchement['type'] == 'other' then fibaro:call(IdSMS, "sendPush", "Message test Home Center 2"); fibaro:debug('La scène a été lancée manuellement') end regarde ce code m'envoi un push a chaque fois qu'une porte s'ouvre j'ai juste a ajouté id+value dans l'entête et si je lance ma scéne en manuel je recois un message test IdSMS = c'est ID de mon tel comme cela si je change de téléphone j'ai juste modifier la variable globale et rien d'autre
Krikroff Posté(e) le 2 avril 2015 Auteur Signaler Posté(e) le 2 avril 2015 Pour éviter les problèmes de demandes concurrentes j'utilise dans "Notification Center" une variable globale comme une sorte de "Buffer" pour accumuler les demandes puis je réalise ensuite un traitement des informations... Je conseil d'attendre le support des plugins si le besoin est important, mais pour quelques notifications il n' y a pas de problèmes, une variable globale et un trigger dans une scène c'est suffisant . PS: Le code ne marche que dans une scène, les VD sont encore sur l'ancien moteur qui ne supporte pas net.HTTPClient
pepite Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 @mprinfo : je ne peux pas utiliser cela, je n'arrive pas a faire la 1ere conexion sur la HC2.. Si pour quelques notifs, y a pas de soucis de concurrence, comme dit Krikroff je vais tenter je vous tiens au jus, qu'en pensez-vous ? vivement les plugins ;-)
i-magin Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 Puisque @Krikroff a fourni un script, voici un petit complément pour contrôler les codes retour (absents du plugin... du moins dans la version que l'on connaît ) : -- -- Liste des codes retour HTTP de Free Mobile -- local code_retour = { [200]=" - Le SMS a été envoyé sur votre mobile", [400]=" - Un des paramètres obligatoires est manquant", [402]=" - Trop de SMS ont été envoyés en trop peu de temps", [403]=" - Le service n’est pas activé sur l’espace abonné, ou login / clé incorrect", [500]=" - Erreur côté serveur. Veuillez réessayez ultérieurement" } -- Fonction contrôle du code retour HTTP Free Mobile local function controle_status(status) print(os.date() .. ' - status = ' .. status .. (code_retour[tonumber(status)])) end Pour info, le "header" n'est pas indispensable... sachant que dans tous les cas certains caractères comme ° (degré) seront automatiquement supprimés 1
mprinfo Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 Le code de krikroff fonctionne très bien
pepite Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 ca tombre bien j'ai une erreur 403 ;-) Bizarre ca fonctionne avec pushingbox que j'utilise : pour verif, vous etes d'accord : le user : identifiant de connexion de l'interface freemobile le passwd : la cle api ? boulette reparee : petit espace qui trainait pour etre sur ou mettre le code de retour ?
i-magin Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 pour etre sur ou mettre le code de retour ? Tu ajoutes les codes retour et la fonction que j'ai donnés avant la ligne "http:request" et tu remplaces print('At ' .. os.date() .. ' - status = ' .. data.status) par controle_status(data.status) ... mais, on est bien d'accord que c'est du dépannage dans l'attente du plugin de @Krikroff 2
pepite Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 MERKIIII Evidemment, vivement que Fibaro accepte de nouveau les plugins ;-)
pepite Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 bon, dommage ca ne se lance pas sur changement de la valeur de la VG, qui n'a pas ete changee manuellement. Une idée ?
mprinfo Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 la je comprend pas ce que tu veux dire ?
pepite Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 en fait, la scene ne s'etait pas lancee sur le trigger du changement de valeur de la variable, mais le boulet etait en MODE ON j'avais oublie de cocher la case : scene active ;-) Sinon, etant que le trigger est la variable : petit sleep ou non ?
cybersquat Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 re les gars, j'ai créer un bouton avec le code de KriKroff, dans le user et password, vous mettez bien le user de connexion sur le site de free et le password c'est bien le code fourni par free pour les sms ???? Moi quand je clique sur le bouton après il m'envoi pas de sms J'ai du raté un truc
mprinfo Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 Oui relie les postes de krikroff tu auras ta réponse
cybersquat Posté(e) le 2 avril 2015 Signaler Posté(e) le 2 avril 2015 (modifié) Dans une scène ..... je re test ca marche !!!! Modifié le 2 avril 2015 par cybersquat
cybersquat Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Par contre je veux pas faire le reloud ! La différence avec pushingbox est que si l'on peut envoyer des sms personnalisés par des scènes ou autres différemment, avec celui de KriKroff peut-on le faire également ?
mprinfo Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Avec ce script tu envoi ton message dans une variable globale ce qui declenche la scène et envoi le sms
cybersquat Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 humm !! en gros ca veut dire quoi ??? lol
Messages recommandés