Aller au contenu

Messages recommandés

Posté(e)

@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");
Tu rajoute cela au code de krikroff
Posté(e)

je l'utilise depuis hier comme le decrit @mprinfo pour peu de notifications donc ca fonctionne, je confirme.

 

En gros tu mets ton message dans une variable, soit avec GEA soit avec une scene :

fibaro:setGlobal("sms", "salut cyber") ou
GEA.add(true, 30, "", {{"Global", "sms", "salut cyber"}})

Lorsque la valeur de la variable sms va changer et ce grâce à  l'entête, ca va lancer ta scene pour l'envoi de sms ;-) et tu dis "MERCI KRIKROFF"

%%globals
sms
Posté(e)

ben si jamais il l'utilise il a les 2 possibilités ;-)

, ca permet de faire le choix.

 

je suis GEA ADDICT ;-) surtout n'essaie pas..tu vas etre accroc ;-) Tiens le coup @mprinfo :60: :60: :60:

  • Upvote 1
Posté(e)

re re re re,

 

pas tout suivit, oubliez pas je suis une quiche en prog !!

 

Dans la scène j'ai ça 

--[[
%% globals
FreeSms
--]]

local username = "user"
local password = "password"
local message = fibaro:getGlobalValue("FreeSms")
local http = net.HTTPClient({ timeout = 2000 })
 
http:request('https://smsapi.free-mobile.fr/sendmsg?'..string.format("user=%s&pass=%s&msg=%s", username, password, message), {
    options = {
      method = 'POST',
      headers = {
        ["Content-Type"] = "application/x-www-form-urlencoded"
      }
    },
    success = function(data) 
      print('At ' .. os.date() .. ' - status = ' .. data.status) 
    end,
    error = function(err) 
      print('error = ' .. err)
    end
  })

et j'ai créer une variable dans les panneau variables : FreeSms et valeur à  0

 

Après je vous suit plus, désolé :s

Posté(e)

merci c'est clair :)

 

j'ai du mal avec la prog :P

 

par contre mprinfo, si tu veux rajouter ce truc la au script de BenjyNet pour le sèche linge tu fais comment ? sachant qu'il a une ligne pour les sms ?

 

voici un bout du code :)

-- Send notification to cellphone here
                fibaro:call(112, "sendEmail", "Sèche-linge", "Processus terminé");
				fibaro:call(20, "sendPush", "Le sèche-linge est terminé");
Posté(e)

@cybersquat:

Tu as crée une scène (où tu as collé le code de Krikroff), qui envoie un SMS avec comme message le contenu de la variable globale FreeSms. Cette scene se déclenche dès que la variable est modifiée.

Donc si tu veux envoyer un sms depuis une autre scène tu modifies la variable globale depuis cette dernière. (je sais pas si je suis clair là  :huh: )
 

-- Send notification to cellphone here
fibaro:call(112, "sendEmail", "Sèche-linge", "Processus terminé");
fibaro:call(20, "sendPush", "Le sèche-linge est terminé");

-- Envoyer un Sms
fibaro:setGlobal("FreeSMS","Seche linge terminé. Au boulot..")

Nicolas

  • Upvote 1
Posté(e)

Salut Nikko,

 

le fait de changer sur chaque VD ca devrait suffir ?

 

Ce soir ma femme a fait une brassée et le linge va démarrer bientôt, je test ça :)

 

  1. -- Envoyer un Sms
  2. fibaro:setGlobal("FreeSMS","Seche linge terminé. Au boulot..")
Posté(e)

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 :D

 

@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 ;)

comme dit un peu plus haut

@Nikko vivement que les plugin arrivent peut être en 4.041 faut y croire :)

Posté(e)

Virtual Device, ou scene, dès le moment où la variable FreeSms sera modifiée un SMS avec le contenu de la variable sera envoyé. Et pour modifier une variable global c'est la commande fibaro:setGlobal. ;)

 

Par contre le contenu de l'exemple que je t'ai mis faut le modifier car si ta femme reçoit ce genre de SMS tu vas te prendre une cartouche :)

 

Nicolas

Posté(e)

re tout le monde,

 

mon sèche linge a fonctionner avant hier, et je n'ai rien reçu, comment on peut savoir si il y a un bug ou un démarrage de la chose ?

 

lol, déjà  quand j'ai dit à  ma femme que le sèche linge était sous surveillance domotique, j'ai faillit dormir avec bouba dans le garage :s

Posté(e)

mets nous ton code pour le seche linge, et quelle etait la valeur de la variable ?

 

Attention la scene se declenche si la variable a ete MODIFIEE, si elle a deja la meme valeur au moment du declenchement avec un bouton ou scene, pas de declenchement, pas de message ;-)

 

je sais pas si j'ai ete clair la hihi

Posté(e)

re pepite ,

 

non c'est pas clair pour moi lol, mais voici le code :D

--[[
%% autostart
%% properties
%% globals
--]]
 
-- Tumble dryer - scene process check v 1.0.3 [03-2015]
-- Copyright © 2014 BenjyNet
 
local sourceTrigger = fibaro:getSourceTrigger();
local id_wallplug = 29;
local current_conso = 0;
local power = 0;
 
if (sourceTrigger["type"] == "autostart") then
	fibaro:debug("Script sèche-linge démarré");
	while true do
    local flag = 0;
	current_conso = tonumber(fibaro:getValue(id_wallplug, "power"));
	if current_conso > 500 then
		power = 1;
		fibaro:debug(os.date() .. " - Start tumble dryer");
		fibaro:debug(os.date() .. " - PHASE 1");
		fibaro:sleep(5*60*1000); -- wait 5 min
		while current_conso > 500 do
			fibaro:sleep(2*60*1000); -- check conso every 2 min
			current_conso = tonumber(fibaro:getValue(id_wallplug, "power"));
		end
		fibaro:debug(os.date() .. " - PHASE 2");
		while current_conso > 100 do
			fibaro:sleep(1*60*1000); -- check conso every min
			current_conso = tonumber(fibaro:getValue(id_wallplug, "power"));
		end
		fibaro:debug(os.date() .. " - PHASE 3");
		while (current_conso > 2 and flag < 149) do
			if current_conso > 100 then
				flag = 0;
				current_conso = tonumber(fibaro:getValue(id_wallplug, "power"));
			else
				flag = flag + 1;
				current_conso = tonumber(fibaro:getValue(id_wallplug, "power"));
			end
			-- fibaro:debug(flag);
			fibaro:sleep(2*1000); -- check conso every 2s
		end
		fibaro:debug(os.date() .. " - Tumble dryer process terminated - flag : " .. flag .. " conso : " .. current_conso);
		-- Send notification to cellphone here
                fibaro:call(112, "sendEmail", "Sèche-linge", "Processus terminé");
				fibaro:call(20, "sendPush", "Le sèche-linge est terminé");
      
      -- Envoyer un Sms
				fibaro:setGlobal("FreeSMS","Sèche linge terminé. Au boulot..")
	end
	if current_conso > 2 then
		power = 1;
		fibaro:debug(os.date() .. " - Tumble dryer power ON - Please power OFF");
		--fibaro:call(10, "setProperty", "currentIcon", 1009);
		current_conso = tonumber(fibaro:getValue(id_wallplug, "power"));
	end
	if (current_conso == 0 and power == 1) then
		power = 0;
		fibaro:debug(os.date() .. " - Tumble dryer power OFF");
		--fibaro:call(10, "setProperty", "currentIcon", 1008);
	end
	fibaro:sleep(5*60*1000); -- check if tumbler dryer is ON every 5 min
	end
end

Après pour la variable, je pige pas, j'en ai fait qu'une seul pour FreeSMS, elle ce modifie comment ?

Posté(e)

Ok as tu recu les mails et les push ?

 

Dans ta scene "freeSms" as tu bien mis ta variable freesms sous %globals ?

 

Si tout est oui, ce la vient bien de ton trigger : declencheur par la MODIFICATION de la VALEUR DE LA VARIABLE.

 

Installe ca : VD de steven qui te permet de voir quand ont ete modifiees tes variables globales.

http://www.domotique-fibaro.fr/index.php/topic/4205-virtual-device-variables-globales/

 

Je vais essayer d'etre clair :

 

- la 1ere fois : Ton seche linge tourne, et se termine, ta variable, la premiere fois va etre : seche linge termine..au boulot

- tu recois le sms car ta variable est passe de "rien" à  "seche linge termine..au boulot" ca a do,nc declenche ta scene 'SMS' puisque ta variable a ete modifiee et qu'elle se trouve en declencheur

 

La 2eme fois : ton seche linge tourne, ton SetGlobal remet la valeur de la variable avec "seche linge.au boulot"

 - pas de SMS car ta variable n'a en fait pas ete modifiee :

--passage de "seche linge termine.." a "seche linge termine..",

-pas de modification en realite donc ca ne declenche pas la scene des SMS

Posté(e)

re,

 

non aucun push ni mail :(

 

quand tu parles de ca ? 

 

Dans ta scene "freeSms" as tu bien mis ta variable freesms sous %globals ?

 

Est-ce cela dans la scène ?

 

--[[
%% autostart
%% properties
%% globals

 

--]]

 

Je viens d'installer le VD de Steven, trop fort !!! pour la variable FreeSms j'ai 0

Posté(e)
--[[
%% properties
%% globals
FreeSms
--]]

pour envoyer un SMS

fibaro:setGlobal("FreeSms","Ca fonctionnne Yes..")

tu peux envoyer la même phrase plusieurs fois de suite ca fonctionnera puisque l'on utilise un SET donc modification de la variable et déclenchement du trigger de la scéne

Posté(e)

salut mprinfo,

 

j'ai rajouter ca ! je l'ai déjà  en ligne 52 c'est bon ?

 

  1. -- Envoyer un Sms
  2. fibaro:setGlobal("FreeSMS","Sèche linge terminé. Au boulot..")

 

  1. fibaro:setGlobal("FreeSms","Ca fonctionnne Yes..")
Posté(e)

Attention c'est sensible à  la casse

Dans l'exemple j'avais écris FreeSMS et en réalité c'est FreeSms :D

 

Nicolas

Posté(e)

t'y es presque on est 3 a t'aider ;-)

@mprinfo : chez moi si la variable a la meme valeur, meme avec un setGlobal pas de trigger ;-)

bizarre, je me suis pe trompe quelque part, je vais retester ;-)

×
×
  • Créer...