[BETA] App Android

Alors au début j’ai tenté en swift, mais ayant très peu de temps et commençant de zéro en dev iOS, c’était trop de travail de m’y mettre vraiment :slight_smile: (même si honnêtement le peu que j’ai fais m’a plu et j’ai rapidement réussi à faire un premier poc d’app)

Après je suis parti vers ionic 2, là clairement c’est mon domaine, et en 2h j’avais une app quasi complète qui fonctionne ^^ Le gros avantage que j’ai trouvé, c’est que je peux réutiliser les mêmes composants que dans le dashboard ( genre la box météo bien propre je peux la réutiliser dans l’app elle passe super ^^)

Je posterais quelques screenshots dans pas longtemps, après là je suis un peu sous l’eau à côté de Gladys niveau emploi du temps :stuck_out_tongue:

1 « J'aime »

salut,
question pour plus tard, comment faire quand on a 2 maison?
en effet, l’app est orienté vers une maison, ce qui est bien car ça évite d’avoir trop de device en même temps.
mais comment faire si on veux gérer une deuxième maison?

autre question, comment faire pour les devices non-binary? je n’arrive pas à changer d’etat

Salut !
Effectivement pour le moment l’app ne peux pas gérer plusieurs maison et à part changer les paramètres il n’y a pas grand solution…
Mais ça viendra ^^

Comment ça ? Tu as une seekBar normalement donc il te suffit de la faire glisser jusqu’à la valeur voulu !

ben justement non, par exemple pour le module freebox, j’ai juste 0.0 channel et 0.0 binary et je ne peux pas les changer.
je suis en beta 1.4.5

Tu peux m’envoyer un screen de l’app et un aussi de tes devicetypes ?

C’est bien ce que je pensais ^^

En fait tes devicetypes apparaissent dans l’app en tant que sensor car ils sont mal typés dans Gladys !
Le problème vient du module et non de l’app (n’y même de Gladys) !

En gros tu as des devicetypes binaires qui sont typés un peu n’importe comment… (sans être méchant)
Pour l’exemple le bouton ok ne peux avoir que deux états, soit 0 soit 1, donc il aurait du être typé en tant que binary or il est typé en tant que ok (ce qui est totalement absurde :joy:) c’est pour ça que l’app te les affiche de cette manière. Elle ne comprend tout simplement pas ce qu’est le type ok.

Pour régler le problème tu peux aller en base et modifier manuellement mais le mieux serait de corriger directement dans le module ^^

je comprend bien. mais quoi mettre si pas binary?
et si on met binary sur tous ca fou la merde aussi car tu ne sais pas lequel est quoi? en effet, actuellement l’identifier n’est pas utilisé pour l’affichage

Bah il faudrait implémenter une fonction type poussoir dans Gladys pour remédier au problème, on aurait ainsi quatre type de devicetypes à savoir binary, multilevel, switch (si on peux dire) et sensor. Je vais regarder ça de ce pas :thinking:

Pour l’histoire du repérage sur le dashboard une MAJ est en approche (je travail dessus en ce moment même) et il y aura le tag de chaque devicetype affiché à la place de la pièce dans lequel il se trouve !
Ce qui devrait être un peu plus utile pour les repérer ^^
Mais pour le moment à part un peu de patience je ne peux rien te conseiller d’autre :confused:

pas de soucis, c’était surtout histoire de remonter les trucs :wink:
en effet il faudrait un “toggle” car certains éléments sont juste des actions ponctuelle.
un truc aussi qui serait cool c’est un genre de menu déroulant. par exemple pour mon module roomba, ce serait cool de choisir le mode dans le quel on le met. mais là c’est plus chaud à implementer.
le multilevel est géré comment(que mettre pour le gerer?)

Pas de soucis tu as bien fait !

Je suis en tain d’y réfléchir du coup ^^
Avec @C4rlit0 on a plus au moins terminé notre projet donc je fait la chasse aux feature qu’il faudrait implementer au passage, le temps que @pierre-gilles vienne valider tous ça ^^
Et effectivement le coup du menu déroulant pourrait être sympa pour certains cas d’usage :thinking:
J’te propose d’ouvrir une issue sur le GitHub du projet histoire qu’on ne l’oubli pas :sweat_smile:

Il te suffit de mettre « multilevel » dans le champ type ^^

1 « J'aime »

tien, là je viens d’essayer et ça va merder de mettre en binary car la fonction gladys.deviceState.createByIdentifier ne peux pas différentier les différents devicetype binary.

Ouh la j’ai pas tout compris :sweat_smile:

La fonction deviceState intègre l’id du devicetype auquel appartient la state de toute façon… Donc pourquoi il ne pourrait pas les différencier ? Et surtout que vient faire l’identifier dans une histoire de type ?

Il faut que tu soit plus précis ^^

lol,
actuellement, quand on reçois un changement d’état pour un device, on fait return gladys.deviceState.createByIdentifier() mais dedans, il n’y a pas l’id du devicetype donc si 2 devicetype on le même type, il fait comment pour mettre à jour?

Alors déjà l’identifier n’a rien à voir avec le type ^^

Et cette fonction ne prend pas en compte le type du devicetype car elle s’en fiche :sweat_smile:
Et si tu regarde de plus près, tu verra qu’elle parcours la DB à la recherche du devicetype qui porte l’identifier que tu lui as passé en paramètre et dés qu’elle le trouve elle récupère son ID pour faire sa sauvegarde tranquillement !

Mais attention à ne pas confondre ID et Identifier ! Ce sont deux chose différentes !
Et le type n’a rien à voir la dedans non plus ! ^^

ben non, regarde:

il faut bien l’identifier du device ainsi que le service(normal) mais aussi le type de devicetype donc si il y a plusieurs type identique dans le même device ça va merder

Mais non :joy:

Déjà c’est une requête de type unique donc tu ne peux avoir qu’un seul objet en retour !
Ensuite effectivement je n’avais pas vu que le type était utilisé mais la requête prend en compte TROIS paramètres donc elle parcourir la DB à la recherche d’un devicetype qui porte le même identifier, le même type (du coup) et le même service que ce que tu lui donnée !
Donc il y a peu de chance que tu tombe sur le mauvais devicetype.

Après c’est sur que si tu met le même type, le même servie, et le même identifier à plusieurs devicetype elle ne te retournera que le premier qu’elle a trouvé (donc pas forcement celui que tu veux) mais dans la mesure ou l’identifier de chaque devicetype doit être UNIQUE il ne devrait pas y avoir de problème ^^

Oui je suis d’ac que c’est un unique. Par contre l’identifiant c’est celui du device pas du devicetype

Le service tu veux dire ?