Aller au contenu
Peter

push avec la valeur d'une variable

Recommended Posts

 

 

Bonjour à tous je me suis faire un VD qui relève la conso journalière de l'eau 

grâce au VD sonos remote nous avons la conso du jour tout les soir 

mais je voudrais aussi recevoir un push une variable stock cette info

je suis pas assez connaisseur en lua pour arriver à faire ce que je voudrais 

j'ai tenté avec ce code 

 

--[[
%% autostart
%% properties
%% weather
%% events
%% globals
--]]

local sourceTrigger = fibaro:getSourceTrigger();
function tempFunc()
local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
 ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == "19:45") )
)
then
    fibaro:call(186, "pressButton", "5");
    fibaro:call(4, "sendDefinedPushNotification", "conso_jour");
  local conso_jour = fibaro:getGlobalValue("conso_jour")
    
end
  

setTimeout(tempFunc, 60*1000)
end
if (sourceTrigger["type"] == "autostart") then
tempFunc()
else

local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
startSource["type"] == "other"
)
then
    fibaro:call(186, "pressButton", "5");
    fibaro:call(4, "sendDefinedPushNotification", "conso_jour");
    local conso_jour = fibaro:getGlobalValue ("conso_jour")
end

end

 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir, 

 

Essaie cela @Peter 

Renseigne IdTelUser et delay 

 

--[[
%% autostart
%% properties
%% weather
%% events
%% globals
--]]

--- Paramètres -------
local idTelUser = xx
local delay = 60 -- en secondes
---------------
local Source = fibaro:getSourceTrigger()

function Run()
    -- Conso du jour
  local conso_jour = fibaro:getGlobalValue("conso_jour")
  fibaro:debug("Conso du jour : " ..conso_jour)
    
    -- Heure du jour
  local Hour = os.date("%H:%M")
  fibaro:debug("Hour : " ..Hour)
 
    if Hour == "19:45" then 
      fibaro:call(186, "pressButton", "5")
      fibaro:call(idTelUser, "sendPush", conso_jour)
    end
    setTimeout(Run, delay*1000)
end

-- Main
if Source["type"] == "autostart" or Source["type"] == "other" then
  Run()
end

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci @pepite.

Mais j'ai des erreurs que je n'arrive pas à régler

en tout ça bravo tu as bien à pris le lua

si tu'peut m'aider Screenshot_2017-03-07-09-18-06.thumb.png.b4e43bb598b5049c0efdebcacf176e92.png

 

Si je commente la ligne 12 j'ai encore un problème sur la ligne 14 avec la même erreur 

d'avance merci

Partager ce message


Lien à poster
Partager sur d’autres sites

ligne 11 tu as une virgule en trop

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

 

merci, mais c'est du code simple que je fais..bien loin des experts ;-), mais je commence à comprendre 2/3 petites choses..je m'inspire et pose des questions aux experts ;-)

 

Magie du copier coller tu as réussi à rajouter une virgule ;-)

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci à toi @pepite et à @Lazer

effectivement  j'avais  fait un copier coller  du coup j'ai tout retaper 

et plus de problème le debug affiche bien la conso du jour et l'heure 

nickel sa fonctionne pour testé j'ai changer l'heure et impec

encore merci 

Modifié par Peter

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour

Pour ceux que cela peut intéresser  voici le code pour envoyer un push avec le contenue d'une variable 

 


--[[
%% autostart
%% properties
%% weather
%% events
%% globals
--]]

--Paramètres --
local idTelUser = 4
local delay = 60--en secondes

local Source = fibaro:getSourceTrigger()

function Run()
  local  conso_jour = fibaro:getGlobalValue("conso_jour")
  fibaro:debug ("Conso du jour :"..conso_jour)
  
  local Hour = os.date ("%H:%M")
  fibaro:debug ("Hour:"..Hour)
  
 if Hour == "12:50"  then 
    
    fibaro:call (186, "pressButton","%")
    fibaro:call(idTelUser,"sendPush", "La conso d'eau du jour est de "..conso_jour.." litres")
    end
  setTimeout(Run,delay*1000)
  end
--Main
if Source["type"] == "autostart" or  Source ["type"] == "other" then
  Run()
  end

Par contre je ne sait pas quoi mettre pour l'apostrophe du d'eau

à chaque fois sur la notification c'est écrit d\\'eau

 

  • Upvote 2

Partager ce message


Lien à poster
Partager sur d’autres sites

pour l'apostrophe il faut mettre celle là :

 

Fais un copier / coller et ca fonctionne chez moi.

 

Réponse trouvé sur le forum suite au meme problème que toi.

 

Merci @trist06

Partager ce message


Lien à poster
Partager sur d’autres sites

×