[TUTORIEL] Développer une box dans le core de Gladys

tutoriel

#21

non malheureusement je n’ai pas de connaissance en angulaire


#22

Inspire toi des autres codes d’autres boxs !

Voilà le controller Angular de la box camera par exemple =>


#23

@LepetitGeek, super tuto, mais pourrais tu apporter quelques précisions pour ceux qui débutent…

Mais tu ne précise pas à quel endroit du HTML il faut mettre cette ligne.
En tant que développeur, je sais qu’on ne peut pas le mettre n’importe où, mais pour les noobs, ça serait bien de préciser…

Idem quant tu écrit :

Il s’agit des variables ou du texte fixe qui sera traduit (ex: “Pièce” en Fr et “Room” en En) ?
Car plus haut tu indiques que pour utiliser les variables il faut faire référence à “vm” :

or vm n’apparaît pas dans “<%= __(‘box-nom_de_votre_variable’) %>”.


#24

Effectivement @Pti_Nico !
Je suis d’accord que c’est peut-être pas très claire pour les débutants, mais ce tuto s’adresse surtout aux développeurs (Ça il va vraiment falloir que je le précise)
Mais au cas où je ferais les corrections des que j’aurais un peu de temps !


#25

Je suis développeur, mais débutant en Angular :yum:


#26

Je me doutais de cette réponse ^^
Du coup j’ai apporté les corrections et rajouter un exemple pour le controller :slight_smile:


#27

Salut @MathieuA
super tuto qui me fut d’une grande aide pour retrouver mes petits.

J’ai une petite question qui me semble bête mais ca fait une heure et je sèche… y a-t-il un endroit dédié où l’on met la css relative à une box ? Est-ce qu’on créé un fichier css/less séparé et qu’on importe quelque part ou est-ce qu’on la met directement dans boxes.less ? D’ailleurs même ici je n’arrive pas à voir mon css…du coup c’est à coup de balise style pour le moment mais j’aime pas trop ca :slight_smile:

Merci pour ton temps :+1:


#28

Salut @pizza6 !

Content de t’avoir aidé !

Pour le css, c’est vrais que j’en parle pas dans le tuto mais bon le template utilisé comporte déjà pas de choses donc normalement tu devrait avoir ce qu’il te faut ! Après si tu veux vraiment faire un truc spécifique il faut que tu crée un fichier css du nom de ta box et que le met dans assets/styles.

Aucunement besoin de l’importer, Sails (le framwork sur lequel tourne Gladys) se charge de le minimifier et de l’importer !

Il faut pas toucher au fichiers less ! Ce sont les fichiers du template donc si un jour quelqu’un le met à jour (et donc ses fichiers less) tes modif sautent ! :slight_smile:

Edit: J’ai mis à jour le tuto du coup ^^


#29

Ok ca y est j’ai réussi à faire ce que je voulais. :sweat_smile:

un grand merci pour tes explications.
Par contre petite précision en fouillant et en galérant j’ai fini par mieux comprendre le pipeline de build de gladys et donc de Sails.

Sur mon poste, lorsque je fais ca, il me copie bien mon fichier dans le répertoire temporaire .tmp/public/styles
Par contre, mon fichier n’est pas du tout importé par la configuration de Gladys.
En effet, la CSS n’est pas rajouté dans le fichier layout.ejs.
Si je le rajoute à la main ca marche mieux…mais bien entendu je le perd dès que je rebuild.
Du coup, j’ai remarqué que ce fichier était regénéré lors de la phase sails-linker:devJsRelative qui est décrite dans le fichier tasks/config/sails-linker.js.
Dedans on remarque qu’il importe les fichiers défini dans

require('../pipeline').cssFilesToInject

Et du coup en ouvrant le fichier task/pipeline.js on voit qu’on définit la variable cssFilesToInject.

Et la surprise :frowning:…la liste des CSS importée est statique…on a désactivé l’import par défaut

  // all styles, disabled by default
  //'styles/**/*.css',

Du coup j’ai rajouté mon fichier css dedans mais pas sur que se soit la meilleure façon de faire, non ?

A la rigueur, ne peut-on pas créer un répertoire /styles/boxes et importer toutes les css du répertoire ?

you rocks :+1::clap:


#30

Effectivement ! Je vois pas trop pourquoi d’ailleurs ! Il semblerais que ça soit un truc par default de Sails mais j’ai pas trouvé pourquoi :thinking:

Si si c’est la bonne façon ! (du coup)

Non il faudrait tout simplement importer tout les css présent dans dans ce dossier car de toutes façon ils sont tous importés au final…

Je vais me noter ça dans un coin et quand j’aurais le temps je ferais un nettoyage ! D’autant plus qu’il y a des fichiers css créé un peu n’importe comment donc on pourrait faire un regroupement au passage !


#31

C’est moi qui ait désactivé l’import de tous les fichiers css par défaut! Pas envie de surcharger le fichier CSS buildé avec des tonnes de CSS pas souvent utile ^^ A chaque fois que tu créé un nouveau fichier CSS il faut l’ajouter à la liste, je préfère fonctionner manuellement comme ça pas de magie on sait ce qu’il y a et dans quel ordre ils sont ajoutés. On garde un fichier production clean comme ça :slight_smile:


#32

y a til une box toute faite à image de jeedom thermostat permettant de regle rapidement les radiateurs en mode confort hors gel etc?


#33

Hello @promachos

Actuellement non malheureusement :confused:


#34

@promachos j’en avais fais une pour le module Netatmo avant la maj des box. En soit le développement d’une box n’est pas compliqué dans Gladys.
Si tu as les moyens et le temps je pense que cela plairait à pas mal de monde :slight_smile:.


#35

T’as les sources sur githib que je regarde ?


#36

dans le post original tu trouveras le GitHub :


#37

Comment recuperes tu les températures issu des capteurs températures ? Et comment envoyer des commandes zwavepaf au contrôleur?


#38

Gestion fine du chauffage pour radiateur fil pilote (qubinos par ex) avec calendrier et confort au poilest "le principale poste de dépense " dans une maison ou appartement .
Certains fabricant comme Legrand avec smarther…gère même la géolocalisation en avance de phase