Ankündigung

Einklappen
Keine Ankündigung bisher.

Simulation plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • wvhn
    antwortet
    PR mit den Korrekturen ist jetzt im develop.

    Gruß
    Wolfram

    Einen Kommentar schreiben:


  • beckerth
    antwortet
    Danke für den Hinweis, ich habe es im smartVISU Verzeichnis geändert und durch die Autogenerierung tatsächlich wieder überschrieben🙄. Nach einer erneuten Änderung ohne Neustart kann ich bestätigen das es funktioniert - schaut gut aus.
    Außerdem sehe ich gerade das ich wohl schonmal im Admin Interface mit den Variablen rumgespielt hatte da schon ein paar Aktionen aufgenommen wurden... ;-)

    Bei mir schaut die Datei jetzt folgendermaßen aus (ich werde die Datei im Plugin Verzeichnis überschreiben da ich weiter an der Visu mittels Autogenerierung bastle):

    HTML-Code:
    * @license     GPL [http://www.gnu.de]
    * -----------------------------------------------------------------------------
    */
    /**
    * Simulation Plugin widget. Shows all the relevant info for a simulation.
    *
    * @param {id=} unique id for this widget (optional)
    * @param {text=Anwesenheitssimulation} header. Optional, default=Anwesenheitssimulation
    * @param {item(num)} the simulation status item
    * @param {item(num)} the simulation tank item
    * @param {item(num)} the simulation control item
    * @param {item(str)} the simulation message item
    */
    {% macro info(id, header, status, tank, control, message) %}
        {% import "basic.html" as basic %}
        {% if header is empty %} {% set text = "Anwesenheitssimulation" %} {% endif %}
        <div class="block" id="{{ uid(page, id) }}">
         <div class="set-2" data-role="collapsible-set" data-theme="c" data-content-theme="a" data-mini="true">
         <div data-role="collapsible" data-collapsed="false">
         <h3>{{header}}</h3>
         <table width=100%>
         <tr>
         <td>{{ basic.symbol('',status,'','lamp_sim.svg',['4','0','1','2','3'],'',['#0b0','#A4A4A4','#A4A4A4','#A4A4A4','#A4A4A4']) }}</td>
         <td>Aufgenommene Tage<br>{{ basic.print('', tank) }}</td>
         <td>{{ basic.symbol('',status,'','lamp_sim.svg',['0','4','1','2','3'],'',['#A4A4A4','#A4A4A4','#fa3','#f00','#BF00FF']) }}</td>
         <td rowspan=3 width="20%">{{ basic.tank('P_tank1', tank,0,15,1,'cylinder','#0C0') }}</td>
         </tr><tr>
         <td>{{ basic.stateswitch('', control, 'mini', '2', 'audio_play.svg', '', '') }}</td>
         <td>{{ basic.stateswitch('', control, 'mini', '1', 'audio_stop.svg', '', '') }}</td>
         <td>{{ basic.stateswitch('', control, 'mini', '3', 'audio_rec.svg', '', '') }}</td>
         <td></td>
         </tr><tr>
         <td colspan=3 width="80%">{{basic.print('',message, 'html') }}</td>
         <td></td>
         </tr>
         </table>
         </div>
          </div>
        </div>
    {% endmacro %}
    Vielen Dank für eure schnelle Hilfe!

    Viele Grüße
    Tommi
    Angehängte Dateien

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Ich mache einen PR, sobald die Bestätigung von Tommi da ist, dass das Widget so funktioniert.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Zum widget kann ich aktuell leider nix sagen, keine Ahnung ob und wie das jemals lief.

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Du musst zwischen shNG und smartVISU unterscheiden. Eine Änderung in smartVISU erfordert keinen Neustart von shNG. In diesem Fall war das sogar kontraproduktiv, weil Du die Autogenerierung der Visu-Seiten in shNG nutzt und shNG beim Neustart Deine Änderungen wieder mit der Original-Datei aus dem Plugins Verzeichnis überschreibt. Deshalb siehst du keine Änderung.

    Gruß
    Wolfram

    Einen Kommentar schreiben:


  • beckerth
    antwortet
    Hallo Jungs,

    danke für eure Unterstützung und an bmx für die Ergänzung der Einrückungen. Ich nutze SmarthomeNG Version 1.8.2 und habe Smartvisu auf 3.1 geupdatet. Diesen Fehler gab es allerdings auch schon mit Version 3.0.1.

    Die zu ändernde Datei ist: /var/www/html/smartvisu/dropins/widgets/simulation.html?

    HTML-Code:
    /**
    * -----------------------------------------------------------------------------
    * @package     smartVISU
    * @author      Onkel Andy
    * @copyright   2018 - 2020
    * @license     GPL [http://www.gnu.de]
    * -----------------------------------------------------------------------------
    */
    /**
    * Simulation Plugin widget. Shows all the relevant info for a simulation.
    *
    * @param {id=} unique id for this widget (optional)
    * @param {text=Anwesenheitssimulation} header. Optional, default=Anwesenheitssimulation
    * @param {item(num)} the simulation status item
    * @param {item(num)} the simulation tank item
    * @param {item(num)} the simulation control item
    * @param {item(str)} the simulation message item
    */
    {% macro info(id, header, status, tank, control, message) %}
        {% import "basic.html" as basic %}
        {% if header is empty %} {% set text = "Anwesenheitssimulation" %} {% endif %}
        <div class="block" id="{{ uid(page, id) }}">
         <div class="set-2" data-role="collapsible-set" data-theme="c" data-content-theme="a" data-mini="true">
         <div data-role="collapsible" data-collapsed="false">
         <h3>{{header}}</h3>
         <table width=100%>
         <tr>
         <td>{{ basic.symbol('',status,'','lamp_sim.svg',['4','0','1','2','3'],'',['#0b0','#A4A4A4','#A4A4A4','#A4A4A4','#A4A4A4']) }}</td>
         <td>Aufgenommene Tage<br>{{ basic.print('', tank) }}</td>
         <td>{{ basic.symbol('',status,'','lamp_sim.svg',['0','4','1','2','3'],'',['#A4A4A4','#A4A4A4','#fa3','#f00','#BF00FF']) }}</td>
         <td rowspan=3 width="20%">{{ basic.tank('P_tank1', tank,0,15,1,'cylinder','#0C0') }}</td>
         </tr><tr>
         <td>{{ basic.stateswitch('', control, 'mini', '2', 'audio_play.svg', '', '') }}</td>
         <td>{{ basic.stateswitch('', control, 'mini', '1', 'audio_stop.svg', '', '') }}</td>
         <td>{{ basic.stateswitch('', control, 'mini', '3', 'audio_rec.svg', '', '') }}</td>
         <td></td>
         </tr><tr>
         <td colspan=3 width="80%">{{basic.print('','{{message}}', 'html') }}</td>
         <td></td>
         </tr>
         </table>
         </div>
          </div>
        </div>
    {% endmacro %}
    Nach der Änderung und einem Neustart von ShNG zeigt sich überhaupt keine Änderung. Den Pagecache habe ich ohnehin ausgeschaltet. Auch nach manueller Leerung keine Änderung.

    Greift Smartvisu woanders hin??

    Code:
    2021-05-15 13:13:34 ERROR modules.websocket prepare_monitor: No item '{{status}}' found
    2021-05-15 13:13:34 ERROR modules.websocket prepare_monitor: No item '{{tank}}' found
    2021-05-15 13:13:34 ERROR modules.websocket prepare_monitor: No item '{{control}}' found
    2021-05-15 13:13:34 ERROR modules.websocket prepare_monitor: No item '{{message}}' found
    2021-05-15 13:13:36 WARNING modules.websocket Client 192.168.178.95:49334 want to update invalid item: {{control}}
    bmx sobald ich den Quellen-Modus verlasse gehen in meinem aktuellen Post die Einrückungen wieder größtenteils verloren? Oder liegt es am HTML?


    Viele Grüße
    Tommi
    Zuletzt geändert von beckerth; 15.05.2021, 12:42.

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Onkelandy ist das Widget simulation.Info so getestet worden? Die Weitergabe der item-Namen kommt mir unbekannt vor. Vielleicht hat das letzte Update der Twig Template Engine hier aber auch eine Änderung verursacht.

    Anstelle
    Code:
    {{ basic.symbol('','{{status}}','','lamp_sim.svg',['4','0','1','2','3'],'',['#0b0','#A4A4A4','#A4A4A4','#A4A4A4','#A4A4A4']) }}
    Müsste es IMHO
    Code:
     {{ basic.symbol('',status,'','lamp_sim.svg',['4','0','1','2','3'],'',['#0b0','#A4A4A4','#A4A4A4','#A4A4A4','#A4A4A4']) }}
    heißen.
    beckerth Du kannst das Widget ja mal testweise so umbauen (alle Vorkommen der 4 items entsprechend ersetzen).

    Gruß
    Wolfram
    Zuletzt geändert von wvhn; 15.05.2021, 08:47.

    Einen Kommentar schreiben:


  • wvhn
    antwortet
    Nach den Meldungen des Websockets fordert die Visu items mit den Namen '{{status}}', '{{control}}', '{{message}}' und '{{tank}}' an.

    Da stimmt etwas mit den item-Namen nicht.

    Gruß
    Wolfram

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Zum Thema Einrückungen lies mal dies hier. Man kann seinen eigenen Post IMHO eine gewisse Zeit lang ändern und somit korrigieren. So kann ich nur raten was das mal war...

    Es würde noch helfen wenn Du schreibst mit welchen Versionen von SmartHomeNG und SmartVISU Du unterwegs bist. Aktuell sieht das für mich so aus als ob Du nicht die aktuelle SHNG nutzt.
    Zuletzt geändert von bmx; 15.05.2021, 05:30.

    Einen Kommentar schreiben:


  • beckerth
    antwortet
    Stelle ich mich blöd an? Bekomme immer folgenden Fehler wenn ich etwas aufzeichnen möchte:

    Code:
    2021-05-15 01:18:30 WARNING lib.smarthome.main -------------------- SmartHomeNG initialization finished --------------------
    2021-05-15 01:18:45 ERROR modules.websocket prepare_monitor: No item '{{status}}' found
    2021-05-15 01:18:45 ERROR modules.websocket prepare_monitor: No item '{{tank}}' found
    2021-05-15 01:18:45 ERROR modules.websocket prepare_monitor: No item '{{control}}' found
    2021-05-15 01:18:45 ERROR modules.websocket prepare_monitor: No item '{{message}}' found
    2021-05-15 01:18:47 WARNING modules.websocket Client 192.168.178.95:50059 want to update invalid item: {{control}}
    plugin.yaml:
    Code:
    ...
    simulation:
        class_name: Simulation
        class_path: plugins.simulation
        data_file: /usr/local/smarthome/var/db/simulation.txt
    ...
    simu.yaml in items:
    Code:
    sim:
        sv_page: room
        name: Simulation
        sv_heading_center: "{{ simulation.info('', 'Anwesenheitssimulation', 'sim.status', 'sim.tank', 'sim.control', 'sim.message') }}"
        #struct: general
    
        status:
            type: num
            sim: state
            visu_acl: ro
    
        control:
            type: num
            sim: control
            visu_acl: rw
    
        message:
            type: str
            sim: message
            visu_acl: ro
    
        tank:
            type: num
            sim: tank
            visu_acl: ro
    Habe sim: track bei einigen Lampen (bool und num) hinterlegt. Das Widget wird geladen, zeigt aber nichts an.

    Edit: die Code Umgebung entfernt die Einrückungen???
    Angehängte Dateien
    Zuletzt geändert von bmx; 15.05.2021, 05:28.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Ich hab das Plugin insofern gerade aktualisiert, als dass es eine deutsche Doku gibt, die plugin.yaml aktualisiert wurde und der HTML Text als eigenes sv_widget zur Verfügung steht. Außerdem kann man nun den Itembaum mittelst "struct: general" einfach einbinden:

    Code:
    sim
        struct: general
    Werde das in Kürze in den Develop mergen, Testen herzlich willkommen.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Wohl übersehen sorry

    Einen Kommentar schreiben:


  • psilo
    antwortet
    Onkelandy habe ich gestern doch gleich gemacht?! Warum keine \n mehr kommen ist aber nicht klar.. aber nachdem es so auch geht, mir wurscht

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Noch ein Grund für ein baldiges Plugin Release Wenn klar ist, wo das Problem liegt/lag könntet ihr es noch hier eintragen..:
    https://github.com/smarthomeNG/smart...lante-Features

    Einen Kommentar schreiben:


  • schuma
    antwortet
    Danke für den schnellen Fix!

    Da eh nicht ganz soviel aufgezeichnet wurde, bringt mir das im Moment nichts.
    Er zeichnet aber auf. Habe ich gerade noch mal getestet. Die Items sehen ich im Webif.
    Das wird es gewesen sein.

    Ich teste das dann wenn ich wieder zuhause bin.

    Grüße, Marc
    Zuletzt geändert von schuma; 17.07.2019, 12:15.

    Einen Kommentar schreiben:

Lädt...
X