971jmd Posté(e) le 3 décembre 2018 Auteur Signaler Posté(e) le 3 décembre 2018 j'ai tester, je reçois 9/10 et dans le désordre
971jmd Posté(e) le 3 décembre 2018 Auteur Signaler Posté(e) le 3 décembre 2018 même en LUA 9/10 et dans le désordre fibaro:startScene(288, { "Hello! azerty 1" }) fibaro:startScene(288, { "Hello! azerty 2" }) fibaro:startScene(288, { "Hello! azerty 3" }) fibaro:startScene(288, { "Hello! azerty 4" }) fibaro:startScene(288, { "Hello! azerty 5" }) fibaro:startScene(288, { "Hello! azerty 6" }) fibaro:startScene(288, { "Hello! azerty 7" }) fibaro:startScene(288, { "Hello! azerty 8" }) fibaro:startScene(288, { "Hello! azerty 9" }) fibaro:startScene(288, { "Hello! azerty 10" })
971jmd Posté(e) le 3 décembre 2018 Auteur Signaler Posté(e) le 3 décembre 2018 forcement avec un 1sec d'intervalle sa fonctionne bien fibaro:startScene(288, { "Hello! azerty 1" }) fibaro:sleep(1000) fibaro:startScene(288, { "Hello! azerty 2" }) fibaro:sleep(2000) fibaro:startScene(288, { "Hello! azerty 3" }) fibaro:sleep(3000) fibaro:startScene(288, { "Hello! azerty 4" }) fibaro:sleep(4000) fibaro:startScene(288, { "Hello! azerty 5" }) fibaro:sleep(5000) fibaro:startScene(288, { "Hello! azerty 6" }) fibaro:sleep(6000) fibaro:startScene(288, { "Hello! azerty 7" }) fibaro:sleep(7000) fibaro:startScene(288, { "Hello! azerty 8" }) fibaro:sleep(8000) fibaro:startScene(288, { "Hello! azerty 9" }) fibaro:sleep(9000) fibaro:startScene(288, { "Hello! azerty 10" }) 1
pepite Posté(e) le 3 décembre 2018 Signaler Posté(e) le 3 décembre 2018 parfait ;-) Pour le fun avec GEA tu peux faire ca : A mettre dans config() GEA.options.telegram = {name="Telegram", keepValues = true, control=function(id) return type(fibaro:isSceneEnabled(id)) ~= nil end, action=function(id, args) if (type(id) ~= "table") then id = {id} end for i=1, #id do fibaro:startScene(id[i], json.decode(GEA.getMessage(json.encode(args)))) end end } GEA.add(true, 0, "Hello 1 & Hello 2 ", { {"Telegram", 288, { "Hello! 1" }}, {"Sleep", 1, {"Telegram", 288, { "Hello! 2" }}}} ) 2
971jmd Posté(e) le 3 décembre 2018 Auteur Signaler Posté(e) le 3 décembre 2018 ça fonctionne super bien telegram = {name="Telegram", keepValues = true, control=function(id) return type(fibaro:isSceneEnabled(id)) ~= nil end, action=function(id, args) if (type(id) ~= "table") then id = {id} end for i=1, #id do fibaro:startScene(id[i], json.decode(GEA.getMessage(json.encode(args)))) end end },
971jmd Posté(e) le 3 décembre 2018 Auteur Signaler Posté(e) le 3 décembre 2018 A tu regarder l' API de telegram ? pour le moment avec ifttt quand j'envois un message comme: DODO tout la maison s’éteint JARIVE tout la maison s'ouvre .... mai si on pouvais développer un code avec GEA ou autre, qui pourra récupéré un mot clé , la c'est le top
971jmd Posté(e) le 3 décembre 2018 Auteur Signaler Posté(e) le 3 décembre 2018 j'ai un souci avec le code que tu ma envoyer ( fibaro:args() ) GEA.add(true, 0, "Hello 1 & Hello 2 ", { {"Telegram", 288, { "Démarrage de GEA_Notification Volet Roulant le #date# à #time#" }} } ) je reçois : Démarrage de GEA_Notification
pepite Posté(e) le 4 décembre 2018 Signaler Posté(e) le 4 décembre 2018 Salut, Pas compris avec IFTTT, tu envoies DODO à TELEGRAM qui met la maison en mode nuit c'est ca ? Tu ne recois pas cela ? Volet Roulant le #date# à #time#
971jmd Posté(e) le 4 décembre 2018 Auteur Signaler Posté(e) le 4 décembre 2018 oui j'ai envoyer le message rapidement. oui avec IFTTT, j'envoies DODO à TELEGRAM qui met la maison en mode nuit. mai j'ai vue qu'il est possible avec API de telegram d'aller plus loin. exemple: si on reçois de telegram : la TV est allumer depuis 2h , voulez vous l'éteindre OUI / NON
MAM78 Posté(e) le 4 décembre 2018 Signaler Posté(e) le 4 décembre 2018 (modifié) je vois un intérêt de passer par télégram pour piloter Par des messages vocaux des actions dans notre box. Intérêt c’est qu’il n’est plus nécessaire de fournir à IFTTT notre login et mot de passe de notre boxe puisque ce sont les messages qui seront lus par la box directement. C’est peut-être un peu plus en terme de sécurité. Mais pour le moment je ne pourrai pas faire ces tests pour le moment temps que je ne peux pas accéder à ma box. Modifié le 4 décembre 2018 par MAM78
971jmd Posté(e) le 4 décembre 2018 Auteur Signaler Posté(e) le 4 décembre 2018 (modifié) quand j'exécute le code suivant dans un explorateur : https://api.telegram.org/botxxxxxbLnuJriivmFaxxGL8vxxxxxxxx/sendMessage?chat_id=6999999664&text=Démarrage l'explorateur renvois : {"ok":true,"result":{"message_id":191,"from":{"id":9999999,"is_bot":true,"first_name":"xxxx","username":"xxxxx"},"chat":{"id":999999,"first_name":"j md","last_name":"ddd","username":"xxxxx","type":"private"},"date":1543962381,"text":"D\u00e9marrage"}} et je reçois sur telegram : Démarrage ok pas de problème mai j'ai un petit problème avec le code si-dessous quand j’exécute le code LUA (FIBARO ARGUMENT) depuis HC2 je reçois sur telegram : Démarrage Modifié le 5 décembre 2018 par 971jmd
MAM78 Posté(e) le 5 décembre 2018 Signaler Posté(e) le 5 décembre 2018 Tu devrais retirer de ton code ton token
pepite Posté(e) le 5 décembre 2018 Signaler Posté(e) le 5 décembre 2018 Bonjour messieurs, toujours pas installé, mais vous voudriez faire : - depuis la HC2, envoyer un message à Telegram par exemple avec GEA comme vous le faites GEA_HC2 ----- Message --> Telegram - selon message envoye a telegram --> actions sur la HC2 ? Du genre : GEA.add( {"Time", "23:30"}, 30, "Maison en Mode DODO", {"Telegram", 288, { "DODO" }}) Pourquoi passé 2 fois par la HC2 ? Ou alors ca, (desole, je dors peu en cemoment, merci la mine..;) je galere à comprendre surtout que je ne l'ai aps installé) Envoyer un message à Telegram depuis n'importe ou, puis executer une scene de la HC2 sur le message recu sur Telegram ? Message à Telegram --> Execution scene sur la HC2 C'est ca plutot non ?
pepite Posté(e) le 5 décembre 2018 Signaler Posté(e) le 5 décembre 2018 @971jmd Essaie cela pour voir : --[[ %% properties %% globals --]] function url_encode(str) if (str) then str = string.gsub (str, "\n", "\r\n") str = string.gsub (str, "([^%w %-%_%.%~])", function (c) return string.format ("%%%02X", string.byte(c)) end) str = string.gsub (str, " ", "+") end return str end function urldecode(s) return string.gsub(s, '%%(%x%x)', function (hex) return string.char(tonumber(hex,16)) end) end function urldecodeTable(tab) for k,v in pairs(tab) do if type(v) == "string" then tab[k] = urldecode(v) elseif type(v) == "table" then urldecodeTable(v) end end end -- ---------------------------------------------------------- -- Remplacement des caractères spéciaux -- ---------------------------------------------------------- ReplaceChar=function(s) return s:gsub("à ", "à"):gsub("é", "é"):gsub("è", "è"):gsub("î", "î"):gsub("ô", "ô"):gsub("û", "û"):gsub("ù", "ù"):gsub("ê", "ê"):gsub("â","â"):gsub(" ' ", "'") end local debug = true; local token = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" local chat_id = "111111111111" local url = "https://api.telegram.org/bot"..token.."/sendMessage?chat_id="..chat_id.."&text=" local function log(str) if debug then fibaro:debug(str); end; end local function errorlog(str) fibaro:debug("<font color='red'>"..str.."</font>"); end local selfhttp = net.HTTPClient({timeout=2000}) local msg = "<empty>"; if fibaro:args() == nil then fibaro:debug("no args"); return else jMsg = fibaro:args() urldecodeTable(jMsg) if jMsg[1] == nil or jMsg[1] == "" then fibaro:debug("no msg"); return end msg = jMsg[1]; msg = ReplaceChar(msg) end url = url .. url_encode(msg); log(url); selfhttp:request(url, { options={ headers = selfhttp.controlHeaders, data = requestBody, method = 'GET', timeout = 5000 }, success = function(status) local result = json.decode(status.data); if result.ok == true then log("successful"); else errorlog("failed"); log(status.data); end end, error = function(error) errorlog("ERROR") log(error) end })
MAM78 Posté(e) le 5 décembre 2018 Signaler Posté(e) le 5 décembre 2018 (modifié) Il y a 1 heure, pepite a dit : C'est ca plutot non ? Les 2 mais pas en même temps. Peut-être avec 2 BOT différents, un entrant et un sortant ? Du coup pour les flux entrant qui agirait sur nos scènes/VD et donc plus de mot de passe de nos HC2 qui circule sur le Net via IFTTT ? (peut-être un peu plus Secure; non). Par contre j'ignore comment IFTTT communique avec Telegram ? (est-ce plus Secure que l'appel d'API via IFTTT sur nos HC2 ?) Modifié le 5 décembre 2018 par MAM78
971jmd Posté(e) le 5 décembre 2018 Auteur Signaler Posté(e) le 5 décembre 2018 (modifié) salut @pepite Nikel, j'avais essayé ça pourtant, mais ça n’a pas fonctionné ça fonctionne nikel Modifié le 5 décembre 2018 par 971jmd
971jmd Posté(e) le 5 décembre 2018 Auteur Signaler Posté(e) le 5 décembre 2018 @pepite Message à Telegram --> Execution scene sur la HC2 c'est bien ça
971jmd Posté(e) le 5 décembre 2018 Auteur Signaler Posté(e) le 5 décembre 2018 sur jeedom c'est possible https://www.maison-et-domotique.com/70896-piloter-jeedom-avec-telegram/
pepite Posté(e) le 5 décembre 2018 Signaler Posté(e) le 5 décembre 2018 Yes tant mieux. Donc l'idee serait de s'envoyer un message perso sur Telegram depuis Telegram ou autre appli sms et d'executer la scene HC2. OK. Un peu comme la scene Google Home --> IFTTT --> HC2 A mon avis Jeedom ne fait rien d'autre que d'utiliser l'API de Telegram. Un message du type : HC2 DODO ;-)
971jmd Posté(e) le 5 décembre 2018 Auteur Signaler Posté(e) le 5 décembre 2018 (modifié) oui un scénario comme : la lampe est allumé depuis 1h, voulez-vous l’éteindre? OUI / NON Modifié le 5 décembre 2018 par 971jmd
MAM78 Posté(e) le 5 décembre 2018 Signaler Posté(e) le 5 décembre 2018 (modifié) Et pourquoi pas Google Home --> IFTTT --> Telegram —> HC2 Certe ça rajoute une couche et de la complexité mais si l’interface IFTTT —> Telegram est plus sécurisée que celle entre IFTTT —> HC2. Pour rappel, nos HC2 ne supportent toujours pas HTTPS. Donc pas très secure. Il faudra faire des tests pour s’assurer que les temps de réponses restent corrects. Modifié le 5 décembre 2018 par MAM78
pepite Posté(e) le 5 décembre 2018 Signaler Posté(e) le 5 décembre 2018 @971jmd tu utilises le bot créé par @botfather mais avec ce dernier as tu reussi a recevoir les snaphsots des cameras comme avec @fibarobot ? @MAM78, Je comprends mais ca devient une usine à gaz. en créant un utilisateur unique qui n'a acces qu'a une scene de la HC2 c'est pas trop mal. On peut déja faire Google Home -> IFTTT --> HC2, pourquoi passer par Telegram ? Une fois que tu est sur la HC2, faudrait repartir sur Telegram pour les pushs interactifs, qui repartent vers la HC2 selon la reponse GH --> IFTTT --> HC2 --> Telegram avec question push interactif --> HC2 non. Jeedom le fait, donc c'est sur que c'est possible avec l'API. reste à la trouver ;-) @971jmd elle ressemble à quoi ta recette IFTTT qui te permet d'envoyer ton message DODO à Telegram ? Tu fais donc IFTTT --> DODO Telegram --> HC2 actions
971jmd Posté(e) le 5 décembre 2018 Auteur Signaler Posté(e) le 5 décembre 2018 pas encore tester, je teste
971jmd Posté(e) le 5 décembre 2018 Auteur Signaler Posté(e) le 5 décembre 2018 (modifié) mai comment procédé avec : fibaro:call(472, "sendPhotoToUser", "469"); je c'es pas si possible de récupéré l'image dans une variable local photo = fibaro:call(472, "sendPhotoToUser"); Modifié le 5 décembre 2018 par 971jmd
Messages recommandés