Projet d'interface http pour eedomus

Utilitaires développés par les utilisateurs

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 30 Mai 2021 19:07

Si ce n’est pas le cache pour l’allumer /éteint et que tu as bien la dernière version, comme je n’ai jamais eu le bug, je ne sais pas où chercher.
Une solution serait peut-être que j’ai accès à ton interface depuis mon pc pour voir si j’ai le problème. Peut-être que ça me permettrait de comprendre pourquoi…


Envoyé de mon iPhone en utilisant Tapatalk
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 01 Juin 2021 20:01

je n'ai pas le problème non plus que ce soit sur PC ou tablette Android
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar ThierryStrad » 02 Juin 2021 21:01

Bon, encore une fois, résolu en passant de http à https... Je ne comprends pas.

Ma vieille tablette Samsung Android 4.4 n'affiche pas les widget. Un copain (qui n'est pas sous Z-Wave) a le même pb avec une tablette ancienne : Impossible d'afficher certains widgets.
Thierry
ThierryStrad
 
Messages : 281
Inscription : 22 Déc 2018

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 10 Juin 2021 08:08

Bonjour,
Une nouvelle béta de MyDomus : http://sb.domo.free.fr/mydomusbuild/mydomus1.01b8.zip

J'ai mis du temps car j'étais plutôt occupé ces dernières semaines. J'ai ajouté la possibilité d'avoir des paramètres généraux stockés sur le serveur et donc comme nouveauté a testé, il y a :
- depuis la page admin.php, possibilité de personnaliser les noms de chaque profil.
- Depuis l'onglet "Config. générale" dans MyDomus, il y a une partie "Paramètres du profil" avec pour l'instant un seul paramètre "Hauteur menu" qui permet de définir, pour le profil utilisé, la hauteur d'affichage des pièces dans le menu du tableau de bord lorsqu'il y a une image de fond affichée pour la pièce (elle est longue cette phrase...). Par défaut c'est 100 (pour 100px).

S'il n'y a pas de bug, je ferai une version 1.1 avec cette béta...
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 11 Sep 2021 07:01

comme toi occupé ailleurs, j'ai mis quelques temps pour charger et tester cette dernière beta (au passage merci pour ces évolutions)

- testé OK le changement de nom des profils (super pratique quand tu n'y a pas touché depuis quelques temps, on se rappelle plus lequel doit être mis avec les noms c'est super)

- remarque :
quand on est dans la liste des pièces et que l'on veut ajouter une pièce, actuellement on doit faire "mettre à jour les pièces" ==> ok pour ça
mais (y toujours un mais :D ) ça recharge tout y compris les customs qu'on a déjà mis en place, icônes, ordre index , ..... ==> donc on perd toute la partie customisation (qui peut être un peu lourde)

comment peut-on ajouter une pièce (qui a été créée dans eedomus , bien entendu) sans tout recharger sur les pièces existantes ?

si pas prévu, dans ce cas je suggère de mettre un coche sur chaque pièce dans la page de liste des pièces pour dire : à recharger oui/non et ne pas toucher à celles qui sont cochée non lors de la récupération des données dans l'action mettre à jour - par défaut la coche est à OUI
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 14 Sep 2021 08:13

@serge81 bonjour

je ne sais pas pourquoi mais depuis quelques jours j'ai systématiquement des retours vides (pas de données depuis eedomus) quand j'utilise mydomus avec mon android , pas de problème avec le PC
comme si les requêtes API eedomus n'arrivaient pas ou étaient mises à la poublelle.

je suis en réseau local , j'ai regardé le login/mdp c'est le bon j'ai la dernière version beta, mon cache a été vidé, eedomus fonctionne correctement par ailleurs (y compris avec mydomus avec un navigateur chrome sur mon PC w10)

j'ai rien touché d'autre sur mon hébergement NAS de mydomus que d'avoir mis la dernière beta

tu vois quelquechose ?
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 14 Sep 2021 17:59

Bonjour,
Pour la liste des pièces, ça ne devrait pas s’effacer. J’ai probablement créé un bug lorsque j’ai lié la liste des pièces à chaque profil.
Il faut que je regarde quand j’ai le temps.

Pour android pas d’idée. Je n’ai rien sur android pour tester.


Envoyé de mon iPad en utilisant Tapatalk
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 17 Sep 2021 07:49

Y a t il un moyen pour regarder les appels api eedomus depuis mydomus et voir pourquoi il n'y a pas de données affichées quand je suis sur Android ?
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 17 Sep 2021 11:11

jluc2808 a écrit:Y a t il un moyen pour regarder les appels api eedomus depuis mydomus et voir pourquoi il n'y a pas de données affichées quand je suis sur Android ?

Malheureusement je ne crois pas que l’on puisse voir ce qui se passe depuis l’eedomus. C’est plutôt depuis le navigateur. Il faudrait voir s’il y a une console sous Android pour le suivre.


Envoyé de mon iPhone en utilisant Tapatalk
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 17 Sep 2021 18:38

je viens de tester sur l'iphone et j'ai la même chose , pas de données dans les différentes pages , là je ne sais pas ou chercher, ça doit surement venir de mon NAS qui laisse passer ce qui vient du PC et ne laisse pas passer ce qui vient de l'android ou de l'phone

je pense qu'il y a surement une histoire de userid/mdp entre tout ça mais je vois pas ou ?
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 17 Sep 2021 19:59

Est-ce que ce n’est pas un problème d’accès par l’adresse locale pour ton PC et par le web pour tes téléphones ?


Envoyé de mon iPhone en utilisant Tapatalk
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 18 Sep 2021 00:11

non , j'ai tenté avec les adresses locales et les adresses distantes (DDNS no-ip) c'est pareil
si c'était ça je n'afficherais pas la page Mydomus et comme c'est directement mydomus qui fait les requêtes, depuis le même serveur (mon NAS) qui est en local , je ne vois pas pourquoi d'un côté ça marche et pas de l'autre , dans ce cas.


cependant j'ai progressé dans le diagnostic :
- j'ai modifié app.js pour ajouter un message popup avec dedans username et password
ligne 33429 : Ext.Msg.alert(locale.getSt().misc.error, 'logUserIn: '+ username + ' Passwd: ' + password);
de ce fait je contrôle bien que les données saisies sont les bonnes

sur PC et Android et c'est le cas

sur PC la récupération des données est correcte, sur android ça fait comme si le userId n'était pas le bon (alors que c'est le bon affiché et dans config.php)

je confirme ça en mettant protect=false (qui dans ce cas ne contrôle pas le password, mais juste le username)

et j'ai le même comportement c'est à dire que si je tape un username faux sur PC , alors les pages se charges mais sans les données eedomus
si je tape un username juste sur PC les pages se chargent avec les données eedomus

si je tape un username juste ou faux sur android alors les pages se charges mais pas les données

ça te parle ?

au passage, si username et password (avec protect=true) sont faux , il serait plus judicieux d'afficher un message d'erreur et rester sur la page config sans dérouler toutes les autres pages.
(mais c'est à voir après)
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 18 Sep 2021 06:46

Le fait que MyDomus ne dise absolument rien et semble se charger normalement lorsque le passe est faux est volontaire. C’est une manière de ralentir très fortement une attaque d’un bot qui chercherait à rentrer.
Mais c’est vrai qu’en cas de problème c’est difficile de debugger.

Je me posais la question de l’adresse en local car si le site est en cache il se charge mais n’atteint pas le serveur ce qui ne se voit pas forcément.

Je n’ai pas trop d’idée du coup.


Envoyé de mon iPhone en utilisant Tapatalk
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 18 Sep 2021 07:56

ça y est j'ai trouvé :ugeek: - au bout de 3 jours et pas mal de manip :evil:
le fautif dans l'histoire c'est /protect/config/devices.json et devices1.json surement corrompus
pour en arriver à cette conclusion :

- j'ai repris le seul ou j'avais des données devices2.json (profil PC)
- j'en ai fait une copie, renomé devices.json et devices1.json en devices.old.json et device1.old.json
- renommé la copie de devices2.json en devices.json et devices1.json

et là, tada ....., tout se charge correctement

je ne sais pas quand et comment ça s'est mis en vrac, mais j'ai gardé les anciens si ça t'intéresse. :D
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 20 Sep 2021 08:22

@serge81,
maintenant que j'ai résolu mon souci de chargement , je reviens sur mes commentaires concernant
1 - la partie pièces

- lorsque je fais une demande de mise à jour des pièces ==> tous les index (de positionnement numérique dans la liste dashboard) sont supprimés
- les nouvelles pièces créées ne sont pas rapatriées

2 - je n'arrive plus à positionner dans les vues en avant plan/arrière plan des widgets par rapport aux modules
dans mon widget j'ai mis index vues: 90 et index: 90
dans mon module standard j'ai : index vues: 1 et index: 1
je devrais avoir la vue adhoc, la représentation du module (thermostat) apparaitre dessus le widget (widget avec icone), ce qui n'est plus le cas.
- quand je veux positionner dans "positionner dans les vues", avec les index tels que décrit, mon widget est au dessus (devrait être derrière)
2.1- si je le sélectionne pour le déplacer, alors les affichages modules reprennent le devant
- après sauvegarde, l'affichage de la vue est toujours avec le widget devant
2.2 - si maintenant dans "positionnement dans les vues", je clic sur le widget , j'ai celui-ci qui passe derrière, mais dès que veut déplacer un module, ce dernier repasse derrière, après sauvegarde il est toujours devant dans la vue.
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 22 Sep 2021 18:02

Pour le fichiers json, je n’y avait pas pensé.
Ils ne sont peut-être pas corrompus mais s’il y avait dedans un device qui n’est plus dans l’eedomus, ça peut être la raison : s’il y a une demande avec un device que l’eedomus ne connaît pas, elle ne renvoie plus rien. Il faut alors enlever ce device.

Je regarde le problème des pièces dès que j’ai le temps.
Il faudra voir ensuite pour le problème du widget…


Envoyé de mon iPhone en utilisant Tapatalk
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 30 Sep 2021 07:08

c'est exactement ça, c'est un device dans device1.json qui met la pagaille et donne en code retour error pour la requête sync
pas simple à débugger mais voici la méthode pour qui cela arriverait:
- il faut lancer la config avec le profil qui "déconne" sur le PC dans firefox ou chrome et ouvrir les outils de développement des navigateurs via F12
- aller dans l'onglet réseau/network
- repérer la transaction synchro et copier la requête dans le presse papier
elle a cette tête
http://IP_du_serveur_mydomus/eedomus/pr ... delay=1000

là il faut trouver quel est le N° de module qui met la pagaille dans la liste
- j'ai opté pour un découpage par 10 modules à la fois pour voir quel le groupe de 10 qui renvoi la mauvaise valeur et ensuite on lance la requête 1 par 1 pour trouver le fautif

une fois trouvé par exemple : 2459999
- on s'assure que la requête complète sans ce N°de module, ne comporte plus d'erreur, sinon on recommence pour trouver les autres fautifs

ensuite on édite devicex.json dans un éditeur (moi j'ai pris notepad++)
- on cherche le N° 2459999 et on supprime tout ce qui est depuis: {periph_id:2459999, ........}{id=.....}
jusqu'au prochain ,{periph_id=xxxx
ne pas oublier les {id=.....} à supprimer
- sauvegarde et recharger

là ça fonctionne
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 11 Oct 2021 07:44

@serge81,

cet histoire de pièce m'embêtait alors j'ai été voir comment tu construis la liste, reprends moi si je dis une betise:
- tu prends la liste des prériphs et tu vas chercher dans chacun d'eux les pièces , puis tu stockes dans rooms.json avec quelques attributs.

ce qui veut dire que si une pièce n'est jamais utilisée comme pièce principale (donc la première dans la liste des pièces attribuée à un périphérique) alors elle ne sera jamais incluse dans la liste des pièces que tu construis pour MyDomus. (ai-je bon ?)

ceci expliquerais le pourquoi j'ai des pièces que je ne vois jamais dans la liste MyDomus (exemple: solaire, qui est toujours associée en dernier aux périphériques photovoltaique)

2 solutions
- 1 (solution d'usage) : modifier les pièces dans eedomus pour avoir les pièces à créer en 1er pour au moins 1 équipement ==> ajouter dans la doc cette recommandation
- 2 (solution programme) : ajouter 1 bouton + dans la page pièce pour ajouter une pièce à la main (ce qui ne devrait pas perturber puisque tu n'utilises cette liste que pour la construction locale MyDomus)


maintenant pour la problématique de départ (cad que les index sont écrasés)
lorsque tu sauvegardes la liste des pièces, tu vas chercher la liste construite par le mécanisme précédemment exposé, que tu utilises comme input et qui écrases la liste précédemment stockée.
En faisant ça les attributs de cette ancienne liste sont aussi écrasés.

Comme tu ne reprends pas la liste et les attributs déjà construit pour les inclure dans cette nouvelle liste, tout est effacé. Au passage si une pièce disparait dans eedomus alors elle n'existe plus dans rooms.json et les affectations à cette pièce dans MyDomus vont pointer sur rien.

suggestions: au moment du save renommer le fichier roomsprofil.json en roomsprofil.save.json et regarder si un room_id est présent en récupérer les attributs (sauf name) pour les inclure dans le nouveau roomprofil.json.
Ajouter un popup pour demander au moment du save si on veut écraser l'ancienne liste (réinitialisation complète) ou si on veut mettre à jour (ajout des deltas, hormis les noms)
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

Re: Projet d'interface http pour eedomus

Messagepar serge81 » 12 Oct 2021 19:19

Bonsoir,
Je n’ai pas eu le temps de m’occuper du bug.
Effectivement, pour la liste des pièces, ne sont pris en compte que les pièces qui ont au moins un appareil affecté en temps que pièces principale.

Pour la mise à jour de la liste, en principe je fais un peu ce que tu dis: je fais une copie de la base en mémoire pour la mettre à jour avec les nouvelles pièces en conservant les attributs.
Effectivement, si une pièce n’y est plus, elle est effacée avec ses attributs.
Mais j’ai probablement créé un bug qu’il faut que je cherche.


Envoyé de mon iPhone en utilisant Tapatalk
serge81
 
Messages : 272
Inscription : 04 Juin 2018

Re: Projet d'interface http pour eedomus

Messagepar jluc2808 » 19 Oct 2021 07:04

suggestion/amélioration:

lorsqu'on est sur un équipement standard, l'état (action) de ce dernier est positionné et est en surligné gris dans la liste des actions possibles, on ne peut pas relancer cette même action, il faut artificiellement en faire une autre pour dégriser et pouvoir actionner.

Ceci est génant quand l'équipement a bougé par ailleurs (volet en position fermé si on a appuyé sur la télécommande descente et la dernière action dans eedomus était montée), dans ce cas on ne peut pas activer montée puisque grisé.

Peux-tu laisser la fonction active même si grisée.

merci
jluc2808
 
Messages : 485
Inscription : 30 Jan 2021

PrécédentSuivant

Retour vers Outils tiers

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité

cron