Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Clipboard per Javascript lesen/schreiben

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Clipboard per Javascript lesen/schreiben

    This topic has been deleted. Only users with topic management privileges can see it.
    • W
      WolfgangFB last edited by

      Hi

      Wie kann ich aus einem Javascript heraus die Zwischenablage lesen bzw. schreiben?

      Gruß Wolfgang

      OliverIO 1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO @WolfgangFB last edited by OliverIO

        @wolfgangfb

        https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard

        Nicht vom Namen Mozilla abschrecken lassen. Mozilla bietet die allgemeine Referenz zum javascript-standard auch über verschiedene Browser hinweg an.

        Bitte aufmerksam lesen, da gibt es Browser-Unterschiede im verhalten.
        ggfs. kann das auch durch eine bibliothek vereinheitlicht werden
        https://github.com/zenorocha/clipboard.js
        https://github.com/lgarron/clipboard-polyfill
        https://github.com/PressReader/jquery.clipboard

        Alle bei https://bower.io/ gefunden

        1 Reply Last reply Reply Quote 0
        • AlCalzone
          AlCalzone Developer last edited by

          Nur zur Sicherheit: Das funktioniert nur im Frontend, d.h. Visualisierungen etc.
          Aus dem Skript-Adapter heraus geht es prinzipbedingt nicht.

          OliverIO W 2 Replies Last reply Reply Quote 0
          • OliverIO
            OliverIO @AlCalzone last edited by

            @alcalzone
            ja korrekt. aus der ferne kann man nicht auf das clipboard zugreifen.
            da muss man schon ein wenig mehr code schreiben.
            ...und ob dann clipboard der richtige lösungsansatz wäre, ist auch zu hinterfragen.

            1 Reply Last reply Reply Quote 0
            • W
              WolfgangFB @AlCalzone last edited by

              @alcalzone said in Clipboard per Javascript lesen/schreiben:

              Nur zur Sicherheit: Das funktioniert nur im Frontend, d.h. Visualisierungen etc.
              Aus dem Skript-Adapter heraus geht es prinzipbedingt nicht.

              Ok, schade, aber bei näherem Nachdenken ist mir schon klar, dass das aus dem Skript Adapter gar nicht gehen kann. Woher sollte das Skript auch wissen, in wessen Clipboard es schreiben soll?
              Meine Idee war, aus einem Skript heraus einen Widget Code zu erzeugen, den ich dann per Clipboard direkt in meine Vis Umgebung importieren kann (Koordinaten punktgenau setzen etc., Datenpunkte automatisch aus EPHome Namen erzeugen). Jetzt gehe ich eben von hinten durch die Brust indem ich den Code des Widgets anstatt in das Clipboard in eine Datei schreibe die ich per Samba freigegeben habe. Auf dem PC habe ich mir ein Programm geschrieben, dass eben diese Datei überwacht und bei Änderung in das PC Clipboard schreibt. Damit kann ich mir jetzt einfach punktgenau platzierte Widgets erzeugen ohne an 1000 Punkten von Hand Koordinaten und Datenpunkte korrigieren zu müssen.

              OliverIO 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @WolfgangFB last edited by OliverIO

                @wolfgangfb

                das hört sich für mich wie eine falsche vorgehensweise an, aber ich habe den hintergrund noch nicht verstanden.

                also du willst widgets punktgenau platzieren
                das platzieren von widgets ist eigentlich ein einmaliger vorgang.
                alle änderungen sollten sich innerhalb eines widgets und dessen client/server-code abspielen.

                versuche mal zu beschreiben, welche daten du wie auf dem Bildschirm abgebildet haben möchtest und was sich da wie oft aktualisieren soll ohne an eine Lösung zur Umsetzung zu denken

                per binding kann man in gewisser maße auf die positionierung/größe/andere Parameter von widgets einfluss nehmen. aber versuch erst einmal das oben zu beschreiben.

                W 1 Reply Last reply Reply Quote 0
                • W
                  WolfgangFB @OliverIO last edited by

                  @oliverio
                  Na ja, für mich ist IoBroker irgendwie wie eine Modelleisenbahn, sprich nie fertig 🙂
                  Wenn ich z.B. einen neuen Sensor einbinde (z.B. einen Temperatursensor mit Thermostatregelung) dann besteht das Widget momentan bei mir aus einem hqwidgets Inner Temperature (Temperatur, Luftfeuchtigkeit und Wuinsschwert) plus 2 jqui ctrl Icon Increment (Wunschwert +/-) plus ein Basic String (letzte Aktualisierung der Tempertur)

                  Das sieht bei mir so aus:

                  temperatur.jpg

                  Diese Widgets möchte ich sowohl im Vis "Kueche" als auch im Vis "Temperatur" als auch im Vis "Kueche_hochformat" haben. Einstellen muss ich die Datenpunkte für Wunschtemeratur, IstTemperatur, Batteriestatus, IstLuftfeuchtigkeit, IncremetObjektPlus, IncrementObjektMinus, Aktualisierungszeit. PosX, PosY, BeschreibungLinksText, BeschreibungLinksLinkerAbstand, BeschreibungLinksRechterAbstand.
                  Wenn ich jetzt einen neuen Raum in meine Umgebung aufnehme, kann ich mir natürlich so ein Widget per Copy&Paste nehmen, alle Parameter anpassen und dann in die 3 Views reinkopieren. Dass dabei Fehler passieren und der Druck auch den Knopf "+" dann eben die Wunschtemperatur im Bad und nicht in der Küche erhöht hat mich eben zu der Lösung gebracht, ein Skript zu schreiben bei dem ich am Angang eingebe, um welchen Raum (daraus ergeben isch dann alle Datenpunkte weil ich alles mit Aliasen mache) und welches View (daraus ergibt sich die Position) es sich handelt und als Ergebnis erhalte ich den Code eines Widgets den ich in der Vis Umgebung mit "Widget importieren" direkt an der richtigen Position mit allen richtig gesetzten Datenpunkten einfügen kann. Wenn mir irgendwann der Abstand der +/- Knöpfe zum Rest nicht mehr gefällt oder ich die Farben ändern will oder das komplette Layout, muss ich das nur noch einmal im Skript anpassen und kann mir die 40 Temperaturwidgets für alle Views und alle Sensoren automatisch erzeugen lassen.

                  Wie würdest Du das machen?

                  OliverIO 1 Reply Last reply Reply Quote 0
                  • OliverIO
                    OliverIO @WolfgangFB last edited by

                    @wolfgangfb

                    puh, ok, du willst halbautomatisiert dir eine view erstellen lassen und in einem bestimmtes layout einfügen.
                    so ein automatisches anordnen verschiedener widgets in vis gibt es tatsächlich nicht.

                    die meisten fügen neue widgets ein oder machen copy/paste und passen dann manuell die werte an.

                    das jemand so ein widget-code generator selbst baut hab ich bisher noch nicht gehört, aber gut, wenn einem der aufwand nicht zu hoch ist.

                    Homoran W 2 Replies Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @OliverIO last edited by

                      @oliverio sagte in Clipboard per Javascript lesen/schreiben:

                      so ein automatisches anordnen verschiedener widgets in vis gibt es tatsächlich nicht.

                      man kann doch in der vis angeben auf welchen Views dieses Widget (Gruppe) erscheinen soll.
                      Dann allerdings immer an der gleichen Position

                      W 1 Reply Last reply Reply Quote 0
                      • W
                        WolfgangFB @OliverIO last edited by

                        @oliverio said in Clipboard per Javascript lesen/schreiben:

                        @wolfgangfb

                        puh, ok, du willst halbautomatisiert dir eine view erstellen lassen und in einem bestimmtes layout einfügen.
                        so ein automatisches anordnen verschiedener widgets in vis gibt es tatsächlich nicht.

                        die meisten fügen neue widgets ein oder machen copy/paste und passen dann manuell die werte an.

                        das jemand so ein widget-code generator selbst baut hab ich bisher noch nicht gehört, aber gut, wenn einem der aufwand nicht zu hoch ist.

                        Ich bin eben Programmierer und ich habe gemerkt, dass beim manuellen Anpassen immer wieder Fehler entstehen, die meiner Meinung nach schwer zu finden sind. Da bin ich mit ein paar Zeilen Code wirklich schneller dran und wenn man etwas parametrisiert, sind spätere Änderungen für alle Elemente wirklich ein Kinderspiel.
                        Und wenn ich dann ein neues schickes Wiget finde kann ich das einfah auf allen Views einfügen.

                        1 Reply Last reply Reply Quote 0
                        • W
                          WolfgangFB @Homoran last edited by

                          @homoran said in Clipboard per Javascript lesen/schreiben:

                          @oliverio sagte in Clipboard per Javascript lesen/schreiben:

                          so ein automatisches anordnen verschiedener widgets in vis gibt es tatsächlich nicht.

                          man kann doch in der vis angeben auf welchen Views dieses Widget (Gruppe) erscheinen soll.
                          Dann allerdings immer an der gleichen Position

                          Genau das ist eben das Problem, ich möchte Widgets auf mehren Views an verschiedenen Positionen haben (Hochformat fürs Mobiltelefon, Quer fürs Tablet) und eben in der Temperaturübersicht mehrere Instanzen eines Widgets an verschiedenen Positionen. Dann mal mit und mal ohne Batterieanzeige und eben die ganzen Datenpunkte. Da bin ich parametrisiert schneller und flexibler.

                          Homoran 1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @WolfgangFB last edited by

                            @wolfgangfb sagte in Clipboard per Javascript lesen/schreiben:

                            Da bin ich parametrisiert schneller und flexibler.

                            dann musst du "nur" die vis-views.json programmiert beschreiben, sozusagen als LaTEX für Vis

                            W 1 Reply Last reply Reply Quote 0
                            • W
                              WolfgangFB @Homoran last edited by

                              @homoran said in Clipboard per Javascript lesen/schreiben:

                              @wolfgangfb sagte in Clipboard per Javascript lesen/schreiben:

                              Da bin ich parametrisiert schneller und flexibler.

                              dann musst du "nur" die vis-views.json programmiert beschreiben, sozusagen als LaTEX für Vis

                              Ich bin tatsächlich mit TeX bzw. LaTeX groß geworden, vielleicht kommt daher meine Affinität zu Parametrisieren.

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              964
                              Online

                              31.7k
                              Users

                              79.7k
                              Topics

                              1.3m
                              Posts

                              4
                              13
                              331
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo