Aller au contenu

eric_le_belge

Membres confirmés
  • Compteur de contenus

    47
  • Inscription

  • Dernière visite

Tout ce qui a été posté par eric_le_belge

  1. Hello, est-ce qu'il n'y aurait pas un soucis avec la fonction jours(J) ? -- Traductions des jours function Jours(J) if J > 6 then J = 0 end local Nom_jour = {"Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"} return Nom_jour[J+1] end Il est appelé par ce type d'instruction Jours(tonumber(os.date("%w")+2). Aujourd'hui nous sommes samedi, soit J=6. Avec cette fonction, on aura pour aujourd'hui -> samedi, pour demain (J>6 alors J=0) dimanche et pour jour + 2 (J > 6 alors J=0) dimanche également. Ce ne serait pas plus logique avec ce code ci ? function Jours(J) if J > 7 then J = J - 7 end local Nom_jour = {"Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"} return Nom_jour[J] end J = 6 -> samedi J + 1 (soit 7) -> dimanche J + 2 (soit 8, alors on fait J-7) -> lundi
  2. 'Petit' déterrage de forum, est-ce que quelqu'un utilise ce système ? j'essaye de le mettre en place, le sonos-http-api fonctionne sous docker (sur synology), je peux travailler en ligne via browser, mais je galère à utiliser les commandes dans une scène j'avoue...
  3. Ben j'ai eu un doute en publiant la photo, de fait ce n'est pas un Gen6, ce qui explique pourquoi la mise à jour ne donnait rien. Il était inclus depuis bien longtemps, mais semblait HS quand je l'interrogeais via script. Du coup j'ai tenté un reset usine, et plus moyen de le configurer totalement. J'avoue ne pas être certain non plus de son utilité, j'hésite à le mettre au placard...
  4. C'est bien ce que j'ai fait, reset total, exclusion, je tourne en rond.. on dirait que quelque chose ne se 'termine pas' dans l'inclusion.
  5. Je me réponds, peut-être que cela aidera quelqu'un à l'avenir jsonTable.data[1].weather.description
  6. Bonjour les gens, je m'arrache le peu de cheveux qu'il me reste avec ce module Range Extender. Il ne semblait plus fonctionnel, du coup j'ai fait un reset usine. Depuis, ma HC2 m'indique systématiquement que le module n'est pas configuré. Si j'essaye de forcer la reconfiguration, après quelques secondes je reçois le message 'reconfiguration aborted', mais sans plus de détails. J'ai essayé de faire une mise à jour OTA via ma clé Gen5, le module est bien détecté mais pas moyen de faire un update (peut-être est-il déjà à la dernière version). quand j'interroge le réseau, le module semble bien fonctionnel comme on le voit sur l'image. J'ai tenté plusieurs reset usine. Le seul point qui me chiffonne c'est que la doc indique que la led change de couleur, hors chez moi elle reste totalement rouge (clignotante ou fixe, mais rouge). Ca m'ennuie ce device non configuré, la HC2 m'avertit régulièrement de ce problème. Quelqu'un a déjà eu le problème ??
  7. Bonjour à tous, je suis jeune padawan dans le json, et je patauge un peu. J'ai un script qui interroge openweather, cela fonctionne pas trop mal, je reçois (normalement) quelque chose comme ceci {"coord":{"lon":5.26,"lat":50.58},"weather":[{"id":801,"main":"Clouds","description":"peu nuageux","icon":"02d"}],"base":"stations","main":{"temp":7.45,"feels_like":0.1,"temp_min":6,"temp_max":9.44,"pressure":1022,"humidity":60},"visibility":10000,"wind":{"speed":7.7,"deg":260},"clouds":{"all":20},"dt":1582123375,"sys":{"type":1,"id":1249,"country":"BE","sunrise":1582094682,"sunset":1582131680},"timezone":3600,"id":2784639,"name":"Villers-le-Bouillet","cod":200} bon je n'ai pas reinventé la roue, c'est un script déjà existant que j'adapte, en gros il va chercher l'info et la sauve dans une VG weather_today. je peux faire un fibaro:debug sur les champs de "main", pas de problème. Je reçois la température, l'humidité... function VD_Update() -- Récupération des données et actualisation des labels fibaro:debug("Actualisation des labels") local today_datas = fibaro:getGlobal("weather_today") if today_datas~="{}" then fibaro:debug("Décodage des datas") jsonTable0 = json.decode(today_datas) fibaro:debug("Humidité: "..jsonTable0.main.humidity) fibaro:debug("Temp: "..jsonTable0.main.temp) else fibaro:debug("Variable vide, on relance la scène") end end Mais comment je peux obtenir les valeurs des autres tableaux ?? si je fais un fibaro:debug("toto: "..jsonTable0.weather.description) ben ça marche po... /opt/fibaro/scenes/60.lua:125:attemp to concatenate field 'main' (a nil value). ps: si quelqu'un peut me dire comment faire un copier/coller de la fenêtre debug, je le bénirais jusqu'à la fin de la vie de mon HC2.
  8. Mais groumpf ! Je suis reparti de ce schéma Sauf que moi c'est un FGS211. Donc j'ai connecté ma phase sur L et sur I, N sur le neutre repiqué de la lampe, et c'est Q qui repart vers la lampe. Le premier fil navette arrive dans S1, le deuxième dans S2. Bilan: 1 interrupteur fonctionne, et la domotique aussi. Mais celui qui est connecté sur S2 ne fonctionne jamais. J'ai essayé d'inverser les fils navette dans S1 et S2, du coup c'est l'autre interrupteur qui fonctionne (toujours celui qui est branché sur S1, jamais celui branché sur S2). J'y perds mon latin. Comme j'ai besoin d'alimenter le FGS en permanence j'ai bien du amener la phase, mais pourquoi je n'ai qu'un seul interrupteur qui fonctionne ?? Y'a un truc à paramétrer pour activer le S2 ????
  9. Salut en tous, En rangeant mon bureau je remets la main sur des tablettes Samsung Galaxy Tab 2, en android 4.1 ou 4.4. Autant dire plus vraiment utilisable. Du coup, j'imagine m'en servir comme enceinte connectée, mais je cale sur la méthode. Est-il possible depuis un smartphone d'envoyer le son vers une tablette, via bluetooth ou wifi ? Je ne vois pas trop comment et mes recherches ne donnent pas grand chose. Depuis un pc cela semble facile, mais depuis un smartphone ????
  10. Bonjour, je relance un peu le topic, j'essaie désespérément de domotiser la lampe de mon carport à l'aide d'un FGS212, mais je n'y arrive pas. J'ai beau lire un peu tout, je ne comprends pas comment je dois câbler. J'ai un va et vient 'de base', comme ceci Je place mon FGS entre le 2ème interrupteur et la lampe. J'ai repiqué le neutre, ça c'est ok. Mais après, je suis proche de la déprime, j'ai beau câbler dans tous les sens, j'ai réussi à activer mon FGS, mais l'interrupteur était non fonctionnel. J'ai repiqué Neutre sur N Sortie de l'interrupteur sur S1 Fil vers lampe sur Q Pour la phase je récupère un des deux fils navettes sur un wago, et j'alimente l'interrupteur, le IN et le L. Je pense que mon erreur vient de la phase, je dois repiquer AVANT les interrupteurs ? Je ne vois pas très bien comment faire en fait... Comme je l'écris, j'ai beau relire 10x le forum, je vois l'explication mais la pièce ne tombe pas
  11. Information reçue à l'instant, la HC3 sera présentée dans quelques semaines: https://fibarobenelux.com/en/press-release/fibaro-premieres-home-center-3-ces-2020/ https://www.fibaro.com/en/products/home-center-3/
  12. bonne idée !
  13. En globalité ou uniquement sur la fonction ? Globalité c'est un Vd météo pas bien compliqué. La fonction switch est simple: tu construits un tableau avec tes éléments, et une ligne défaut. tu appelles la fonction switch avec l'élement cherché et le tableau Si l'élément est trouvé, switch retourne la valeur de la 2ème colonne du tableau, sinon switch retourne la valeur de défaut. ici je traduis la météo en anglais vers le français.
  14. Je me réponds à moi-même... Voila le bon code local listemeteo = { clear = function ( ) retour = "Dégagé" end, cloudy = function ( ) retour = "Nuageux" end, ["Mostly Cloudy"] = function ( ) retour = "Très Nuageux" end, rain = function ( ) retour = "Pluie" end, default = function ( ) retour = Conditions end, }; Prochaine étape, remplacer le module météo par un appel externe, mais là faut que je potasse json...
  15. Bonjour à tous, Pour mon premier vrai script LUA j'ai créé un mini-module météo, et pour cela j'ai adapté des pépites trouvées sur le net pour créer l'équivalent d'une fonction CASE. Le principe est simple, on passe 2 arguments, d'abord ce que l'on cherche, puis le tableau dans lequel on fait la recherche. Peu importe ce qui se trouve dans ce tableau, cela peut être une phrase (ici c'est le cas), une instruction à exécuter... Cela fonctionne bien, mais je coince sur un truc. Lors de la création de mon tableau liste_meteo, tout fonctionne tant que je n'ai qu'un mot, un chiffre ou un caractère. Mais si j'essaie de mettre une phrase, ça bug. Ici le but est de traduire la météo anglaise en français, mais je bloque sur Mostly Cloudy. J'ai essayé avec guillemets, avec le symbole [], mais rien à faire. Question bis: fibaro:debug est utile lors du debug, mais est-il possible d'afficher un message lors de l'exécution dans la petite fenêtre de 4 lignes en haut de l'interface web ? --[[ %% autostart %% properties %% events %% globals --]] local function switch(choix,listedechoix) -- accepte aussi bien les nombres que les caractères ou chaine en argument choix -- choix = élement recherché -- listedechoix: liste d'arguments construits selon l'exemple ci-dessous -- retour: chaine retour définie dans le tableau if listedechoix[choix] then listedechoix[choix]() else listedechoix["default"]() end return retour end local Jour = fibaro:getValue(1,"sunriseHour") local Nuit = fibaro:getValue(1,"sunsetHour") local Temperature = api.get('/weather')['Temperature'] local Conditions = api.get('/weather')['WeatherCondition'] local Humidite = api.get('/weather')['Humidity'] local Vent = api.get('/weather')['Wind'] local temin = "" local meteo = "" local min_temp = tonumber(fibaro:getGlobalValue('minimum_temp')) local listemeteo = { clear = function ( ) retour = "Dégagé" end, cloudy = function ( ) retour = "Nuageux" end, --Mostly cloudy = function ( ) retour = "Très Nuageux" end, rain = function ( ) retour = "Pluie" end, default = function ( ) retour = Conditions end, }; -- ------------------------------------------------------------------------------- -- Code principal -- ------------------------------------------------------------------------------- fibaro:debug("Mise à jour de la météo") if (min_temp > tonumber(Temperature)) then fibaro:setGlobal('minimum_temp',tonumber(Temperature)); min_temp = tonumber(Temperature); end -- mise en forme des résultats temin = string.format("%2.1f",min_temp); Temperature = string.format("%2.1f",Temperature); Vent = string.format("%2.0f", Vent); -- Traduction de la météo meteo = switch(Conditions,listemeteo) -- mise à jour des affichages fibaro:call(fibaro:getSelfId(),"setProperty","ui.Leve.value",Jour); fibaro:call(fibaro:getSelfId(),"setProperty","ui.Couche.value",Nuit); fibaro:call(fibaro:getSelfId(),"setProperty","ui.Temp.value","Min "..temin.." / Actuelle "..Temperature.."°c"); fibaro:call(fibaro:getSelfId(),"setProperty","ui.Conditions.value",meteo); fibaro:call(fibaro:getSelfId(),"setProperty","ui.Humidite.value",Humidite .. "%"); fibaro:call(fibaro:getSelfId(),"setProperty","ui.Vent.value",Vent .. "km/h"); -- mise en sommeil pour 30 minutes fibaro:sleep(18000000); En espérant avoir été clair... Eric
  16. Bonjour à tous, Après bien des mois à vous lire je me décide enfin à vous rejoindre. Je découvre le LUA et j'aurais plein (mais alors plein) de questions pour vous ! A bientôt... Eric
×
×
  • Créer...