Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Tester für WireGuard Adapter gesucht

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Tester für WireGuard Adapter gesucht

Geplant Angeheftet Gesperrt Verschoben Tester
118 Beiträge 12 Kommentatoren 16.0k Aufrufe 17 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • GrizzelbeeG Grizzelbee

    @david-g sagte in Tester für WireGuard Adapter gesucht:

    ich habe eine Frage zur Konfiguration.
    Wenn ich unter PUBLIC-KEY-ÜBERSETZUNGEN etwas hinzufüge bleibt der Adapter gelb.

    Hallo David,

    also ... die Sache ist nicht ganz trivial ...
    Um den Adapter zum Laufen zu bringen, brauchst Du nur die Basis-Konfig. Der Rest ist optional und nur für Komfortfunktionen interessant. Aber dröseln wir das mal auf:
    Wenn die Basis Konfig okay ist (und danach sieht es lt. Log bei dir aus) wird der Adapter frühestens nachdem er den ersten Poll-Intervall geschafft hat (default 2 Minuten) grün - vorher bleibt der gelb. Der wird aber auch nur dann grün, wenn er überhaupt mindestens ein aktives WireGuard Interface findet. Ohne das bleibt er auch gelb. Also gibt es grundsätzlich schon mal zwei gewollte Situationen in denen der Adapter gelb sein darf:

    1. Noch kein Pollintervall abgeschlossen
    2. Kein aktives WireGuard interface gefunden.

    Fall 1 scheint bei Dir kein Ding zu sein - ich sehe mehrere Poll-Versuche.

    • Was ist mit Fall 2?
    • Was passiert, wenn Du dich mit dem Monitoring-User interaktiv anmeldest und das Kommando sudo wg show all dump absetzt?
    • Hast Du die sudoers Datei wie in der readme beschrieben angepasst?

    Ich kenne allerdings auch einen User, der den Adapter tatsächlich nicht ans Laufen bekommen hat. Da bekam der Adapter von dem LXC-Container in dem WireGuard läuft keine Daten zurück geliefert. Das hat wohl etwas mit Linux-pseudo-terminals zu tun. Das Thema haben wir leider nicht geknackt. Bei anderen Usern mit LXC-Containern läuft er aber durchaus. Das ist also kein generelles LXC Thema.

    Public-Key-Übersetzungen:

    Die dienen nur dazu einen verständlichen Namen an die Peers zu bekommen - weil die public Keys etwas unhandlich und schwer zu merken sind:
    7385c99e-efd7-40b7-a856-b3acfb75a24f-grafik.png

    Ohne die Übersetzung siehst Du halt nur die public Keys - das ist alles. Mehr passiert nicht. Die Funktion als solche wird nicht beeinträchtigt.

    Wireguard Konfig Files (eins pro WG-Interface)

    Die wiederum werden nur gebraucht, wenn man den Restore all suspended peers Button nutzen möchte - man also mehrere Peers suspendiert hat und alle gleichzeitig wieder aktivieren will.

    David G.D Online
    David G.D Online
    David G.
    schrieb am zuletzt editiert von David G.
    #74

    @grizzelbee

    Danke für die ausführliche Antwort.

    Gehe jetzt mal alles genau durch.

    Wenn ich im Adapter nur das einstelle:
    Screenshot_20221102_100512.jpg
    läuft alles und der Adapter wird grün.

    Wenn ich die config files ausfülle bleibt er gelb.
    Screenshot_20221102-100359_Chrome~2.jpg

    Wenn ich mit den Namen übersetzen lassen möchte kopiere ich mir den öffentlichen key aus dem Datenpunkt des clients.
    Screenshot_20221102_100937.jpg
    Sobald ich diesen eingebe bleibt der Adapter gelb.

    root@pi:/etc/wireguard# dir
    configs  keys  wg0.conf
    

    (bin nur root um die Dateien zu sehen).

    Das kommt, wenn ich den dump in der Konsole Abfrage:

     pi@pi:~ $ sudo wg show all dump
    /etc/sudoers:28:4: syntax error
    <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
       ^
    /etc/sudoers:29:10: syntax error
    <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
             ^
    wg0     xxxxxxxxxx       51820   off
    wg0     xxxxxxxxxx       84.171.74.123:36311     10.189.255.2/32    1667380952      7527016 106836416       off
    wg0     xxxxxxxx       87.177.22.167:47148     10.189.255.3/32    1667330049      1013028 7267524 off
    pi@pi:~ $
    

    Das ist meine sudoers:

    #
    # This file MUST be edited with the 'visudo' command as root.
      GNU nano 5.4              /etc/sudoers.tmp                       #
    # Please consider adding local content in /etc/sudoers.d/ instead ># directly modifying this file.
    #
    # See the man page for details on how to write a sudoers file.
    #
    Defaults        env_reset
    Defaults        mail_badpass
    Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/s>
    # Host alias specification
    
    # User alias specification
    
    # Cmnd alias specification
    
    # User privilege specification
    root    ALL=(ALL:ALL) ALL
    
    # Allow members of group sudo to execute any command
    %sudo   ALL=(ALL:ALL) ALL
    
    # See sudoers(5) for more information on "@include" directives:
    
    @includedir /etc/sudoers.d
    <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
    <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
    
    
    ^G Help      ^O Write Out ^W Where Is  ^K Cut       ^T Execute
    ^X Exit      ^R Read File ^\ Replace   ^U Paste     ^J Justify
    

    Edit:
    Seitdem ich die sudoers angepasst habe, bleibt der Adapter immer gelb.

    EDIT 2:
    Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

    Zeigt eure Lovelace-Visualisierung klick
    (Auch ideal um sich Anregungen zu holen)

    Meine Tabellen für eure Visualisierung klick

    GrizzelbeeG 1 Antwort Letzte Antwort
    0
    • David G.D David G.

      @grizzelbee

      Danke für die ausführliche Antwort.

      Gehe jetzt mal alles genau durch.

      Wenn ich im Adapter nur das einstelle:
      Screenshot_20221102_100512.jpg
      läuft alles und der Adapter wird grün.

      Wenn ich die config files ausfülle bleibt er gelb.
      Screenshot_20221102-100359_Chrome~2.jpg

      Wenn ich mit den Namen übersetzen lassen möchte kopiere ich mir den öffentlichen key aus dem Datenpunkt des clients.
      Screenshot_20221102_100937.jpg
      Sobald ich diesen eingebe bleibt der Adapter gelb.

      root@pi:/etc/wireguard# dir
      configs  keys  wg0.conf
      

      (bin nur root um die Dateien zu sehen).

      Das kommt, wenn ich den dump in der Konsole Abfrage:

       pi@pi:~ $ sudo wg show all dump
      /etc/sudoers:28:4: syntax error
      <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
         ^
      /etc/sudoers:29:10: syntax error
      <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
               ^
      wg0     xxxxxxxxxx       51820   off
      wg0     xxxxxxxxxx       84.171.74.123:36311     10.189.255.2/32    1667380952      7527016 106836416       off
      wg0     xxxxxxxx       87.177.22.167:47148     10.189.255.3/32    1667330049      1013028 7267524 off
      pi@pi:~ $
      

      Das ist meine sudoers:

      #
      # This file MUST be edited with the 'visudo' command as root.
        GNU nano 5.4              /etc/sudoers.tmp                       #
      # Please consider adding local content in /etc/sudoers.d/ instead ># directly modifying this file.
      #
      # See the man page for details on how to write a sudoers file.
      #
      Defaults        env_reset
      Defaults        mail_badpass
      Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/s>
      # Host alias specification
      
      # User alias specification
      
      # Cmnd alias specification
      
      # User privilege specification
      root    ALL=(ALL:ALL) ALL
      
      # Allow members of group sudo to execute any command
      %sudo   ALL=(ALL:ALL) ALL
      
      # See sudoers(5) for more information on "@include" directives:
      
      @includedir /etc/sudoers.d
      <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
      <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
      
      
      ^G Help      ^O Write Out ^W Where Is  ^K Cut       ^T Execute
      ^X Exit      ^R Read File ^\ Replace   ^U Paste     ^J Justify
      

      Edit:
      Seitdem ich die sudoers angepasst habe, bleibt der Adapter immer gelb.

      EDIT 2:
      Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

      GrizzelbeeG Offline
      GrizzelbeeG Offline
      Grizzelbee
      Developer
      schrieb am zuletzt editiert von Grizzelbee
      #75

      @david-g

      Okay, wir kommen der Sache näher.
      Dein erstes (und vielleicht einziges) Problem ist die sudoers Datei (aber greifen wir den Dingen nicht vor):
      c8c957fa-b121-4ae7-a193-e70fba6ea709-grafik.png

      Zeile 26 und 27:
      Der Benutzername darf nicht in <>. Da kommt nur der "nackte" Name hin. So wie root in Zeile 18.

      Also:

      pi       ALL=NOPASSWD:/usr/bin/wg show all dump
      iobroker ALL=NOPASSWD:/usr/bin/wg show all dump
      

      Das erlaubt den Usern pi und iobroker das Kommando abzusetzen ohne ein Passwort eingeben zu müssen.
      Wenn Du einen der User in der Konfig des Adapters nutzt ist das okay so; ansonsten müsste da der für das Monitoring genutzte User rein.

      Hier beschwert sich Linux auch über die falschen Zeichen in der sudoers Datei:

       pi@pi:~ $ sudo wg show all dump
      
      /etc/sudoers:28:4: syntax error
      
      <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
      
         ^
      
      /etc/sudoers:29:10: syntax error
      
      <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
      

      EDIT 2:
      Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

      Und? Läuft es jetzt? Oder was hat sich geändert (oder eben auch nicht)?

      David G.D 1 Antwort Letzte Antwort
      0
      • GrizzelbeeG Grizzelbee

        @david-g

        Okay, wir kommen der Sache näher.
        Dein erstes (und vielleicht einziges) Problem ist die sudoers Datei (aber greifen wir den Dingen nicht vor):
        c8c957fa-b121-4ae7-a193-e70fba6ea709-grafik.png

        Zeile 26 und 27:
        Der Benutzername darf nicht in <>. Da kommt nur der "nackte" Name hin. So wie root in Zeile 18.

        Also:

        pi       ALL=NOPASSWD:/usr/bin/wg show all dump
        iobroker ALL=NOPASSWD:/usr/bin/wg show all dump
        

        Das erlaubt den Usern pi und iobroker das Kommando abzusetzen ohne ein Passwort eingeben zu müssen.
        Wenn Du einen der User in der Konfig des Adapters nutzt ist das okay so; ansonsten müsste da der für das Monitoring genutzte User rein.

        Hier beschwert sich Linux auch über die falschen Zeichen in der sudoers Datei:

         pi@pi:~ $ sudo wg show all dump
        
        /etc/sudoers:28:4: syntax error
        
        <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
        
           ^
        
        /etc/sudoers:29:10: syntax error
        
        <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
        

        EDIT 2:
        Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

        Und? Läuft es jetzt? Oder was hat sich geändert (oder eben auch nicht)?

        David G.D Online
        David G.D Online
        David G.
        schrieb am zuletzt editiert von David G.
        #76

        @grizzelbee

        Hallo,

        habe die Zeilen in der sudoers nochmal komplett gelöscht und das System neugestartet.

        Im Adapter habe ich nur die erste Seite ausgefüllt wie bisher.

        Aber der Adapter bleibt nochoch gelb.

        Scheint sich aber zu verbinden.

        wireguard.0
        2022-11-02 11:25:58.104	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
        
        wireguard.0
        2022-11-02 11:25:58.103	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
        
        wireguard.0
        2022-11-02 11:24:58.109	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
        
        wireguard.0
        2022-11-02 11:24:58.104	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
        
        wireguard.0
        2022-11-02 11:23:58.103	info	Started 60 seconds monitoring interval for host [iobroker]
        
        wireguard.0
        2022-11-02 11:23:58.095	info	There is 1 wireguard host to monitor.
        

        Edit
        Hab im Adapter jetzt das sudo deaktiviert. Jetzt ist er grün.
        Komisch, hatte ich vorher auch an, ohne sudoers.

        Jetzt schalte ich nochmal nach und nach alles zu.

        Zeigt eure Lovelace-Visualisierung klick
        (Auch ideal um sich Anregungen zu holen)

        Meine Tabellen für eure Visualisierung klick

        GrizzelbeeG 1 Antwort Letzte Antwort
        0
        • David G.D David G.

          @grizzelbee

          Hallo,

          habe die Zeilen in der sudoers nochmal komplett gelöscht und das System neugestartet.

          Im Adapter habe ich nur die erste Seite ausgefüllt wie bisher.

          Aber der Adapter bleibt nochoch gelb.

          Scheint sich aber zu verbinden.

          wireguard.0
          2022-11-02 11:25:58.104	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
          
          wireguard.0
          2022-11-02 11:25:58.103	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
          
          wireguard.0
          2022-11-02 11:24:58.109	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
          
          wireguard.0
          2022-11-02 11:24:58.104	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
          
          wireguard.0
          2022-11-02 11:23:58.103	info	Started 60 seconds monitoring interval for host [iobroker]
          
          wireguard.0
          2022-11-02 11:23:58.095	info	There is 1 wireguard host to monitor.
          

          Edit
          Hab im Adapter jetzt das sudo deaktiviert. Jetzt ist er grün.
          Komisch, hatte ich vorher auch an, ohne sudoers.

          Jetzt schalte ich nochmal nach und nach alles zu.

          GrizzelbeeG Offline
          GrizzelbeeG Offline
          Grizzelbee
          Developer
          schrieb am zuletzt editiert von
          #77

          @david-g sagte in Tester für WireGuard Adapter gesucht:

          Komisch, hatte ich vorher auch an, ohne sudoers.

          Hmmm. :thinking_face: Kann eigentlich nicht.
          Die Nutzung von sudo erfordert entsprechende Einträge in der sudoers Datei.
          Will sagen: Wenn dein Monitoring User (ohne root Rechte!!) fischkopp heißt, dann brauchst du auch eine sudoers Zeile:

          fischkopp ALL=NOPASSWD:/usr/bin/wg show all dump
          

          Wenn dein Monitoring user eh root Rechte hat, brauchst Du kein sudo. Bei dem ganzen Spiel geht es ja nur darum, dass der Adapter kein passwort senden kann, wenn es abgefragt wird; deshalb der Trick über sudoers und NOPASSWD.

          David G.D 1 Antwort Letzte Antwort
          0
          • GrizzelbeeG Grizzelbee

            @david-g sagte in Tester für WireGuard Adapter gesucht:

            Komisch, hatte ich vorher auch an, ohne sudoers.

            Hmmm. :thinking_face: Kann eigentlich nicht.
            Die Nutzung von sudo erfordert entsprechende Einträge in der sudoers Datei.
            Will sagen: Wenn dein Monitoring User (ohne root Rechte!!) fischkopp heißt, dann brauchst du auch eine sudoers Zeile:

            fischkopp ALL=NOPASSWD:/usr/bin/wg show all dump
            

            Wenn dein Monitoring user eh root Rechte hat, brauchst Du kein sudo. Bei dem ganzen Spiel geht es ja nur darum, dass der Adapter kein passwort senden kann, wenn es abgefragt wird; deshalb der Trick über sudoers und NOPASSWD.

            David G.D Online
            David G.D Online
            David G.
            schrieb am zuletzt editiert von
            #78

            @grizzelbee

            Irgendwie stimmt bei mir was nicht.

            Wollte nochmal ganz von vorne anfangen.
            Hab sogar den Adapter komplett gelöscht und neu eingerichtet.

            Jetzt macht er garnichts mehr.
            Vermutlich, weil er den Nutuernamen immer irgendwie überschreibt.
            Müsste eigentlich pi sein.

            Screenshot_20221102_133207.jpg

            Zeigt eure Lovelace-Visualisierung klick
            (Auch ideal um sich Anregungen zu holen)

            Meine Tabellen für eure Visualisierung klick

            GrizzelbeeG 1 Antwort Letzte Antwort
            0
            • David G.D David G.

              @grizzelbee

              Irgendwie stimmt bei mir was nicht.

              Wollte nochmal ganz von vorne anfangen.
              Hab sogar den Adapter komplett gelöscht und neu eingerichtet.

              Jetzt macht er garnichts mehr.
              Vermutlich, weil er den Nutuernamen immer irgendwie überschreibt.
              Müsste eigentlich pi sein.

              Screenshot_20221102_133207.jpg

              GrizzelbeeG Offline
              GrizzelbeeG Offline
              Grizzelbee
              Developer
              schrieb am zuletzt editiert von Grizzelbee
              #79

              @david-g

              Irgendwie stimmt bei mir was nicht.

              Ich stimme dir zu. Da ist irgendetwas quer. Und mir schwant auch schon was ...
              Wenn ich das richtig sehe bist Du noch auf der v1.3.1. Die hat den Benutzernamen und das Passwort manuell verschlüsselt. Deshalb hast Du auch den Eindruck, dass der Benutzername immer wieder überschrieben wird.

              In Kombination mit einer kaputten Admin-Version (>=6.1.9 & <6.2.5) hat es da Probleme gegeben.

              • Bitte installiere mal eine aktuelle Admin, falls noch nicht geschehen und
              • die Version 1.4.0 des wireguard adapters (pi@pi: /opt/iobroker> npm install iobroker.wireguard@1.4.0). Die neue Adapter version hat das neue Admin Interface und verschlüsselt den Benutzernamen nicht mehr.

              Dann kommen wir vielleicht einen Schritt weiter.

              David G.D 1 Antwort Letzte Antwort
              0
              • GrizzelbeeG Grizzelbee

                @david-g

                Irgendwie stimmt bei mir was nicht.

                Ich stimme dir zu. Da ist irgendetwas quer. Und mir schwant auch schon was ...
                Wenn ich das richtig sehe bist Du noch auf der v1.3.1. Die hat den Benutzernamen und das Passwort manuell verschlüsselt. Deshalb hast Du auch den Eindruck, dass der Benutzername immer wieder überschrieben wird.

                In Kombination mit einer kaputten Admin-Version (>=6.1.9 & <6.2.5) hat es da Probleme gegeben.

                • Bitte installiere mal eine aktuelle Admin, falls noch nicht geschehen und
                • die Version 1.4.0 des wireguard adapters (pi@pi: /opt/iobroker> npm install iobroker.wireguard@1.4.0). Die neue Adapter version hat das neue Admin Interface und verschlüsselt den Benutzernamen nicht mehr.

                Dann kommen wir vielleicht einen Schritt weiter.

                David G.D Online
                David G.D Online
                David G.
                schrieb am zuletzt editiert von
                #80

                @grizzelbee

                Hab jetzt die 1.4 drauf.
                Alles klappt.
                Adapter ist grün und die Namen werden erstellt.
                Allerdings wollte er das sudo haben......

                Ob die Config aus dem dritten Reiter richtig geladen wird kann ich leider nicht testen.

                Zeigt eure Lovelace-Visualisierung klick
                (Auch ideal um sich Anregungen zu holen)

                Meine Tabellen für eure Visualisierung klick

                1 Antwort Letzte Antwort
                0
                • David G.D Online
                  David G.D Online
                  David G.
                  schrieb am zuletzt editiert von David G.
                  #81

                  Ich weiß die Frage ist so halb Offtopic, frage aber trotzdem mal.

                  Gibt bestimmt eine Logig wie es gemacht wird, wenn man vom Thema Netzwerk Ahnung hat.....

                  Hab grad angefangen mir eine kleine Tabelle für meine Visualisierung zu erstellen.

                  Screenshot_20221102_222027.jpg

                  Rx und Tx hab ich mal mit gesendet und empfangen übersetzt.

                  Gibt man in so einem Fall den Wert aus Sicht des Servers oder des Clienten an?
                  Im Moment steigt der Wert "gesendet", wenn ich vom Handy aus runterlade.
                  Also wird der Wert aus Sicht des Servers angegeben.

                  EDIT:

                  Hab die Tabelle jetzt fertig. Falls jmd Interesse hat:

                  Screenshot_20221103_213618.jpg

                  Über den Pfeil kann man sich anschauen, von wo die letzte/aktuelle IP kommt die sich verbunden hat. Wobei man das ja im Idealfall immer selber steht 😉

                  Die Infos zur IP werden von http://ipwho.is/ abgerufen.

                  Screenshot_20221103_213631.jpg

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="zyM/JPT)}]T^gGWB:F@z">id</variable>
                     <variable id="P]hs1T;bQP8mPlO[gI,G">city</variable>
                     <variable id="smqD@1Uy]?O9IkTgYsh[">tabelle</variable>
                     <variable id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</variable>
                     <variable id=",{9I3n95un{O]_ilfGaC">i</variable>
                     <variable id="i{;#5g`AfcVP:!fhdgPw">peer</variable>
                     <variable id="}fTQ5LIFFh:KJ}if-0Ze">result</variable>
                     <variable id="S.FRC##Hw2?0w)V+rL^2">transferRx</variable>
                     <variable id="C/F_Y=6$Ds5n/qprHq[c">transferTx</variable>
                     <variable id="jufz1u/JWS-Er-e+JLb!">endpoint</variable>
                     <variable id="M~I$/Vj!yhhC]AKAyyFk">ip</variable>
                     <variable id="v;-p[gTSM`],SG{[,SDl">abfrage_url</variable>
                     <variable id=")j[GnvK_2~2}$q!/M+t;">land</variable>
                     <variable id="2i7_N153+$/8+,0NNcKm">region</variable>
                     <variable id="54Xg:T_Q`!#x/w*E!=#_">provider</variable>
                     <variable id="W}.4#@,T@E.%qHYX!?5W">country_picture</variable>
                   </variables>
                   <block type="request" id=")N5rhid8GiQC*JpzD7(3" disabled="true" x="63" y="-1637">
                     <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                     <field name="WITH_STATEMENT">TRUE</field>
                     <field name="LOG"></field>
                     <value name="URL">
                       <shadow type="text" id=";Yo#oC}Nk9]C:)WNW{Lk">
                         <field name="TEXT">http://ipwho.is/83.171.74.125</field>
                       </shadow>
                     </value>
                     <statement name="STATEMENT">
                       <block type="variables_set" id="yZ,__K01LN6h%PABrY[v">
                         <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                         <value name="VALUE">
                           <block type="get_attr" id="cc7[vI*$}xrtDrMt~OBj">
                             <value name="PATH">
                               <shadow type="text" id="EE;)y+tq$(;j+)+t}6N*">
                                 <field name="TEXT">city</field>
                               </shadow>
                             </value>
                             <value name="OBJECT">
                               <block type="convert_json2object" id="i+ECe}KB787,7WZ9B*=P">
                                 <value name="VALUE">
                                   <block type="variables_get" id="e;SfvsEGcas3)+#3[|s=">
                                     <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="variables_set" id="Jv]kPHDP!+qPmr0C/4_6">
                             <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                             <value name="VALUE">
                               <block type="variables_get" id="1T}jB,#%wUuBhPF};k6Q">
                                 <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                               </block>
                             </value>
                             <next>
                               <block type="debug" id="uoO#u~MJK:Iv#vLPaQW-">
                                 <field name="Severity">error</field>
                                 <value name="TEXT">
                                   <shadow type="text">
                                     <field name="TEXT">test</field>
                                   </shadow>
                                   <block type="variables_get" id="?hFiT,lj@AlJdB!uMlaP">
                                     <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                   </block>
                                 </value>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                     <next>
                       <block type="timeouts_wait" id="dsl0+g%)^JUz!6b-$BYj" disabled="true">
                         <field name="DELAY">1000</field>
                         <field name="UNIT">ms</field>
                         <next>
                           <block type="debug" id="p3YJ(2$Er=6P,(vD|l3w" disabled="true">
                             <field name="Severity">error</field>
                             <value name="TEXT">
                               <shadow type="text">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="variables_get" id="!khP)45:LW)ph!CLa5z4">
                                 <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                               </block>
                             </value>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                   <block type="procedures_defcustomreturn" id=";]!K;f1g9nqi9xIHEy8F" x="38" y="-788">
                     <mutation statements="false">
                       <arg name="id" varid="zyM/JPT)}]T^gGWB:F@z"></arg>
                     </mutation>
                     <field name="NAME">Kanalname</field>
                     <field name="SCRIPT">aWQgPSBpZC5zdWJzdHJpbmcoMCwgaWQubGFzdEluZGV4T2YoJy4nKSk7CmlmKGV4aXN0c09iamVjdChpZCkpIHJldHVybiBnZXRPYmplY3QoaWQpLmNvbW1vbi5uYW1lOw==</field>
                     <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                   </block>
                   <block type="on_ext" id="*AYH{ret7JZ1QW^UA{`o" x="37" y="-760">
                     <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                     <field name="CONDITION">ne</field>
                     <field name="ACK_CONDITION"></field>
                     <value name="OID0">
                       <shadow type="field_oid">
                         <field name="oid">default</field>
                       </shadow>
                       <block type="selector" id="O@OR#2?7z_V2GtPIXXlE">
                         <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                       </block>
                     </value>
                     <statement name="STATEMENT">
                       <block type="variables_set" id="M,^/Wy$Z(Ri-O+r$J2EM">
                         <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                         <value name="VALUE">
                           <block type="text" id="GQztwNrU3N3l(-HQD){{">
                             <field name="TEXT"></field>
                           </block>
                         </value>
                         <next>
                           <block type="controls_forEach" id="veYOQ1{6??T#Rg%Au2sv">
                             <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                             <value name="LIST">
                               <block type="selector" id="pQ4rA|H(~]Zi`E2tFf)R">
                                 <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                               </block>
                             </value>
                             <statement name="DO">
                               <block type="variables_set" id="0YUuZlCKksW:|4UgM,sj">
                                 <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                 <value name="VALUE">
                                   <block type="text_getSubstring" id="[AHj0;4KjS|p$9FDvGrd">
                                     <mutation at1="false" at2="true"></mutation>
                                     <field name="WHERE1">FIRST</field>
                                     <field name="WHERE2">FROM_START</field>
                                     <value name="STRING">
                                       <block type="variables_get" id="2?gX6;{EJe`XL|0C}_wi">
                                         <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                       </block>
                                     </value>
                                     <value name="AT2">
                                       <block type="text_indexOf" id="j[xyaOQIutX|_W9BwB0e">
                                         <field name="END">LAST</field>
                                         <value name="VALUE">
                                           <block type="variables_get" id="S+@r`ZO;vXp`6tF=}XrA">
                                             <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                           </block>
                                         </value>
                                         <value name="FIND">
                                           <shadow type="text">
                                             <field name="TEXT">abc</field>
                                           </shadow>
                                           <block type="text" id="Wv@{y%itHoH$|uS:#.]c">
                                             <field name="TEXT">.</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="variables_set" id="h%P+g|0Xu@[0f@lIVzkR">
                                     <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                     <value name="VALUE">
                                       <block type="text_join" id="68k%qF8!65ii:Qq]Pm^)">
                                         <mutation items="2"></mutation>
                                         <value name="ADD0">
                                           <block type="variables_get" id="kiyLLQy*x#F[$Fb28PR-">
                                             <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                           </block>
                                         </value>
                                         <value name="ADD1">
                                           <block type="text" id="8onx#:a?(N_t0|7:bu{i">
                                             <field name="TEXT">transferRx</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="variables_set" id=":Pi}g+hmEaAPvwM*;+4.">
                                         <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                         <value name="VALUE">
                                           <block type="text_join" id="kNCk{#HV06{XE/jQ6#4Z">
                                             <mutation items="2"></mutation>
                                             <value name="ADD0">
                                               <block type="variables_get" id="_.1EdEguDaD;|Tjw/78m">
                                                 <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                               </block>
                                             </value>
                                             <value name="ADD1">
                                               <block type="text" id="Um%*nvdNeQk#2|E{X)=4">
                                                 <field name="TEXT">transferTx</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="variables_set" id="+RaNq^bTK3a[C;uqyI2i">
                                             <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                             <value name="VALUE">
                                               <block type="text_join" id="r0}``DS=.o5yX^7ZxtXH">
                                                 <mutation items="2"></mutation>
                                                 <value name="ADD0">
                                                   <block type="variables_get" id="iU:-,TszPibEMR10E[Nn">
                                                     <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                   </block>
                                                 </value>
                                                 <value name="ADD1">
                                                   <block type="text" id="9BNmdn7[:(Zp9SppGE/!">
                                                     <field name="TEXT">endpoint</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="variables_set" id="]/%-HR7LqbNXDaldX+6v">
                                                 <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                 <value name="VALUE">
                                                   <block type="text_getSubstring" id="d+sQ1Ac7B]#BWpR(u+!N">
                                                     <mutation at1="true" at2="true"></mutation>
                                                     <field name="WHERE1">FROM_START</field>
                                                     <field name="WHERE2">FROM_START</field>
                                                     <value name="STRING">
                                                       <block type="text_getSubstring" id="`ZAHXSC%IP4W`CI5V:.C">
                                                         <mutation at1="false" at2="true"></mutation>
                                                         <field name="WHERE1">FIRST</field>
                                                         <field name="WHERE2">FROM_START</field>
                                                         <value name="STRING">
                                                           <block type="get_value_var" id="qBE1@f(j-zez`w!D+D9(">
                                                             <field name="ATTR">val</field>
                                                             <value name="OID">
                                                               <shadow type="text" id="T[UFJbAebSF~KJwN[whZ">
                                                                 <field name="TEXT"></field>
                                                               </shadow>
                                                               <block type="variables_get" id=";k7drB#W^}wXbqRmPRbP">
                                                                 <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="AT2">
                                                           <block type="text_indexOf" id="]s|i%].NCWJ%D6L)WJ[Q">
                                                             <field name="END">LAST</field>
                                                             <value name="VALUE">
                                                               <block type="get_value_var" id="]9DealhF+Ph|sxHIa]@v">
                                                                 <field name="ATTR">val</field>
                                                                 <value name="OID">
                                                                   <shadow type="text">
                                                                     <field name="TEXT"></field>
                                                                   </shadow>
                                                                   <block type="variables_get" id="h:fIu=#qfFC-F{hAdE!5">
                                                                     <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <value name="FIND">
                                                               <shadow type="text">
                                                                 <field name="TEXT">abc</field>
                                                               </shadow>
                                                               <block type="text" id="6):Os@?A0QT6XMw;C0wc">
                                                                 <field name="TEXT">:</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <value name="AT1">
                                                       <block type="math_number" id="+=ce5?*A3c6f]7.2Bj[$">
                                                         <field name="NUM">1</field>
                                                       </block>
                                                     </value>
                                                     <value name="AT2">
                                                       <block type="math_number" id="LtgXjy#)9.`FkWUNgoe$">
                                                         <field name="NUM">-1</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="variables_set" id="sY8v-iEo6OJ|M:b6S{/A">
                                                     <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                     <value name="VALUE">
                                                       <block type="text_join" id="P,8mR2;t@~=T{;|AcKUM">
                                                         <mutation items="2"></mutation>
                                                         <value name="ADD0">
                                                           <block type="text" id="qNoAL*`^y|_#u%b61T1*">
                                                             <field name="TEXT">http://ipwho.is/</field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD1">
                                                           <block type="variables_get" id="`73!fms.x9k`t6l!WlbD">
                                                             <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="request" id="yQj=We:n%oJ]fv5EDKh#">
                                                         <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                                                         <field name="WITH_STATEMENT">TRUE</field>
                                                         <field name="LOG"></field>
                                                         <value name="URL">
                                                           <shadow type="text" id="1ZjuFLX9{_i/):-7*{1=">
                                                             <field name="TEXT">text</field>
                                                           </shadow>
                                                           <block type="variables_get" id="{V`qu@4=M*NCc$:qDl,x">
                                                             <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                           </block>
                                                         </value>
                                                         <statement name="STATEMENT">
                                                           <block type="variables_set" id="/2~fEs-/8iSj~xbu,VWS">
                                                             <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                             <value name="VALUE">
                                                               <block type="get_attr" id="p@mYtPQrg]j=^;!(GB]k">
                                                                 <value name="PATH">
                                                                   <shadow type="text" id="p%sL|r[$n-s|iYr}3:-2">
                                                                     <field name="TEXT">country_code</field>
                                                                   </shadow>
                                                                 </value>
                                                                 <value name="OBJECT">
                                                                   <block type="convert_json2object" id="D])k5/#|{@E{E$nNTj,i">
                                                                     <value name="VALUE">
                                                                       <block type="variables_get" id="=avdbaKMsIq[9HG,bQN=">
                                                                         <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <next>
                                                               <block type="variables_set" id="KyDRw7l?3$ZJ@n6(I@LT">
                                                                 <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                 <value name="VALUE">
                                                                   <block type="get_attr" id="9^17kBsH`5z2qA[W}0$f">
                                                                     <value name="PATH">
                                                                       <shadow type="text" id="aiWGsO-%e?SKUJT*FoFD">
                                                                         <field name="TEXT">region</field>
                                                                       </shadow>
                                                                     </value>
                                                                     <value name="OBJECT">
                                                                       <block type="convert_json2object" id="@rN56zHgxe)+%/dtHZ{[">
                                                                         <value name="VALUE">
                                                                           <block type="variables_get" id="Q1W]OLEygD*=~@Egnkd8">
                                                                             <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <next>
                                                                   <block type="variables_set" id="GL`%T+3[#obeYt]l,Qjs">
                                                                     <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                     <value name="VALUE">
                                                                       <block type="get_attr" id=")2*)@[{m~!v4bZa[+o{-">
                                                                         <value name="PATH">
                                                                           <shadow type="text" id="LuuJ:2?E{~/M1A?++yLr">
                                                                             <field name="TEXT">city</field>
                                                                           </shadow>
                                                                         </value>
                                                                         <value name="OBJECT">
                                                                           <block type="convert_json2object" id="C.{yE78r]Ip:Ef^sIkwO">
                                                                             <value name="VALUE">
                                                                               <block type="variables_get" id="c!rR?xyUqs@?N8a;*w`g">
                                                                                 <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <next>
                                                                       <block type="variables_set" id="zhx.Vx,PC;sH@~8,)g$_">
                                                                         <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                         <value name="VALUE">
                                                                           <block type="get_attr" id="~oFcapqP+nb8zcgKPl;h">
                                                                             <value name="PATH">
                                                                               <shadow type="text" id="Q{PoFQHD{nq51xgddt]%">
                                                                                 <field name="TEXT">connection.isp</field>
                                                                               </shadow>
                                                                             </value>
                                                                             <value name="OBJECT">
                                                                               <block type="convert_json2object" id="6WpFriymLMfFm}+#wxeu">
                                                                                 <value name="VALUE">
                                                                                   <block type="variables_get" id="?il?@)/C79Di=5^i8psh">
                                                                                     <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <next>
                                                                           <block type="variables_set" id="VOJCwCjlv+=g0]h3j}:V">
                                                                             <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                             <value name="VALUE">
                                                                               <block type="get_attr" id="~VI^@Wl$49,s9x37if(Q">
                                                                                 <value name="PATH">
                                                                                   <shadow type="text" id="w`|+I{+Hs`HP/4,HcLvS">
                                                                                     <field name="TEXT">flag.img</field>
                                                                                   </shadow>
                                                                                 </value>
                                                                                 <value name="OBJECT">
                                                                                   <block type="convert_json2object" id="^a)=+B4;AU#^wUkv[-aD">
                                                                                     <value name="VALUE">
                                                                                       <block type="variables_get" id="gw)4=kpm!6TE/+2{U]E;">
                                                                                         <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <next>
                                                                               <block type="variables_set" id="HWLxl`;D$jPN2dsp_l0M">
                                                                                 <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                                 <value name="VALUE">
                                                                                   <block type="text_join" id="=hm(W}x9o1XDg9ox@upw">
                                                                                     <mutation items="10"></mutation>
                                                                                     <value name="ADD0">
                                                                                       <block type="text_join" id="NwGsXFXos0{R-Fq-5j6W">
                                                                                         <mutation items="3"></mutation>
                                                                                         <value name="ADD0">
                                                                                           <block type="text" id="W?yqgK1aifB-ZrHL}YUd">
                                                                                             <field name="TEXT">&lt;img src="</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD1">
                                                                                           <block type="variables_get" id="~pU`cH|%o!eb)#zCJrvu">
                                                                                             <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD2">
                                                                                           <block type="text" id="(!mkECXwYB.I!?u*0b8s">
                                                                                             <field name="TEXT">" height="15" width="20" /&gt;</field>
                                                                                           </block>
                                                                                         </value>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD1">
                                                                                       <block type="text" id="4rgo.Ek|R$~P.w|}mY~:">
                                                                                         <field name="TEXT"> </field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD2">
                                                                                       <block type="variables_get" id="0|-AQlC+u7_!l+pZ()P|">
                                                                                         <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD3">
                                                                                       <block type="text" id="ZLeHRbssnJ_]T8-ZL.U1">
                                                                                         <field name="TEXT"> / </field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD4">
                                                                                       <block type="variables_get" id="e/DltPU{]?F4pg`~)_we">
                                                                                         <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD5">
                                                                                       <block type="text" id="GJy$2~u0u[.{*U?1+Rs}">
                                                                                         <field name="TEXT"> / </field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD6">
                                                                                       <block type="variables_get" id="h=cVYbl,lTADIV6nkO5G">
                                                                                         <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD7">
                                                                                       <block type="text" id="ZE^J~uZ*li-BOmL~jQU.">
                                                                                         <field name="TEXT"> / </field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD8">
                                                                                       <block type="variables_get" id="cUms?WrPv]3zw;RDK5y*">
                                                                                         <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="ADD9">
                                                                                       <block type="text" id="+]MQ2=#W5G(nn4:YaChr">
                                                                                         <field name="TEXT"></field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </next>
                                                                           </block>
                                                                         </next>
                                                                       </block>
                                                                     </next>
                                                                   </block>
                                                                 </next>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </statement>
                                                         <next>
                                                           <block type="timeouts_wait" id="wDBP!}LPeaN}_$]qWUD@">
                                                             <field name="DELAY">1000</field>
                                                             <field name="UNIT">ms</field>
                                                             <next>
                                                               <block type="variables_set" id="|eyOkaiKEzp!7`4O%q(|">
                                                                 <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                 <value name="VALUE">
                                                                   <block type="text_join" id="x(/8M1*c0r0dOEHH1cS)">
                                                                     <mutation items="11"></mutation>
                                                                     <value name="ADD0">
                                                                       <block type="variables_get" id="VzHd03_5cmr%mg68:0ji">
                                                                         <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD1">
                                                                       <block type="text" id="z9{VZS;@wA6DcSRXU|HP">
                                                                         <field name="TEXT">&lt;tr&gt;&lt;td&gt;</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD2">
                                                                       <block type="logic_ternary" id="D+m)U.nXTcPv_JX:YS7L">
                                                                         <value name="IF">
                                                                           <block type="get_value_var" id="1]idlwI||{Ir$D,B5A7P">
                                                                             <field name="ATTR">val</field>
                                                                             <value name="OID">
                                                                               <shadow type="text">
                                                                                 <field name="TEXT"></field>
                                                                               </shadow>
                                                                               <block type="variables_get" id="nK.1b}{e92ZLDcI$.0il">
                                                                                 <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <value name="THEN">
                                                                           <block type="text" id="5.nKN;dyw^TkA8W,K`TZ">
                                                                             <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=green&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ELSE">
                                                                           <block type="text" id="W8$7%-Enk^.^P59Sri~6">
                                                                             <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=red&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD3">
                                                                       <block type="procedures_callcustomreturn" id="2Gs#,[7gcB],_]RjLg~G">
                                                                         <mutation name="Kanalname">
                                                                           <arg name="id"></arg>
                                                                         </mutation>
                                                                         <value name="ARG0">
                                                                           <block type="variables_get" id="d12Mji%YD(L:H{Wkl0MM">
                                                                             <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD4">
                                                                       <block type="text" id="DW)g%~#qYSVioQUxUf|,">
                                                                         <field name="TEXT">&lt;/summary&gt;</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD5">
                                                                       <block type="variables_get" id="s!ZU|P+d#p=*DzhAzYGl">
                                                                         <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD6">
                                                                       <block type="text" id="Ii8Ty%UU0D~D]sl+@S{d">
                                                                         <field name="TEXT">&lt;/details&gt;&lt;/td&gt;&lt;td&gt;</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD7">
                                                                       <block type="math_rndfixed" id="f@oQ4S4q|5ZVJ|_RK2K1">
                                                                         <field name="n">1</field>
                                                                         <value name="x">
                                                                           <shadow type="math_number" id="jqVp50z~0j@|9Pa;Vs85">
                                                                             <field name="NUM">3.1234</field>
                                                                           </shadow>
                                                                           <block type="math_arithmetic" id="W$8Lgq;$GP-/D1yf?:QC">
                                                                             <field name="OP">MULTIPLY</field>
                                                                             <value name="A">
                                                                               <shadow type="math_number">
                                                                                 <field name="NUM">1</field>
                                                                               </shadow>
                                                                               <block type="get_value_var" id="[k[#r$Ep@{eAywbF|L@9">
                                                                                 <field name="ATTR">val</field>
                                                                                 <value name="OID">
                                                                                   <shadow type="text" id="61+ObyAGen}9iPcNi+~`">
                                                                                     <field name="TEXT"></field>
                                                                                   </shadow>
                                                                                   <block type="variables_get" id="r5%+e]~rU()E]t43#};C">
                                                                                     <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <value name="B">
                                                                               <shadow type="math_number" id="FZ8^[rYvFWTG+[:qc)Ll">
                                                                                 <field name="NUM">0.000001</field>
                                                                               </shadow>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD8">
                                                                       <block type="text" id="fduLOuSzL6I3562+u+G?">
                                                                         <field name="TEXT"> MB&lt;/td&gt;&lt;td&gt;</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD9">
                                                                       <block type="math_rndfixed" id="nN/RhZ7w/|CgqEfaRzOF">
                                                                         <field name="n">1</field>
                                                                         <value name="x">
                                                                           <shadow type="math_number" id="%bQ@ali!%@n#vEUO{=UY">
                                                                             <field name="NUM">3.1234</field>
                                                                           </shadow>
                                                                           <block type="math_arithmetic" id="CaI#H!wz.!V#J7Ebn?H5">
                                                                             <field name="OP">MULTIPLY</field>
                                                                             <value name="A">
                                                                               <shadow type="math_number" id="r4pDV]u/({hASSSM|$^{">
                                                                                 <field name="NUM">1</field>
                                                                               </shadow>
                                                                               <block type="get_value_var" id=",,pB]^{h9sFjel_E?UNP">
                                                                                 <field name="ATTR">val</field>
                                                                                 <value name="OID">
                                                                                   <shadow type="text" id="tnRvo,GMPgs~:?Rlg*0y">
                                                                                     <field name="TEXT"></field>
                                                                                   </shadow>
                                                                                   <block type="variables_get" id="Y?k!u%5taY9)sxBsjIB@">
                                                                                     <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <value name="B">
                                                                               <shadow type="math_number" id="w[mHdLVRLZCg=/Ori|2G">
                                                                                 <field name="NUM">0.000001</field>
                                                                               </shadow>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <value name="ADD10">
                                                                       <block type="text" id="z-)f|VOR{Z1a#3mt6f.D">
                                                                         <field name="TEXT"> MB&lt;/td&gt;&lt;/tr&gt;</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                             <next>
                               <block type="variables_set" id="r7;.)AWzn~Og=WYuviOr">
                                 <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                 <value name="VALUE">
                                   <block type="text_join" id="D~eCviT1huxfi`bAJKgT">
                                     <mutation items="3"></mutation>
                                     <value name="ADD0">
                                       <block type="text" id=",uS[jZuG?eIg$q6{Wo0(">
                                         <field name="TEXT">&lt;table width=100%&gt;&lt;tr&gt;&lt;td width=50%&gt;&lt;b&gt;Client&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;gesendet&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;empfangen&lt;/dt&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;</field>
                                       </block>
                                     </value>
                                     <value name="ADD1">
                                       <block type="variables_get" id="}aSY%Cu.eaFdn8d[piW`">
                                         <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                       </block>
                                     </value>
                                     <value name="ADD2">
                                       <block type="text" id="5TIxI)3=1`v=5T=CkrsL">
                                         <field name="TEXT">&lt;/table&gt;</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="update" id="@m+uxxJM5NwXi;z[{2-{">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                     <field name="OID">0_userdata.0.VIS.Tabellen.Tabelle_Wireguard</field>
                                     <field name="WITH_DELAY">FALSE</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id="k,oGuXz4!Z~ev=Gf95%?">
                                         <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                       </block>
                                     </value>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                   </block>
                  </xml>
                  

                  Zeigt eure Lovelace-Visualisierung klick
                  (Auch ideal um sich Anregungen zu holen)

                  Meine Tabellen für eure Visualisierung klick

                  NegaleinN 1 Antwort Letzte Antwort
                  1
                  • GrizzelbeeG Grizzelbee

                    @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

                    Hi bommel,
                    vielen Dank für dein Feedback. Da ich selber nur einen WireGuard host habe, sind mir derartige Spielchen nicht aufgefallen - das muss ich mir dann noch einmal angucken. Das sollte nicht so sein. Die Idee war, das ein interface, das aktiv ist auch als online angezeigt wird.
                    Mit den connectedPeers spiele ich gerade noch herum - da ist ohnehin noch ein bug drin: Peers, die offline gehen werden nicht von der Summe abgezogen - da hatte ich etwas kurz gedacht.

                    In Summe ist die Anzahl richtig, halt nur "falsch" aufgeteilt.

                    Dann habe ich schon eine Idee woran das liegt!

                    Oder sollten zwei Hosts besser auf zwei Instanzen aufgeteilt werden?

                    Um Gottes Willen - Nein! Die eine Instanz soll schon beliebig viele Hosts überwachen können.

                    B Offline
                    B Offline
                    bommel_030
                    schrieb am zuletzt editiert von
                    #82

                    @grizzelbee
                    Hab mir mal die 1.5.0 installiert. Die neuen Datenpunkte für die User finde ich super, fand die Bennennung der Peers aber auch ganz praktisch.
                    Ich habe leider immer noch das Problem, dass ich bei meinen 2 Servern die beide definitiv online sind, der als online=true angezeigt der als letztes gepollt wurde.
                    Es wechseln also im Abrufintervall beide von offline zu online und der andere von online zu offline.

                    GrizzelbeeG 1 Antwort Letzte Antwort
                    0
                    • David G.D David G.

                      Ich weiß die Frage ist so halb Offtopic, frage aber trotzdem mal.

                      Gibt bestimmt eine Logig wie es gemacht wird, wenn man vom Thema Netzwerk Ahnung hat.....

                      Hab grad angefangen mir eine kleine Tabelle für meine Visualisierung zu erstellen.

                      Screenshot_20221102_222027.jpg

                      Rx und Tx hab ich mal mit gesendet und empfangen übersetzt.

                      Gibt man in so einem Fall den Wert aus Sicht des Servers oder des Clienten an?
                      Im Moment steigt der Wert "gesendet", wenn ich vom Handy aus runterlade.
                      Also wird der Wert aus Sicht des Servers angegeben.

                      EDIT:

                      Hab die Tabelle jetzt fertig. Falls jmd Interesse hat:

                      Screenshot_20221103_213618.jpg

                      Über den Pfeil kann man sich anschauen, von wo die letzte/aktuelle IP kommt die sich verbunden hat. Wobei man das ja im Idealfall immer selber steht 😉

                      Die Infos zur IP werden von http://ipwho.is/ abgerufen.

                      Screenshot_20221103_213631.jpg

                      <xml xmlns="https://developers.google.com/blockly/xml">
                       <variables>
                         <variable id="zyM/JPT)}]T^gGWB:F@z">id</variable>
                         <variable id="P]hs1T;bQP8mPlO[gI,G">city</variable>
                         <variable id="smqD@1Uy]?O9IkTgYsh[">tabelle</variable>
                         <variable id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</variable>
                         <variable id=",{9I3n95un{O]_ilfGaC">i</variable>
                         <variable id="i{;#5g`AfcVP:!fhdgPw">peer</variable>
                         <variable id="}fTQ5LIFFh:KJ}if-0Ze">result</variable>
                         <variable id="S.FRC##Hw2?0w)V+rL^2">transferRx</variable>
                         <variable id="C/F_Y=6$Ds5n/qprHq[c">transferTx</variable>
                         <variable id="jufz1u/JWS-Er-e+JLb!">endpoint</variable>
                         <variable id="M~I$/Vj!yhhC]AKAyyFk">ip</variable>
                         <variable id="v;-p[gTSM`],SG{[,SDl">abfrage_url</variable>
                         <variable id=")j[GnvK_2~2}$q!/M+t;">land</variable>
                         <variable id="2i7_N153+$/8+,0NNcKm">region</variable>
                         <variable id="54Xg:T_Q`!#x/w*E!=#_">provider</variable>
                         <variable id="W}.4#@,T@E.%qHYX!?5W">country_picture</variable>
                       </variables>
                       <block type="request" id=")N5rhid8GiQC*JpzD7(3" disabled="true" x="63" y="-1637">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                         <field name="WITH_STATEMENT">TRUE</field>
                         <field name="LOG"></field>
                         <value name="URL">
                           <shadow type="text" id=";Yo#oC}Nk9]C:)WNW{Lk">
                             <field name="TEXT">http://ipwho.is/83.171.74.125</field>
                           </shadow>
                         </value>
                         <statement name="STATEMENT">
                           <block type="variables_set" id="yZ,__K01LN6h%PABrY[v">
                             <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                             <value name="VALUE">
                               <block type="get_attr" id="cc7[vI*$}xrtDrMt~OBj">
                                 <value name="PATH">
                                   <shadow type="text" id="EE;)y+tq$(;j+)+t}6N*">
                                     <field name="TEXT">city</field>
                                   </shadow>
                                 </value>
                                 <value name="OBJECT">
                                   <block type="convert_json2object" id="i+ECe}KB787,7WZ9B*=P">
                                     <value name="VALUE">
                                       <block type="variables_get" id="e;SfvsEGcas3)+#3[|s=">
                                         <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <next>
                               <block type="variables_set" id="Jv]kPHDP!+qPmr0C/4_6">
                                 <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                 <value name="VALUE">
                                   <block type="variables_get" id="1T}jB,#%wUuBhPF};k6Q">
                                     <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="debug" id="uoO#u~MJK:Iv#vLPaQW-">
                                     <field name="Severity">error</field>
                                     <value name="TEXT">
                                       <shadow type="text">
                                         <field name="TEXT">test</field>
                                       </shadow>
                                       <block type="variables_get" id="?hFiT,lj@AlJdB!uMlaP">
                                         <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                       </block>
                                     </value>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </statement>
                         <next>
                           <block type="timeouts_wait" id="dsl0+g%)^JUz!6b-$BYj" disabled="true">
                             <field name="DELAY">1000</field>
                             <field name="UNIT">ms</field>
                             <next>
                               <block type="debug" id="p3YJ(2$Er=6P,(vD|l3w" disabled="true">
                                 <field name="Severity">error</field>
                                 <value name="TEXT">
                                   <shadow type="text">
                                     <field name="TEXT">test</field>
                                   </shadow>
                                   <block type="variables_get" id="!khP)45:LW)ph!CLa5z4">
                                     <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                   </block>
                                 </value>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                       <block type="procedures_defcustomreturn" id=";]!K;f1g9nqi9xIHEy8F" x="38" y="-788">
                         <mutation statements="false">
                           <arg name="id" varid="zyM/JPT)}]T^gGWB:F@z"></arg>
                         </mutation>
                         <field name="NAME">Kanalname</field>
                         <field name="SCRIPT">aWQgPSBpZC5zdWJzdHJpbmcoMCwgaWQubGFzdEluZGV4T2YoJy4nKSk7CmlmKGV4aXN0c09iamVjdChpZCkpIHJldHVybiBnZXRPYmplY3QoaWQpLmNvbW1vbi5uYW1lOw==</field>
                         <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                       </block>
                       <block type="on_ext" id="*AYH{ret7JZ1QW^UA{`o" x="37" y="-760">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid">
                             <field name="oid">default</field>
                           </shadow>
                           <block type="selector" id="O@OR#2?7z_V2GtPIXXlE">
                             <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                           </block>
                         </value>
                         <statement name="STATEMENT">
                           <block type="variables_set" id="M,^/Wy$Z(Ri-O+r$J2EM">
                             <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                             <value name="VALUE">
                               <block type="text" id="GQztwNrU3N3l(-HQD){{">
                                 <field name="TEXT"></field>
                               </block>
                             </value>
                             <next>
                               <block type="controls_forEach" id="veYOQ1{6??T#Rg%Au2sv">
                                 <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                 <value name="LIST">
                                   <block type="selector" id="pQ4rA|H(~]Zi`E2tFf)R">
                                     <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                                   </block>
                                 </value>
                                 <statement name="DO">
                                   <block type="variables_set" id="0YUuZlCKksW:|4UgM,sj">
                                     <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                     <value name="VALUE">
                                       <block type="text_getSubstring" id="[AHj0;4KjS|p$9FDvGrd">
                                         <mutation at1="false" at2="true"></mutation>
                                         <field name="WHERE1">FIRST</field>
                                         <field name="WHERE2">FROM_START</field>
                                         <value name="STRING">
                                           <block type="variables_get" id="2?gX6;{EJe`XL|0C}_wi">
                                             <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                           </block>
                                         </value>
                                         <value name="AT2">
                                           <block type="text_indexOf" id="j[xyaOQIutX|_W9BwB0e">
                                             <field name="END">LAST</field>
                                             <value name="VALUE">
                                               <block type="variables_get" id="S+@r`ZO;vXp`6tF=}XrA">
                                                 <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                               </block>
                                             </value>
                                             <value name="FIND">
                                               <shadow type="text">
                                                 <field name="TEXT">abc</field>
                                               </shadow>
                                               <block type="text" id="Wv@{y%itHoH$|uS:#.]c">
                                                 <field name="TEXT">.</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="variables_set" id="h%P+g|0Xu@[0f@lIVzkR">
                                         <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                         <value name="VALUE">
                                           <block type="text_join" id="68k%qF8!65ii:Qq]Pm^)">
                                             <mutation items="2"></mutation>
                                             <value name="ADD0">
                                               <block type="variables_get" id="kiyLLQy*x#F[$Fb28PR-">
                                                 <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                               </block>
                                             </value>
                                             <value name="ADD1">
                                               <block type="text" id="8onx#:a?(N_t0|7:bu{i">
                                                 <field name="TEXT">transferRx</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="variables_set" id=":Pi}g+hmEaAPvwM*;+4.">
                                             <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                             <value name="VALUE">
                                               <block type="text_join" id="kNCk{#HV06{XE/jQ6#4Z">
                                                 <mutation items="2"></mutation>
                                                 <value name="ADD0">
                                                   <block type="variables_get" id="_.1EdEguDaD;|Tjw/78m">
                                                     <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                   </block>
                                                 </value>
                                                 <value name="ADD1">
                                                   <block type="text" id="Um%*nvdNeQk#2|E{X)=4">
                                                     <field name="TEXT">transferTx</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="variables_set" id="+RaNq^bTK3a[C;uqyI2i">
                                                 <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                 <value name="VALUE">
                                                   <block type="text_join" id="r0}``DS=.o5yX^7ZxtXH">
                                                     <mutation items="2"></mutation>
                                                     <value name="ADD0">
                                                       <block type="variables_get" id="iU:-,TszPibEMR10E[Nn">
                                                         <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD1">
                                                       <block type="text" id="9BNmdn7[:(Zp9SppGE/!">
                                                         <field name="TEXT">endpoint</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="variables_set" id="]/%-HR7LqbNXDaldX+6v">
                                                     <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                     <value name="VALUE">
                                                       <block type="text_getSubstring" id="d+sQ1Ac7B]#BWpR(u+!N">
                                                         <mutation at1="true" at2="true"></mutation>
                                                         <field name="WHERE1">FROM_START</field>
                                                         <field name="WHERE2">FROM_START</field>
                                                         <value name="STRING">
                                                           <block type="text_getSubstring" id="`ZAHXSC%IP4W`CI5V:.C">
                                                             <mutation at1="false" at2="true"></mutation>
                                                             <field name="WHERE1">FIRST</field>
                                                             <field name="WHERE2">FROM_START</field>
                                                             <value name="STRING">
                                                               <block type="get_value_var" id="qBE1@f(j-zez`w!D+D9(">
                                                                 <field name="ATTR">val</field>
                                                                 <value name="OID">
                                                                   <shadow type="text" id="T[UFJbAebSF~KJwN[whZ">
                                                                     <field name="TEXT"></field>
                                                                   </shadow>
                                                                   <block type="variables_get" id=";k7drB#W^}wXbqRmPRbP">
                                                                     <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <value name="AT2">
                                                               <block type="text_indexOf" id="]s|i%].NCWJ%D6L)WJ[Q">
                                                                 <field name="END">LAST</field>
                                                                 <value name="VALUE">
                                                                   <block type="get_value_var" id="]9DealhF+Ph|sxHIa]@v">
                                                                     <field name="ATTR">val</field>
                                                                     <value name="OID">
                                                                       <shadow type="text">
                                                                         <field name="TEXT"></field>
                                                                       </shadow>
                                                                       <block type="variables_get" id="h:fIu=#qfFC-F{hAdE!5">
                                                                         <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <value name="FIND">
                                                                   <shadow type="text">
                                                                     <field name="TEXT">abc</field>
                                                                   </shadow>
                                                                   <block type="text" id="6):Os@?A0QT6XMw;C0wc">
                                                                     <field name="TEXT">:</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="AT1">
                                                           <block type="math_number" id="+=ce5?*A3c6f]7.2Bj[$">
                                                             <field name="NUM">1</field>
                                                           </block>
                                                         </value>
                                                         <value name="AT2">
                                                           <block type="math_number" id="LtgXjy#)9.`FkWUNgoe$">
                                                             <field name="NUM">-1</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="variables_set" id="sY8v-iEo6OJ|M:b6S{/A">
                                                         <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                         <value name="VALUE">
                                                           <block type="text_join" id="P,8mR2;t@~=T{;|AcKUM">
                                                             <mutation items="2"></mutation>
                                                             <value name="ADD0">
                                                               <block type="text" id="qNoAL*`^y|_#u%b61T1*">
                                                                 <field name="TEXT">http://ipwho.is/</field>
                                                               </block>
                                                             </value>
                                                             <value name="ADD1">
                                                               <block type="variables_get" id="`73!fms.x9k`t6l!WlbD">
                                                                 <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <next>
                                                           <block type="request" id="yQj=We:n%oJ]fv5EDKh#">
                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                                                             <field name="WITH_STATEMENT">TRUE</field>
                                                             <field name="LOG"></field>
                                                             <value name="URL">
                                                               <shadow type="text" id="1ZjuFLX9{_i/):-7*{1=">
                                                                 <field name="TEXT">text</field>
                                                               </shadow>
                                                               <block type="variables_get" id="{V`qu@4=M*NCc$:qDl,x">
                                                                 <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                               </block>
                                                             </value>
                                                             <statement name="STATEMENT">
                                                               <block type="variables_set" id="/2~fEs-/8iSj~xbu,VWS">
                                                                 <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                                 <value name="VALUE">
                                                                   <block type="get_attr" id="p@mYtPQrg]j=^;!(GB]k">
                                                                     <value name="PATH">
                                                                       <shadow type="text" id="p%sL|r[$n-s|iYr}3:-2">
                                                                         <field name="TEXT">country_code</field>
                                                                       </shadow>
                                                                     </value>
                                                                     <value name="OBJECT">
                                                                       <block type="convert_json2object" id="D])k5/#|{@E{E$nNTj,i">
                                                                         <value name="VALUE">
                                                                           <block type="variables_get" id="=avdbaKMsIq[9HG,bQN=">
                                                                             <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <next>
                                                                   <block type="variables_set" id="KyDRw7l?3$ZJ@n6(I@LT">
                                                                     <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                     <value name="VALUE">
                                                                       <block type="get_attr" id="9^17kBsH`5z2qA[W}0$f">
                                                                         <value name="PATH">
                                                                           <shadow type="text" id="aiWGsO-%e?SKUJT*FoFD">
                                                                             <field name="TEXT">region</field>
                                                                           </shadow>
                                                                         </value>
                                                                         <value name="OBJECT">
                                                                           <block type="convert_json2object" id="@rN56zHgxe)+%/dtHZ{[">
                                                                             <value name="VALUE">
                                                                               <block type="variables_get" id="Q1W]OLEygD*=~@Egnkd8">
                                                                                 <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <next>
                                                                       <block type="variables_set" id="GL`%T+3[#obeYt]l,Qjs">
                                                                         <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                         <value name="VALUE">
                                                                           <block type="get_attr" id=")2*)@[{m~!v4bZa[+o{-">
                                                                             <value name="PATH">
                                                                               <shadow type="text" id="LuuJ:2?E{~/M1A?++yLr">
                                                                                 <field name="TEXT">city</field>
                                                                               </shadow>
                                                                             </value>
                                                                             <value name="OBJECT">
                                                                               <block type="convert_json2object" id="C.{yE78r]Ip:Ef^sIkwO">
                                                                                 <value name="VALUE">
                                                                                   <block type="variables_get" id="c!rR?xyUqs@?N8a;*w`g">
                                                                                     <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <next>
                                                                           <block type="variables_set" id="zhx.Vx,PC;sH@~8,)g$_">
                                                                             <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                             <value name="VALUE">
                                                                               <block type="get_attr" id="~oFcapqP+nb8zcgKPl;h">
                                                                                 <value name="PATH">
                                                                                   <shadow type="text" id="Q{PoFQHD{nq51xgddt]%">
                                                                                     <field name="TEXT">connection.isp</field>
                                                                                   </shadow>
                                                                                 </value>
                                                                                 <value name="OBJECT">
                                                                                   <block type="convert_json2object" id="6WpFriymLMfFm}+#wxeu">
                                                                                     <value name="VALUE">
                                                                                       <block type="variables_get" id="?il?@)/C79Di=5^i8psh">
                                                                                         <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <next>
                                                                               <block type="variables_set" id="VOJCwCjlv+=g0]h3j}:V">
                                                                                 <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                                 <value name="VALUE">
                                                                                   <block type="get_attr" id="~VI^@Wl$49,s9x37if(Q">
                                                                                     <value name="PATH">
                                                                                       <shadow type="text" id="w`|+I{+Hs`HP/4,HcLvS">
                                                                                         <field name="TEXT">flag.img</field>
                                                                                       </shadow>
                                                                                     </value>
                                                                                     <value name="OBJECT">
                                                                                       <block type="convert_json2object" id="^a)=+B4;AU#^wUkv[-aD">
                                                                                         <value name="VALUE">
                                                                                           <block type="variables_get" id="gw)4=kpm!6TE/+2{U]E;">
                                                                                             <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                           </block>
                                                                                         </value>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                                 <next>
                                                                                   <block type="variables_set" id="HWLxl`;D$jPN2dsp_l0M">
                                                                                     <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                                     <value name="VALUE">
                                                                                       <block type="text_join" id="=hm(W}x9o1XDg9ox@upw">
                                                                                         <mutation items="10"></mutation>
                                                                                         <value name="ADD0">
                                                                                           <block type="text_join" id="NwGsXFXos0{R-Fq-5j6W">
                                                                                             <mutation items="3"></mutation>
                                                                                             <value name="ADD0">
                                                                                               <block type="text" id="W?yqgK1aifB-ZrHL}YUd">
                                                                                                 <field name="TEXT">&lt;img src="</field>
                                                                                               </block>
                                                                                             </value>
                                                                                             <value name="ADD1">
                                                                                               <block type="variables_get" id="~pU`cH|%o!eb)#zCJrvu">
                                                                                                 <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                                               </block>
                                                                                             </value>
                                                                                             <value name="ADD2">
                                                                                               <block type="text" id="(!mkECXwYB.I!?u*0b8s">
                                                                                                 <field name="TEXT">" height="15" width="20" /&gt;</field>
                                                                                               </block>
                                                                                             </value>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD1">
                                                                                           <block type="text" id="4rgo.Ek|R$~P.w|}mY~:">
                                                                                             <field name="TEXT"> </field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD2">
                                                                                           <block type="variables_get" id="0|-AQlC+u7_!l+pZ()P|">
                                                                                             <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD3">
                                                                                           <block type="text" id="ZLeHRbssnJ_]T8-ZL.U1">
                                                                                             <field name="TEXT"> / </field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD4">
                                                                                           <block type="variables_get" id="e/DltPU{]?F4pg`~)_we">
                                                                                             <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD5">
                                                                                           <block type="text" id="GJy$2~u0u[.{*U?1+Rs}">
                                                                                             <field name="TEXT"> / </field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD6">
                                                                                           <block type="variables_get" id="h=cVYbl,lTADIV6nkO5G">
                                                                                             <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD7">
                                                                                           <block type="text" id="ZE^J~uZ*li-BOmL~jQU.">
                                                                                             <field name="TEXT"> / </field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD8">
                                                                                           <block type="variables_get" id="cUms?WrPv]3zw;RDK5y*">
                                                                                             <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                                           </block>
                                                                                         </value>
                                                                                         <value name="ADD9">
                                                                                           <block type="text" id="+]MQ2=#W5G(nn4:YaChr">
                                                                                             <field name="TEXT"></field>
                                                                                           </block>
                                                                                         </value>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </next>
                                                                               </block>
                                                                             </next>
                                                                           </block>
                                                                         </next>
                                                                       </block>
                                                                     </next>
                                                                   </block>
                                                                 </next>
                                                               </block>
                                                             </statement>
                                                             <next>
                                                               <block type="timeouts_wait" id="wDBP!}LPeaN}_$]qWUD@">
                                                                 <field name="DELAY">1000</field>
                                                                 <field name="UNIT">ms</field>
                                                                 <next>
                                                                   <block type="variables_set" id="|eyOkaiKEzp!7`4O%q(|">
                                                                     <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                     <value name="VALUE">
                                                                       <block type="text_join" id="x(/8M1*c0r0dOEHH1cS)">
                                                                         <mutation items="11"></mutation>
                                                                         <value name="ADD0">
                                                                           <block type="variables_get" id="VzHd03_5cmr%mg68:0ji">
                                                                             <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD1">
                                                                           <block type="text" id="z9{VZS;@wA6DcSRXU|HP">
                                                                             <field name="TEXT">&lt;tr&gt;&lt;td&gt;</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD2">
                                                                           <block type="logic_ternary" id="D+m)U.nXTcPv_JX:YS7L">
                                                                             <value name="IF">
                                                                               <block type="get_value_var" id="1]idlwI||{Ir$D,B5A7P">
                                                                                 <field name="ATTR">val</field>
                                                                                 <value name="OID">
                                                                                   <shadow type="text">
                                                                                     <field name="TEXT"></field>
                                                                                   </shadow>
                                                                                   <block type="variables_get" id="nK.1b}{e92ZLDcI$.0il">
                                                                                     <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <value name="THEN">
                                                                               <block type="text" id="5.nKN;dyw^TkA8W,K`TZ">
                                                                                 <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=green&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                               </block>
                                                                             </value>
                                                                             <value name="ELSE">
                                                                               <block type="text" id="W8$7%-Enk^.^P59Sri~6">
                                                                                 <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=red&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD3">
                                                                           <block type="procedures_callcustomreturn" id="2Gs#,[7gcB],_]RjLg~G">
                                                                             <mutation name="Kanalname">
                                                                               <arg name="id"></arg>
                                                                             </mutation>
                                                                             <value name="ARG0">
                                                                               <block type="variables_get" id="d12Mji%YD(L:H{Wkl0MM">
                                                                                 <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD4">
                                                                           <block type="text" id="DW)g%~#qYSVioQUxUf|,">
                                                                             <field name="TEXT">&lt;/summary&gt;</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD5">
                                                                           <block type="variables_get" id="s!ZU|P+d#p=*DzhAzYGl">
                                                                             <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD6">
                                                                           <block type="text" id="Ii8Ty%UU0D~D]sl+@S{d">
                                                                             <field name="TEXT">&lt;/details&gt;&lt;/td&gt;&lt;td&gt;</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD7">
                                                                           <block type="math_rndfixed" id="f@oQ4S4q|5ZVJ|_RK2K1">
                                                                             <field name="n">1</field>
                                                                             <value name="x">
                                                                               <shadow type="math_number" id="jqVp50z~0j@|9Pa;Vs85">
                                                                                 <field name="NUM">3.1234</field>
                                                                               </shadow>
                                                                               <block type="math_arithmetic" id="W$8Lgq;$GP-/D1yf?:QC">
                                                                                 <field name="OP">MULTIPLY</field>
                                                                                 <value name="A">
                                                                                   <shadow type="math_number">
                                                                                     <field name="NUM">1</field>
                                                                                   </shadow>
                                                                                   <block type="get_value_var" id="[k[#r$Ep@{eAywbF|L@9">
                                                                                     <field name="ATTR">val</field>
                                                                                     <value name="OID">
                                                                                       <shadow type="text" id="61+ObyAGen}9iPcNi+~`">
                                                                                         <field name="TEXT"></field>
                                                                                       </shadow>
                                                                                       <block type="variables_get" id="r5%+e]~rU()E]t43#};C">
                                                                                         <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                                 <value name="B">
                                                                                   <shadow type="math_number" id="FZ8^[rYvFWTG+[:qc)Ll">
                                                                                     <field name="NUM">0.000001</field>
                                                                                   </shadow>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD8">
                                                                           <block type="text" id="fduLOuSzL6I3562+u+G?">
                                                                             <field name="TEXT"> MB&lt;/td&gt;&lt;td&gt;</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD9">
                                                                           <block type="math_rndfixed" id="nN/RhZ7w/|CgqEfaRzOF">
                                                                             <field name="n">1</field>
                                                                             <value name="x">
                                                                               <shadow type="math_number" id="%bQ@ali!%@n#vEUO{=UY">
                                                                                 <field name="NUM">3.1234</field>
                                                                               </shadow>
                                                                               <block type="math_arithmetic" id="CaI#H!wz.!V#J7Ebn?H5">
                                                                                 <field name="OP">MULTIPLY</field>
                                                                                 <value name="A">
                                                                                   <shadow type="math_number" id="r4pDV]u/({hASSSM|$^{">
                                                                                     <field name="NUM">1</field>
                                                                                   </shadow>
                                                                                   <block type="get_value_var" id=",,pB]^{h9sFjel_E?UNP">
                                                                                     <field name="ATTR">val</field>
                                                                                     <value name="OID">
                                                                                       <shadow type="text" id="tnRvo,GMPgs~:?Rlg*0y">
                                                                                         <field name="TEXT"></field>
                                                                                       </shadow>
                                                                                       <block type="variables_get" id="Y?k!u%5taY9)sxBsjIB@">
                                                                                         <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                                 <value name="B">
                                                                                   <shadow type="math_number" id="w[mHdLVRLZCg=/Ori|2G">
                                                                                     <field name="NUM">0.000001</field>
                                                                                   </shadow>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <value name="ADD10">
                                                                           <block type="text" id="z-)f|VOR{Z1a#3mt6f.D">
                                                                             <field name="TEXT"> MB&lt;/td&gt;&lt;/tr&gt;</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </next>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                                 <next>
                                   <block type="variables_set" id="r7;.)AWzn~Og=WYuviOr">
                                     <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                     <value name="VALUE">
                                       <block type="text_join" id="D~eCviT1huxfi`bAJKgT">
                                         <mutation items="3"></mutation>
                                         <value name="ADD0">
                                           <block type="text" id=",uS[jZuG?eIg$q6{Wo0(">
                                             <field name="TEXT">&lt;table width=100%&gt;&lt;tr&gt;&lt;td width=50%&gt;&lt;b&gt;Client&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;gesendet&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;empfangen&lt;/dt&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;</field>
                                           </block>
                                         </value>
                                         <value name="ADD1">
                                           <block type="variables_get" id="}aSY%Cu.eaFdn8d[piW`">
                                             <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                           </block>
                                         </value>
                                         <value name="ADD2">
                                           <block type="text" id="5TIxI)3=1`v=5T=CkrsL">
                                             <field name="TEXT">&lt;/table&gt;</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="update" id="@m+uxxJM5NwXi;z[{2-{">
                                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                         <field name="OID">0_userdata.0.VIS.Tabellen.Tabelle_Wireguard</field>
                                         <field name="WITH_DELAY">FALSE</field>
                                         <value name="VALUE">
                                           <block type="variables_get" id="k,oGuXz4!Z~ev=Gf95%?">
                                             <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                           </block>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </statement>
                       </block>
                      </xml>
                      

                      NegaleinN Offline
                      NegaleinN Offline
                      Negalein
                      Global Moderator
                      schrieb am zuletzt editiert von
                      #83

                      @david-g sagte in Tester für WireGuard Adapter gesucht:

                      Hab die Tabelle jetzt fertig. Falls jmd Interesse hat:

                      Hallo David!

                      Schaut sehr gut aus. Gefällt mir sehr.
                      Kann ich den Export haben?

                      Und für was wird das Blockly benötigt?

                      ° Node.js: 20.17.0 NPM: 10.8.2
                      ° Proxmox, Ubuntu 22.04.3 LTS
                      ° Fixer ---> iob fix

                      1 Antwort Letzte Antwort
                      0
                      • GrizzelbeeG Grizzelbee
                        Aktuelle Test Version 1.1.0
                        Veröffentlichungsdatum 07.03.2022
                        Github Link https://github.com/Grizzelbee/ioBroker.wireguard

                        Hier Adapter Beschreibung, Changelog etc.

                        Hallo Zusammen,

                        ich habe mir mal den Spass gemacht und einen WireGuard Adapter geschrieben mit dem man seine WireGuard Hosts und Peers monitoren kann.

                        Vielleicht kann es ja jemand gebrauchen und mag testen:

                        Sicherheitshinweis - Wichtige Änderung in 1.1.0:
                        Nach aktuellem Kenntnisstand empfehle ich genau diese Konfig!
                        Ab v1.1.0 kann der notwendige monitoring Befehl auch über sudo abgesetzt werden, wenn vorher eine entsprechende sudoers Regel erstellt wurde. Das Gute daran ist, dass ausschließlich genau dieser Befehl (mit genau diesen Parametern) ohne passwort abgesetzt werden kann - NICHTS anderes. Mehr oder weniger oder andere Parameter führen sofort zur Abfrage des Passwortes. Ausführlich ist das in Englisch in der Readme dokumentiert. Zur Bequemlichkeit hier an dieser Stelle auch noch einmal in Deutsch:
                        Linux kann über sogenannte sudoers Regeln sehr genau steuern welcher User was alles darf. Wie das ganz genau geht hängt leider von der jeweiligen Linux Distro ab. Deshalb bitte im Zweifel und bei Unklarheiten google <name der distro> sudoers bemühen. Bei den meisten Distros läuft es aber auf folgendes heraus:

                        1. visudo als adminstrativer User zum editieren der sudoers Datei aufrufen. Es wird dringend davon abgeraten sudoers auf einem anderen Wege zu editieren.
                        2. Am Ende der Datei folgende Zeile hinzufügen: <name-des-monitoring-users> ALL=NOPASSWD:/usr/bin/wg show all dump (<name-des-monitoring-users> muss natürlich durch euren User ersetzt werden unnd /usr/binggf durch einen anderen Pfad falls wg irgendwo anders bei euch liegt. )
                        3. Datei speichern

                        Nach Eingabe dieser Regel kann in der Konfig das Häkchen bei sudogesetzt werden.

                        Wichtige Änderung in 0.9.5:
                        Ich nutze das wg-json script nicht mehr. Dadurch funktioniert der Adapter jetzt einfach so ohne weitere Handgriffe auf dem Server - aber es haben sich auch ein paar Datenpunkte geändert. Ggf. also bitte den Tree mal löschen und neu anlegen lassen. Latesthandshake sollte ein Datum sein! Und so ganz nebenbei werden jetzt auch WireGuard-Installationen auf Windows unterstützt.

                        v1.1.0 (2022-03-06)

                        • (grizzelbee) New: Added support for sudo when using a valid sudoers rule - refer to security hints in readme for more information
                        • (grizzelbee) Upd: Documentation update regarding security
                        • (grizzelbee) Upd: dependency update

                        v1.0.0 (2022-02-25)

                        • (grizzelbee) New: Added individual online state indicator for each interface
                        • (grizzelbee) fix: Improved some data roles
                        • (grizzelbee) fix: Improved documentation

                        v0.9.5 (2022-02-22)

                        • (grizzelbee) New: dropped use of wg-json script - not needed anymore
                        • (grizzelbee) New: making internal use of wg show all dump command and self parsing the result
                        • (grizzelbee) New: Added windows support by using the wg show all command
                        • (grizzelbee) Upd: moved dependency admin to globalDependency as requested during adapter review

                        v0.9.2 (2022-02-20)

                        • (grizzelbee) Fix: removed unnecessary secret from index_m.html file
                        • (grizzelbee) Fix: Using info.connection of adapter to indicate that at least one interface is online.
                        • (grizzelbee) Fix: Updated adapter icon

                        v0.9.1 (2022-02-19)

                        • (grizzelbee) New: Improved optical quality of admin page - no technical improvements

                        v0.9.0 (2022-02-18)

                        • (grizzelbee) New: Improved documentation
                        • (grizzelbee) New: Username and password for WireGuard hosts are getting encrypted now

                        v0.8.0 (2022-02-17)

                        • (grizzelbee) New: admin extended with second page
                        • (grizzelbee) New: data file is getting parsed
                        • (grizzelbee) New: data tree is getting populated
                        • (grizzelbee) New: entire basic functionality is implemented
                        • (grizzelbee) New: added plugin sentry
                        NegaleinN Offline
                        NegaleinN Offline
                        Negalein
                        Global Moderator
                        schrieb am zuletzt editiert von
                        #84

                        @grizzelbee

                        Ich kann nicht sagen, ob diese Meldungen vor der 1.5.0 auch schon gekommen sind.
                        Mir sind sie gerade aufgefallen.

                        wireguard.0 2023-06-29 08:51:01.437	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.device" has to be type "undefined" but received type "string"
                        wireguard.0 2023-06-29 08:51:01.436	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.user" has to be type "undefined" but received type "string"
                        

                        ° Node.js: 20.17.0 NPM: 10.8.2
                        ° Proxmox, Ubuntu 22.04.3 LTS
                        ° Fixer ---> iob fix

                        B 1 Antwort Letzte Antwort
                        0
                        • GrizzelbeeG Grizzelbee
                          Aktuelle Test Version 1.1.0
                          Veröffentlichungsdatum 07.03.2022
                          Github Link https://github.com/Grizzelbee/ioBroker.wireguard

                          Hier Adapter Beschreibung, Changelog etc.

                          Hallo Zusammen,

                          ich habe mir mal den Spass gemacht und einen WireGuard Adapter geschrieben mit dem man seine WireGuard Hosts und Peers monitoren kann.

                          Vielleicht kann es ja jemand gebrauchen und mag testen:

                          Sicherheitshinweis - Wichtige Änderung in 1.1.0:
                          Nach aktuellem Kenntnisstand empfehle ich genau diese Konfig!
                          Ab v1.1.0 kann der notwendige monitoring Befehl auch über sudo abgesetzt werden, wenn vorher eine entsprechende sudoers Regel erstellt wurde. Das Gute daran ist, dass ausschließlich genau dieser Befehl (mit genau diesen Parametern) ohne passwort abgesetzt werden kann - NICHTS anderes. Mehr oder weniger oder andere Parameter führen sofort zur Abfrage des Passwortes. Ausführlich ist das in Englisch in der Readme dokumentiert. Zur Bequemlichkeit hier an dieser Stelle auch noch einmal in Deutsch:
                          Linux kann über sogenannte sudoers Regeln sehr genau steuern welcher User was alles darf. Wie das ganz genau geht hängt leider von der jeweiligen Linux Distro ab. Deshalb bitte im Zweifel und bei Unklarheiten google <name der distro> sudoers bemühen. Bei den meisten Distros läuft es aber auf folgendes heraus:

                          1. visudo als adminstrativer User zum editieren der sudoers Datei aufrufen. Es wird dringend davon abgeraten sudoers auf einem anderen Wege zu editieren.
                          2. Am Ende der Datei folgende Zeile hinzufügen: <name-des-monitoring-users> ALL=NOPASSWD:/usr/bin/wg show all dump (<name-des-monitoring-users> muss natürlich durch euren User ersetzt werden unnd /usr/binggf durch einen anderen Pfad falls wg irgendwo anders bei euch liegt. )
                          3. Datei speichern

                          Nach Eingabe dieser Regel kann in der Konfig das Häkchen bei sudogesetzt werden.

                          Wichtige Änderung in 0.9.5:
                          Ich nutze das wg-json script nicht mehr. Dadurch funktioniert der Adapter jetzt einfach so ohne weitere Handgriffe auf dem Server - aber es haben sich auch ein paar Datenpunkte geändert. Ggf. also bitte den Tree mal löschen und neu anlegen lassen. Latesthandshake sollte ein Datum sein! Und so ganz nebenbei werden jetzt auch WireGuard-Installationen auf Windows unterstützt.

                          v1.1.0 (2022-03-06)

                          • (grizzelbee) New: Added support for sudo when using a valid sudoers rule - refer to security hints in readme for more information
                          • (grizzelbee) Upd: Documentation update regarding security
                          • (grizzelbee) Upd: dependency update

                          v1.0.0 (2022-02-25)

                          • (grizzelbee) New: Added individual online state indicator for each interface
                          • (grizzelbee) fix: Improved some data roles
                          • (grizzelbee) fix: Improved documentation

                          v0.9.5 (2022-02-22)

                          • (grizzelbee) New: dropped use of wg-json script - not needed anymore
                          • (grizzelbee) New: making internal use of wg show all dump command and self parsing the result
                          • (grizzelbee) New: Added windows support by using the wg show all command
                          • (grizzelbee) Upd: moved dependency admin to globalDependency as requested during adapter review

                          v0.9.2 (2022-02-20)

                          • (grizzelbee) Fix: removed unnecessary secret from index_m.html file
                          • (grizzelbee) Fix: Using info.connection of adapter to indicate that at least one interface is online.
                          • (grizzelbee) Fix: Updated adapter icon

                          v0.9.1 (2022-02-19)

                          • (grizzelbee) New: Improved optical quality of admin page - no technical improvements

                          v0.9.0 (2022-02-18)

                          • (grizzelbee) New: Improved documentation
                          • (grizzelbee) New: Username and password for WireGuard hosts are getting encrypted now

                          v0.8.0 (2022-02-17)

                          • (grizzelbee) New: admin extended with second page
                          • (grizzelbee) New: data file is getting parsed
                          • (grizzelbee) New: data tree is getting populated
                          • (grizzelbee) New: entire basic functionality is implemented
                          • (grizzelbee) New: added plugin sentry
                          ? Offline
                          ? Offline
                          Ein ehemaliger Benutzer
                          schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                          #85

                          @grizzelbee
                          EDIT:
                          ah, habs gefunden.. es gibt jetzt Datenpunkte.. ja ich weiss. wer lesen kann... stand im Changelog..
                          Muss das Script aendern.. dann gehts .. :-)

                          Hi,
                          nach dem Update auf 1.5.0 werden mir die Clientnamen nicht mehr angezeigt in den Objekten .. ?
                          c0d2a5bc-412c-4e12-a788-22eb3a1158af-image.png

                          @David-G dein Blockly zeigt seit 1.5.0 auch nicht mehr den Clientnamen an.. geht das bei dir noch?
                          b2177463-13d0-4ac9-a1e9-5cf386a8b665-image.png

                          NegaleinN 1 Antwort Letzte Antwort
                          0
                          • NegaleinN Negalein

                            @grizzelbee

                            Ich kann nicht sagen, ob diese Meldungen vor der 1.5.0 auch schon gekommen sind.
                            Mir sind sie gerade aufgefallen.

                            wireguard.0 2023-06-29 08:51:01.437	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.device" has to be type "undefined" but received type "string"
                            wireguard.0 2023-06-29 08:51:01.436	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.user" has to be type "undefined" but received type "string"
                            
                            B Offline
                            B Offline
                            bommel_030
                            schrieb am zuletzt editiert von
                            #86

                            @negalein
                            Hatte ich auch, einfach Objekte löschen und Adapter neu starten.

                            @ilovegym
                            Wenn ich den Changelog richtig verstanden habe wird das nicht mehr unterstützt. Hatte das auch gerne genutzt.

                            NegaleinN 1 Antwort Letzte Antwort
                            1
                            • ? Ein ehemaliger Benutzer

                              @grizzelbee
                              EDIT:
                              ah, habs gefunden.. es gibt jetzt Datenpunkte.. ja ich weiss. wer lesen kann... stand im Changelog..
                              Muss das Script aendern.. dann gehts .. :-)

                              Hi,
                              nach dem Update auf 1.5.0 werden mir die Clientnamen nicht mehr angezeigt in den Objekten .. ?
                              c0d2a5bc-412c-4e12-a788-22eb3a1158af-image.png

                              @David-G dein Blockly zeigt seit 1.5.0 auch nicht mehr den Clientnamen an.. geht das bei dir noch?
                              b2177463-13d0-4ac9-a1e9-5cf386a8b665-image.png

                              NegaleinN Offline
                              NegaleinN Offline
                              Negalein
                              Global Moderator
                              schrieb am zuletzt editiert von
                              #87

                              @ilovegym sagte in Tester für WireGuard Adapter gesucht:

                              nach dem Update auf 1.5.0 werden mir die Clientnamen nicht mehr angezeigt in den Objekten .. ?

                              die waren bei mir noch nie da. Habs händisch über den Bleistift eingetragen.

                              ° Node.js: 20.17.0 NPM: 10.8.2
                              ° Proxmox, Ubuntu 22.04.3 LTS
                              ° Fixer ---> iob fix

                              1 Antwort Letzte Antwort
                              0
                              • B bommel_030

                                @grizzelbee
                                Hab mir mal die 1.5.0 installiert. Die neuen Datenpunkte für die User finde ich super, fand die Bennennung der Peers aber auch ganz praktisch.
                                Ich habe leider immer noch das Problem, dass ich bei meinen 2 Servern die beide definitiv online sind, der als online=true angezeigt der als letztes gepollt wurde.
                                Es wechseln also im Abrufintervall beide von offline zu online und der andere von online zu offline.

                                GrizzelbeeG Offline
                                GrizzelbeeG Offline
                                Grizzelbee
                                Developer
                                schrieb am zuletzt editiert von Grizzelbee
                                #88

                                @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

                                fand die Bennennung der Peers aber auch ganz praktisch.

                                "fand" ist Vergangenheit. Ist da irgendwas kaputt gegangen? Habe ich etwas übersehen?
                                EDIT: Ah! Der Screenshot von @ilovegym zeigt es - das sollte eigentlich nicht kaputt gehen. Bei mir hat sich da in zwei verschiedenen Umgebungen, jeweils nichts getan.

                                Umfrage: Was ist euch lieber?

                                • Gruppenname, wie vorher, über einen einzigen Konfig-Eintrag oder (also genau das Verhalten wie bisher, was bedeutet das die eigentlich abgekündigte Konfig-Spalte doch bleiben würde)
                                • Gruppenname setzt sich zusammen aus: Name + Device (aus Name: Bernd und Device: Smartphone wird im Baum: Bernd Smartphone - und die bisherige Spalte in der Konfig fällt weg)

                                Ich habe leider immer noch das Problem, dass ich bei meinen 2 Servern die beide definitiv online sind, der als online=true angezeigt der als letztes gepollt wurde.
                                Es wechseln also im Abrufintervall beide von offline zu online und der andere von online zu offline.

                                Ach! F***! Richtig. Da war noch etwas. Das habe ich vergessen zu fixen.

                                Ich habe mir mal einen Issue dazu gemacht, damit ich das nicht wieder vergesse:
                                https://github.com/Grizzelbee/ioBroker.wireguard/issues/64

                                Danke für die Erinnerung!

                                @negalein sagte in Tester für WireGuard Adapter gesucht:

                                Ich kann nicht sagen, ob diese Meldungen vor der 1.5.0 auch schon gekommen sind.
                                Mir sind sie gerade aufgefallen.
                                wireguard.0 2023-06-29 08:51:01.437 info State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.device" has to be type "undefined" but received type "string" wireguard.0 2023-06-29 08:51:01.436 info State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.user" has to be type "undefined" but received type "string"

                                Hmm. Ich habe während der Entwicklung nichts dergleichen gesehen - gucke ich aber noch einmal genauer hin. Danke für die Info.

                                B NegaleinN 3 Antworten Letzte Antwort
                                0
                                • GrizzelbeeG Grizzelbee

                                  @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

                                  fand die Bennennung der Peers aber auch ganz praktisch.

                                  "fand" ist Vergangenheit. Ist da irgendwas kaputt gegangen? Habe ich etwas übersehen?
                                  EDIT: Ah! Der Screenshot von @ilovegym zeigt es - das sollte eigentlich nicht kaputt gehen. Bei mir hat sich da in zwei verschiedenen Umgebungen, jeweils nichts getan.

                                  Umfrage: Was ist euch lieber?

                                  • Gruppenname, wie vorher, über einen einzigen Konfig-Eintrag oder (also genau das Verhalten wie bisher, was bedeutet das die eigentlich abgekündigte Konfig-Spalte doch bleiben würde)
                                  • Gruppenname setzt sich zusammen aus: Name + Device (aus Name: Bernd und Device: Smartphone wird im Baum: Bernd Smartphone - und die bisherige Spalte in der Konfig fällt weg)

                                  Ich habe leider immer noch das Problem, dass ich bei meinen 2 Servern die beide definitiv online sind, der als online=true angezeigt der als letztes gepollt wurde.
                                  Es wechseln also im Abrufintervall beide von offline zu online und der andere von online zu offline.

                                  Ach! F***! Richtig. Da war noch etwas. Das habe ich vergessen zu fixen.

                                  Ich habe mir mal einen Issue dazu gemacht, damit ich das nicht wieder vergesse:
                                  https://github.com/Grizzelbee/ioBroker.wireguard/issues/64

                                  Danke für die Erinnerung!

                                  @negalein sagte in Tester für WireGuard Adapter gesucht:

                                  Ich kann nicht sagen, ob diese Meldungen vor der 1.5.0 auch schon gekommen sind.
                                  Mir sind sie gerade aufgefallen.
                                  wireguard.0 2023-06-29 08:51:01.437 info State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.device" has to be type "undefined" but received type "string" wireguard.0 2023-06-29 08:51:01.436 info State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.user" has to be type "undefined" but received type "string"

                                  Hmm. Ich habe während der Entwicklung nichts dergleichen gesehen - gucke ich aber noch einmal genauer hin. Danke für die Info.

                                  B Offline
                                  B Offline
                                  bommel_030
                                  schrieb am zuletzt editiert von
                                  #89

                                  @grizzelbee
                                  Ich hatte "damals" einen Peer bei der Namensgebung vergessen. Der hatte natürlich im Objektbaum keinen Namen nur die kryptische ID.
                                  Nun hab ich mit dem Adapterupdate dem auch einen Namen gegeben und bin beinahe wahnsinnig geworden weil der nicht auftauchte.
                                  Dann hab ich mal alles gelöscht und kein Name wurde neu erstellt. Hab das dann als work as deigned hingenommen.

                                  GrizzelbeeG 1 Antwort Letzte Antwort
                                  0
                                  • ? Offline
                                    ? Offline
                                    Ein ehemaliger Benutzer
                                    schrieb am zuletzt editiert von
                                    #90

                                    @grizzelbee

                                    ich bin fuer 1) - wie vorher, da muss man nicht die Scripte aendern :)
                                    Ja, da scheint was kaputt gegangen zu sein.. ich habs jetzt erstmal manuell mit dem Bleistift geaendert, aber bei einem Adapter-Update/Neustart wird das wahrscheinlich wieder geloescht..

                                    1 Antwort Letzte Antwort
                                    0
                                    • B bommel_030

                                      @grizzelbee
                                      Ich hatte "damals" einen Peer bei der Namensgebung vergessen. Der hatte natürlich im Objektbaum keinen Namen nur die kryptische ID.
                                      Nun hab ich mit dem Adapterupdate dem auch einen Namen gegeben und bin beinahe wahnsinnig geworden weil der nicht auftauchte.
                                      Dann hab ich mal alles gelöscht und kein Name wurde neu erstellt. Hab das dann als work as deigned hingenommen.

                                      GrizzelbeeG Offline
                                      GrizzelbeeG Offline
                                      Grizzelbee
                                      Developer
                                      schrieb am zuletzt editiert von Grizzelbee
                                      #91

                                      @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

                                      Dann hab ich mal alles gelöscht und kein Name wurde neu erstellt. Hab das dann als works as designed hingenommen.

                                      Nein - das ist definitv ein Bug. Die Peers sollen weiterhin Namen im Devicetree bekommen - das ist sonst zu unübersichtlich. Ich wollte lediglich die Art, wie der Name zustande kommt ändern.
                                      Deshalb: Äußert euch gerne mal alle zu meiner Umfrage, was für euch praktischer ist. Bei mir steht da nämlich immer nur:
                                      Papa Notebook
                                      Papa Smartphone
                                      Papa Tablet
                                      Kind 1 Smartphone
                                      Kind 1 Tablet
                                      Kind 2 Smartphone
                                      Kind 2 Tablet
                                      ...

                                      https://github.com/Grizzelbee/ioBroker.wireguard/issues/65

                                      @ilovegym sagte in Tester für WireGuard Adapter gesucht:

                                      ich bin fuer 1) - wie vorher, da muss man nicht die Scripte aendern

                                      Kann ich verstehen - führt aber, nur um das noch einmal klar zu sagen, dazu das da künftig drei Spalten in der Konfig bleiben. Die Frage ist ja eigentlich nur was da in den Devicetree geschrieben werden soll - und woher diese Daten kommen. Für Skrpite sollte das eigentlich keine Rolle spielen; die greifen ja nicht direkt in die Konfig des Adapters.

                                      B David G.D 2 Antworten Letzte Antwort
                                      0
                                      • GrizzelbeeG Grizzelbee

                                        @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

                                        Dann hab ich mal alles gelöscht und kein Name wurde neu erstellt. Hab das dann als works as designed hingenommen.

                                        Nein - das ist definitv ein Bug. Die Peers sollen weiterhin Namen im Devicetree bekommen - das ist sonst zu unübersichtlich. Ich wollte lediglich die Art, wie der Name zustande kommt ändern.
                                        Deshalb: Äußert euch gerne mal alle zu meiner Umfrage, was für euch praktischer ist. Bei mir steht da nämlich immer nur:
                                        Papa Notebook
                                        Papa Smartphone
                                        Papa Tablet
                                        Kind 1 Smartphone
                                        Kind 1 Tablet
                                        Kind 2 Smartphone
                                        Kind 2 Tablet
                                        ...

                                        https://github.com/Grizzelbee/ioBroker.wireguard/issues/65

                                        @ilovegym sagte in Tester für WireGuard Adapter gesucht:

                                        ich bin fuer 1) - wie vorher, da muss man nicht die Scripte aendern

                                        Kann ich verstehen - führt aber, nur um das noch einmal klar zu sagen, dazu das da künftig drei Spalten in der Konfig bleiben. Die Frage ist ja eigentlich nur was da in den Devicetree geschrieben werden soll - und woher diese Daten kommen. Für Skrpite sollte das eigentlich keine Rolle spielen; die greifen ja nicht direkt in die Konfig des Adapters.

                                        B Offline
                                        B Offline
                                        bommel_030
                                        schrieb am zuletzt editiert von
                                        #92

                                        @grizzelbee
                                        Ich bin für Name + Device als "Name" zur ID "Peer". Aktuell wird ja unter users ein Datenpunkt connected angelegt, Luxus wäre es, wenn zusätzlich zu jedem Device des Users ein Datenpunkt connected angelegt wird.

                                        1 Antwort Letzte Antwort
                                        0
                                        • GrizzelbeeG Grizzelbee

                                          @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

                                          Dann hab ich mal alles gelöscht und kein Name wurde neu erstellt. Hab das dann als works as designed hingenommen.

                                          Nein - das ist definitv ein Bug. Die Peers sollen weiterhin Namen im Devicetree bekommen - das ist sonst zu unübersichtlich. Ich wollte lediglich die Art, wie der Name zustande kommt ändern.
                                          Deshalb: Äußert euch gerne mal alle zu meiner Umfrage, was für euch praktischer ist. Bei mir steht da nämlich immer nur:
                                          Papa Notebook
                                          Papa Smartphone
                                          Papa Tablet
                                          Kind 1 Smartphone
                                          Kind 1 Tablet
                                          Kind 2 Smartphone
                                          Kind 2 Tablet
                                          ...

                                          https://github.com/Grizzelbee/ioBroker.wireguard/issues/65

                                          @ilovegym sagte in Tester für WireGuard Adapter gesucht:

                                          ich bin fuer 1) - wie vorher, da muss man nicht die Scripte aendern

                                          Kann ich verstehen - führt aber, nur um das noch einmal klar zu sagen, dazu das da künftig drei Spalten in der Konfig bleiben. Die Frage ist ja eigentlich nur was da in den Devicetree geschrieben werden soll - und woher diese Daten kommen. Für Skrpite sollte das eigentlich keine Rolle spielen; die greifen ja nicht direkt in die Konfig des Adapters.

                                          David G.D Online
                                          David G.D Online
                                          David G.
                                          schrieb am zuletzt editiert von David G.
                                          #93

                                          gelöscht

                                          Zeigt eure Lovelace-Visualisierung klick
                                          (Auch ideal um sich Anregungen zu holen)

                                          Meine Tabellen für eure Visualisierung klick

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          186

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe