Affichage d'une pop up

Bonjour,

Oui : browser-mod…

3 « J'aime »

Merci, ça semble être ce que je veux, même plus !

Mais problème lorsque je teste :

Ton bouton est associé à une entité ? C’est elle qui sera ta cible dans browser-mod

Je comprends pas, dans l’exemple il n’y a pas d’entité :

Et si je veux appeler ce service depuis un script, c’est possible ?

Merci

un exemple :

type: custom:button-card
aspect_ratio: 2/1
custom_fields:
  titre:
    card:
      type: custom:button-card
      name: 'Exemple :'
      styles:
        card:
          - background-color: rgba(255,255,255,1.0)
          - border: none
        name:
          - color: blue
          - font-size: 24px
          - font-weight: bold
          - align-self: start
          - justify-self: start
          - padding-left: 5%
  bouton_nom:
    card:
      type: custom:button-card
      name: Un bouton
      styles:
        name:
          - font-size: 16px
          - font-weight: bold
          - color: rgba(0,0,0,1)
          - justify-self: null
        card:
          - background-color: rgba(255,250,250,0.0)
          - border: none
  commande_bouton:
    card:
      type: custom:button-card
      entity: sensor.processor_use
      show_name: false
      styles:
        card:
          - background-color: rgba(242,242,242,1.0)
          - aspect-ratio: 1/1
styles:
  custom_fields:
    titre:
      - width: 100%
      - position: absolute
      - left: 0%
      - top: 0%
    bouton_nom:
      - width: 30%
      - position: absolute
      - left: 35%
      - top: 25%
    commande_bouton:
      - width: 20%
      - position: absolute
      - left: 40%
      - top: 40%

La carte popup qui s’ouvre sur le clic :

type: custom:popup-card
title: Le popup
dismissable: true
card:
  type: markdown
  content: Ceci remplace le popup more info
entity: sensor.processor_use

image

Je n’y arrive as !

En fait ce que je veux faire c’est afficher une popu si dans un script une certaine condition est vraie (ou fausse). Est ce possible avec browser mod ?

Merci

Bonjour,

Je pense que c’est possible en passant par le service browser_mod.popup

Il fraudra definir les browser_id pour chacun des appareils où le popup doit s’afficher (mobile, tablette 1, tablette 2, …)
et dans le script inclure le call service si la condition est vraie. ( e.x Si mouvement detecté, afficher caméra entrée sur tablette séjour)

Cordialement,

Abel

2 « J'aime »

Merci

Sous HA il y a des choses ‹ compliquées › qui sont simples à réaliser et d’autres qui sont ‹ simples › et compliquées à réaliser !

Là ça me semble compliqué pour afficher une simple popup.

Bonjour,
ta des explications et exemples dans ce post Utilisation de Browser_mod

1 « J'aime »

Ta demande initiale est ci-dessus. La réponse, c’est browser-mod mais effectivement son utilisation n’est pas forcément simple, il faut creuser une peu.

Si tu ne veux que du simple, les développeurs ont prévu un tableau de bord constitué de multiples cartes qui suffisent probablement à la majorité des utilisateurs du moins au départ.

Tu précises ensuite que tu veux afficher une popup si dans un script une condition est vraie. Là encore si tu veux du simple tu te serts d’une carte conditionnelle.

Si tu veux quelque chose d’un peu plus sur mesure, il y a browser-mod mais cet addon a été développé à la base pour remplacer les cartes « more info » qui apparaissent quand tu cliques sur la représentation graphique d’une entité ou d’un appareil. Le plus simple donc, dans ton cas, est d’associer ta condition dans ton script à une entrée booléenne et ta browser-mod popup à cette même entrée. Comme te l’a dit Abel, il est possible d’aller plus loin avec browser-mod mais il faudra de toute façon retravailler ton script.

A partir de ta demande floue, on ne peut pas te faire ton code aux petits oignons que tu n’auras plus qu’à copier-coller pour qu’il fonctionne pour ton besoin particulier. Il va falloir à minima que tu t’impliques un peu et que tu lises la documentation avant de dire « c’est trop compliqué, j’y arrive pas »

Je partage l’avis de @yalec et j’ajouterai que formulé comme ça :

Ça me semble déjà bien complexe:
Pourquoi un script dans l’histoire ? Un binary ou un input_binary font probablement aussi bien l’affaire.
C’est juste une histoire de vocabulaire ?
Ensuite quel est l’impact du vrai / faux ? Ça change le contenu de la pop ou bien ça change le fait de pouvoir l’afficher ?
Peut-être même que la carte info est suffisante avec les bonnes entités.

Au final c’est un souci courant au début : la solution technique imaginée n’est pas forcément la plus efficace. C’est encore plus vrai en venant de jeedom où on prends ses (mauvaises) habitudes
Et plus on detaille la demande, plus facile sera de trouver la meilleure solution

Bonjour,

Merci pour vos réponses.

Mon besoin général est d’afficher une popup, affichage dépendant d’une condition dans un script, j’ai ce besoin dans plusieurs cas.

Affichage du style de celui que fait HA dans certains cas :

Je précise que c’est à partir d’un smartphone ou tablette que j’utilise ma domotique, cela peut avoir son importance, développement sur PC bien entendu.

Un cas d’application est le suivant, j’ai un module de gestion de l’arrosage de ma terrasse, ce module permet de programmer des arrosages ‹ automatiques › récurrents, et de lancer des arrosages immédiats via un bouton.

Mon besoin dans ce cas est de prévenir l’utilisateur s’il appuie sur le bouton d’arrosage immédiat alors qu’un arrosage est déjà en cours. Je le fais déjà via un message sonore TTS, extrêmement simple à réaliser, et voudrais savoir s’il est également possible d’afficher une popup, en natif je pensais, comme on peut le faire avec tous les systèmes de développement que je connais. Si je comprends bien, la réponse est non sauf à utiliser browser-mod popup qui va bien au delà de mon besoin, et qui n’est pas d’utilisation immédiate. L’alternative en natif étant d’afficher un texte dans une entité card mais qui n’aura pas l’effet popup. Ai je bien compris ?

Merci

Côté ergonomie, c’est un choix individuel. Je préfère avoir un bouton qui donne déjà l’état pour éviter un clic.
Par contre, faire une carte qui s’affiche ou pas, je pense que c’est pas possible.
Mais tu peux arriver à quelque chose de similaire : avec une bête carte conditionnelle.
Elle se basera sur un sensor existant qui contient l’info arrosage en cours / off
Et elle affichage en fonction les informations que tu juges utile en fonction.
Une fois la carte terminée, tu la collera dans la partie popup

C’est déjà le cas mais cela n’empêche par l’utilisateur de cliquer et dans ce cas je trouve qu’il est naturel d’afficher un message d’information. Je pense que dans la mesure ou un bouton est cliquable, il doit déclencher une action, ou un message doit y être associé, à moins que l’on puisse griser un bouton ?

Cela veut dire réserver un emplacement pour les messages d’erreur ou autre ?

Je viens de tester les cartes conditionnelles, c’est intéressant mais cela n’est pas comparable à une popup qui s’afficherait suite à un clic sur un bouton. Dans le cas d’une carte conditionnelle, c’est à l’utilisateur de lire le message qui s’y trouve, dans l’autre cas il est informé dès qu’il clique sur le bouton.

HA ne sait pas facilement faire du pop up, c’est à savoir et il faut gérer les choses autrement, ce n’est pas irrémédiable.

Merci

Si l’utilisateur clique, moi, je ne poserai la question de pourquoi ? L’info n’est pas claire ou pas assez visible ? Et je revois la présentation.
Encore plus sur mobile avec un affichage réduit.

Je n’ai pas testé ton cas mais il n’y a aucune raison que ça ne fonctionne pas. J’ai une bonne 30aine de popup dans mes dashboard et j’ai jamais eu de cas impossible.
Tu as testé quoi et comment ?

Humm, gérer autrement, c’est possible, mais la fonction popup c’est pas si compliqué

Bonjour Pulpy,

Tu peux, avec button-card, avoir un custom_field dont la taille passe de 0 pixel x 0 pixel à « x » pixels x « x » pixels en fonction de l’état d’une entité (« on » ou « off ») par exemple.

Je m’en sers par exemple pour afficher un bouton lorsque le cable de charge de ma voiture est branché et ainsi accéder aux options de charge (avec un popup :grin:).

Cable non branché :

Cable branché :

Le code du « bouton » :

      bouton_charge:
        card:
          type: custom:button-card
          entity: binary_sensor.lsjxxxxxxxxxxxxxxxxx_charger_connected
          show_name: false
          show_icon: false
          state:
            - value: 'off'
              styles:
                card:
                  - height: 0px
                  - width: 0px
                  - border: none
            - value: 'on'
              styles:
                card:
                  - height: 48px
                  - width: 48px
                  - border: 2px rgba(211,211,211,1.0) outset
          styles:
            card:
              - background-color: rgba(211,211,211,1.0)
              - background-image: url(/local/images/icones/MG_charge.png)
              - background-size: cover
              - border-radius: 50%
              - box-shadow: 2px 2px 4px 0px rgba(32,32,32,0.5)
1 « J'aime »

Intéressant. Par contre ça masque juste le bouton, c’est pas la condition du tap-action, je me trompe ?

Non, le bouton est « masqué » quand le cable n’est pas branché (binary_sensor) et quand il est masqué, il ne peut être cliqué (0 x 0 pixels) mais c’est transposable au cas de @steche en ajoutant un binary_sensor mis à « on » quand un arrosage est en cours et à « off » quand ce n’est pas le cas.

OK, donc deux boutons qui s’affichent alternativement, dont 1 avec une popup et pas l’autre ?

En fait, sur cette carte dédiée à mon VE, j’ai des infos de base (niveau de charge actuel, kilométrage total, autonomie estimée restante) ce qui correspond à l’affichage de base de l’application chinoise fournie. J’ai ajouté sur la carte un bouton (roues dentées) qui m’affiche par popup les actions possibles (déverrouillage des portes, du coffre, mise en route de la climatisation ou du chauffage - ça c’est pratique en cette saison), un bouton (bouton Informations) affichant par popup les diverses informations de la voiture (état du verrouillage, pression des pneus, etc.). C’est deux boutons sont affichés en permanence. Le troisième bouton qui ne s’affiche que si le cable est branché permet d’afficher (encore par popup) les diverses actions concernant la charge du véhicule (dont lancer la charge, la programmer, définir l’ampérage maxi., la cible en pourcentage, etc).