Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. Neuer Adapter: ioBroker.stiebel-lwz / ioBroker.stiebel-isg

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    719

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Neuer Adapter: ioBroker.stiebel-lwz / ioBroker.stiebel-isg

Scheduled Pinned Locked Moved Entwicklung
419 Posts 17 Posters 93.0k Views 12 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • nik82N Offline
    nik82N Offline
    nik82
    Most Active
    wrote on last edited by
    #384

    @JB_Mystery
    Ich kenn mich zwar mit Javascript nicht aus, aber ist das normal das du 3 "=" Zeichen nach dem .val schreiben musst?

    Mach doch mal ein Blockly, das hier funktioniert bei mir einwandfrei:

    Blockly.JPG

    unltdnetworxU 1 Reply Last reply
    0
    • nik82N nik82

      @JB_Mystery
      Ich kenn mich zwar mit Javascript nicht aus, aber ist das normal das du 3 "=" Zeichen nach dem .val schreiben musst?

      Mach doch mal ein Blockly, das hier funktioniert bei mir einwandfrei:

      Blockly.JPG

      unltdnetworxU Offline
      unltdnetworxU Offline
      unltdnetworx
      Developer
      wrote on last edited by
      #385

      @nik82
      Das mit den === bewirkt das gleiche wie == mit dem Unterschied, dass der Typ exakt übereinstimmen muss. Also true muss vom Typ boolean sein. Bei den 2= wird auch der Datentyp konvertiert. Sollte also auch 1 statt true akzeptieren.

      Gruß, Michael
      Weitere Infos im Profil.
      Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

      1 Reply Last reply
      0
      • J JB_Mystery

        @unltdnetworx
        Kannst du mir bitte kurz helfen? Ich versuche über die Betriebsstatusmeldung "Verdichter" mir eine Mail zu schreiben, wenn der Verdichter angegangen ist. Ich versuche es wie nachfolgend, aber leider kommt die Mail nicht. Hängt bestimmt mit dem undefinierten Zustand der Variablen zusammen, wenn sie nicht da ist. Bin aber für jede Anmerkung dankbar. Mail-Adresse natürlich als Dummy. Andere Mails kommen an, also ist dort nicht der Fehler. Vielen Dank.

        on({id: 'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.VERDICHTER', change: "ne"}, function (obj) {
            if (getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.VERDICHTER').val === true) {
                if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val == 2) {
                    sendTo("email", {
                        from:    "ioBroker Heizung <xy@z.de>",
                        to:      "xy@z.de",
                        subject: "Heizung",
                        text:    "Heizbetrieb - Verdichter ist angegangen und läuft. "
                    });
                }
                if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val == 4) {
                    sendTo("email", {
                        from:    "ioBroker Heizung <xy@z.de>",
                        to:      "xy@z.de",
                        subject: "Warmwasser",
                        text:    "Warmwasserbetrieb - Verdichter ist angegangen und läuft. "
                    });
                }
            }
        });
        
        unltdnetworxU Offline
        unltdnetworxU Offline
        unltdnetworx
        Developer
        wrote on last edited by
        #386

        @JB_Mystery
        Das wäre auch mein Vorschlag gewesen, erst mal mit Blockly testen. Oder den Punkt mal loggen lassen und schauen, ob er überhaupt geschrieben wird.

        Ich schau mir das später mal an, bin gerade unterwegs.

        Gruß, Michael
        Weitere Infos im Profil.
        Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

        1 Reply Last reply
        0
        • J Offline
          J Offline
          JB_Mystery
          wrote on last edited by
          #387

          Habe ein Blockly versucht, leider mit gleichem Ergebnis; keine Mail kam. Wobei ich dazu sagen muss, dass es mein erstes Blockly ist.

          Blockly.jpg
          Habe extra Screenshots gemacht, während Warmwasser erzeugt wurde, damit das true zu sehen ist.

          LOG.jpg
          Verdichter.jpg

          Bin für jeden Tipp bzw. Hilfe dankbar.

          J 1 Reply Last reply
          0
          • nik82N Offline
            nik82N Offline
            nik82
            Most Active
            wrote on last edited by nik82
            #388

            Mach doch erstmal eines, mach oben beim Blockly statt "geändert" auf "aktualisiert", dann machst gleich nach dem Verdichter = wahr eine Email und schaust erstmal ob die Email kommt wenn der Verdichter sich ändern und dann gehst den nächsten Schritt.

            P.S. Bei dem Ventil könnte es auch sein das du die 2 nicht als Zahl sondern als Text angeben musst.

            1 Reply Last reply
            0
            • unltdnetworxU Offline
              unltdnetworxU Offline
              unltdnetworx
              Developer
              wrote on last edited by
              #389

              Oder statt einer E-Mail ein Log schreiben lassen. Dann hat man sofort Rückmeldung und ein weiteres Problem ausgeschlossen.

              Gruß, Michael
              Weitere Infos im Profil.
              Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

              1 Reply Last reply
              0
              • J Offline
                J Offline
                JB_Mystery
                wrote on last edited by
                #390

                Ich habe jetzt die letzten Tage weiter rum experimentiert. Dabei hat sich rausgestellt, dass ich e-Mails senden kann. Daran liegt es nicht.
                Weder Javascript noch Blockly erkennen die Änderung von Werten. Aber warum verstehe ich nicht, da der Wert WAHR zu sein scheint. Siehe dazu Test-Blockly und Log-Auszug. Da ich nicht jeden Tag Warmwasser erzeuge, bin ich für die Testung auf die Pumpe gewechselt. Sind aber die selben Probleme.
                Habt ihr dazu jetzt noch Ideen? Bin für alles Dankbar.

                Pumpe.jpg
                LOG2.jpg

                unltdnetworxU 1 Reply Last reply
                0
                • J JB_Mystery

                  Ich habe jetzt die letzten Tage weiter rum experimentiert. Dabei hat sich rausgestellt, dass ich e-Mails senden kann. Daran liegt es nicht.
                  Weder Javascript noch Blockly erkennen die Änderung von Werten. Aber warum verstehe ich nicht, da der Wert WAHR zu sein scheint. Siehe dazu Test-Blockly und Log-Auszug. Da ich nicht jeden Tag Warmwasser erzeuge, bin ich für die Testung auf die Pumpe gewechselt. Sind aber die selben Probleme.
                  Habt ihr dazu jetzt noch Ideen? Bin für alles Dankbar.

                  Pumpe.jpg
                  LOG2.jpg

                  unltdnetworxU Offline
                  unltdnetworxU Offline
                  unltdnetworx
                  Developer
                  wrote on last edited by unltdnetworx
                  #391

                  @JB_Mystery
                  Teste doch mal dein erstes Skript mit einem Log nach der ersten Abfrage (Verdichter). Und bau dir ein anderes Skript und teste, ob die Stufen des Ventils auch wirklich als Zahlen abgefragt werden.

                  Also lediglich ein Skript, das einmalig beim Ausführen auf 4 bzw. "4" testet.

                  Hatte schon öfter das Problem, dass Zahlen als Strings angegeben werden müssen.

                  Gruß, Michael
                  Weitere Infos im Profil.
                  Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                  1 Reply Last reply
                  0
                  • J Offline
                    J Offline
                    JB_Mystery
                    wrote on last edited by
                    #392

                    Ich bin etwas weiter. Egal wie ich eine Änderung abfrage Blockly oder Javascript, sie wird nicht erkannt. Warum weis ich nicht. Nur Aktualisiert bzw. Vergleich auf Wahr wird ausgeführt.

                    on({id: 'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE', change: "ne"}, function (obj) {
                        log ("Verdichter Änderung");
                        if (getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE').val === true) {
                            log ("Verdichter = TRUE");
                            if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = 2) log ("Verdichter = Heizbetrieb - Vergleich Zahl");
                            if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = 4) log ("Verdichter = Warmwasserbetrieb - Vergleich Zahl");
                            if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = "2") log ("Verdichter = Heizbetrieb - Vergleich String");
                            if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = "4") log ("Verdichter = Warmwasserbetrieb - Vergleich String");
                        }
                    });
                    

                    Hier kam überhaupt kein Log. Die Ventil Geschichte gehe ich an, wenn ich die Änderung Verdichter mitbekomme.

                    Log3.jpg

                    Auch hier wurden immer nur aktualisiert und WAHR ausgegeben im LOG.

                    Kann es sein, dass beides die Änderung von undefiniert zu WAHR nicht als Änderung wahrnimmt?
                    Wie kann ich sonst auf die erstmalige Steigende Flanke von Verdichter reagieren? Außer jetzt eine Variable zu setzen, die die Ausführung des Scriptes verhintert beim erneuten Aufruf. Wenn alles nichts Hilft, dann werde ich natürlich diesen Workaround machen.

                    unltdnetworxU 1 Reply Last reply
                    0
                    • J JB_Mystery

                      Ich bin etwas weiter. Egal wie ich eine Änderung abfrage Blockly oder Javascript, sie wird nicht erkannt. Warum weis ich nicht. Nur Aktualisiert bzw. Vergleich auf Wahr wird ausgeführt.

                      on({id: 'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE', change: "ne"}, function (obj) {
                          log ("Verdichter Änderung");
                          if (getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE').val === true) {
                              log ("Verdichter = TRUE");
                              if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = 2) log ("Verdichter = Heizbetrieb - Vergleich Zahl");
                              if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = 4) log ("Verdichter = Warmwasserbetrieb - Vergleich Zahl");
                              if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = "2") log ("Verdichter = Heizbetrieb - Vergleich String");
                              if (getState('stiebel-isg.0.Info.FACHMANN.PROZESSWERTE.POSITION_VENTIL').val = "4") log ("Verdichter = Warmwasserbetrieb - Vergleich String");
                          }
                      });
                      

                      Hier kam überhaupt kein Log. Die Ventil Geschichte gehe ich an, wenn ich die Änderung Verdichter mitbekomme.

                      Log3.jpg

                      Auch hier wurden immer nur aktualisiert und WAHR ausgegeben im LOG.

                      Kann es sein, dass beides die Änderung von undefiniert zu WAHR nicht als Änderung wahrnimmt?
                      Wie kann ich sonst auf die erstmalige Steigende Flanke von Verdichter reagieren? Außer jetzt eine Variable zu setzen, die die Ausführung des Scriptes verhintert beim erneuten Aufruf. Wenn alles nichts Hilft, dann werde ich natürlich diesen Workaround machen.

                      unltdnetworxU Offline
                      unltdnetworxU Offline
                      unltdnetworx
                      Developer
                      wrote on last edited by
                      #393

                      @JB_Mystery
                      Jetzt wird mir gerade klar, wo das Problem bei dir liegt. Stand wohl auf dem Schlauch.

                      Du wirst keine Änderung mitbekommen, da die ISG Oberfläche keine wirkliche Änderung vollzieht. Die Heizkreispumpe wird (meine ich aus dem Kopf) nur mittels eines Symbols auf der Startseite angezeigt oder eben nicht. Daher wird der Datenpunkt nur auf "true" oder eben gar nicht gesetzt. Somit ändert sich der Wert auch nicht sondern wird lediglich ungültig nach einer bestimmten Zeit.

                      Gruß, Michael
                      Weitere Infos im Profil.
                      Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                      1 Reply Last reply
                      0
                      • J Offline
                        J Offline
                        JB_Mystery
                        wrote on last edited by
                        #394

                        Das weis ich ja, deswegen schrieb ich ja undefiniert. Dann verstehe ich aber nicht, warum es bei @nik82 funktioniert und auch bei mir früher mal ging. Versuche gerade den Workaround zu Basteln. Werde berichten.

                        @nik82 sagte in Neuer Adapter: ioBroker.stiebel-lwz / ioBroker.stiebel-isg:

                        @JB_Mystery
                        Ich kenn mich zwar mit Javascript nicht aus, aber ist das normal das du 3 "=" Zeichen nach dem .val schreiben musst?

                        Mach doch mal ein Blockly, das hier funktioniert bei mir einwandfrei:

                        Blockly.JPG

                        1 Reply Last reply
                        0
                        • nik82N Offline
                          nik82N Offline
                          nik82
                          Most Active
                          wrote on last edited by
                          #395

                          Also bei mir wird auch nur WAHR ausgewertet, sonst nichts. Alles andere geht nicht, das haben wir ja alles schon zig seiten vorher mal diskutiert.
                          Werde mal nochmal einen Test machen und gebe dann nochmal Bescheid.

                          1 Reply Last reply
                          0
                          • J Offline
                            J Offline
                            JB_Mystery
                            wrote on last edited by
                            #396

                            @nik82
                            Aber dein Starttrigger ist Elektrische Nacherwärmung geändert, oder bin ich da falsch? Und dies wird nur einmal ausgeführt, oder? Sonst müsstest du ja permanent die Telegramme bekommen.

                            1 Reply Last reply
                            0
                            • nik82N Offline
                              nik82N Offline
                              nik82
                              Most Active
                              wrote on last edited by
                              #397

                              Ja, weil der Zustand von undefiniert in wahr ist ja eine Änderung und von wahr auf undefiniert müsste er auch eine Änderung erkennen. Aber ich werd das mal mit z.B. Warmwasser nochmal testen und gebe Bescheid.
                              Denn der Heizstab wird so schnell hoffentlich nicht einschalten:-)

                              1 Reply Last reply
                              0
                              • nik82N Offline
                                nik82N Offline
                                nik82
                                Most Active
                                wrote on last edited by
                                #398

                                So habe es jetzt getestet und es funktioniert einwandfrei mit diesem Script:

                                1.JPG

                                Ergebniss:

                                2.JPG

                                @JB_Mystery
                                Bei deinem Testscript oben hast du erstens den Trigger auf aktualisiert und nicht auf geändert, dann hast du nochmal eine "falls" Abfrage in der "falls" Abfrage.

                                Jetzt mach doch mal eines, mach GENAU mein Script oben und als Ausgabe wenn du nicht Telegram willst, mach einfach Email oder Debug out, aber mach mal GENAU das Script und gib uns Bescheid was dann passiert.

                                1 Reply Last reply
                                0
                                • J Offline
                                  J Offline
                                  JB_Mystery
                                  wrote on last edited by
                                  #399

                                  Habe dies getestet:
                                  Blockly2.jpg
                                  Ergebnis: Es kam kein LOG.

                                  Bin dann weiter auf die Suche gegangen. Mein Wert scheint irgendwie auf TRUE zu stehen, obwohl er nirgends als TRUE dargestellt zu sein scheint.
                                  Objekte.jpg

                                  schedule("*/50 * * * * *", function () { //alle 30 Sek.
                                      if (getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE').val = true) log ("Heizkreispumpe AN = TRUE; " + getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE').val);
                                  });
                                  

                                  Log3.jpg

                                  Ich habe jetzt auch die Log Funktion aktiviert und die minimalen Pumpenzyklen erhöht, so dass ich heute mehrmals testen kann. Also mal abwarten. Ich weis nur nicht, was es bringt? Objekte kein Eintrag und auch im Flot sehe ich kein true.

                                  Idee: Wie kann ich die undefinierten Werte (bei mir anscheinend TRUE) = false setzen, wenn sie nicht true sind? Oder geht das im Adapter?

                                  Ich verzweifel hier noch.

                                  unltdnetworxU 1 Reply Last reply
                                  0
                                  • nik82N Offline
                                    nik82N Offline
                                    nik82
                                    Most Active
                                    wrote on last edited by
                                    #400

                                    Es geht ja darum mal zu wissen ob bei dir generell etwas nicht stimmt und dann können wir ja weiter schauen.

                                    Wenn die Heizkreispumpe läuft, geht denn dann dein Objekt auf TRUE? Weil laut Screenshot oben ist es ja undefiniert, also steht gar nichts drin. Du loggst ja den Wert mit der History oder? Zeig mal was er da alles drin hat.

                                    Ich hab da auch mal etwas gebastelt um die Werte statt undefiniert auf FALSE zu setzen:

                                    1.JPG

                                    Das funktioniert auch, ABER es ist nicht nötig, denn der TRUE wert wird immer richtig dargestellt und das reicht, deswegen müssen wir ja wissen ob das bei dir der Fall ist, denn wenn der TRUE Wert nicht richtig dargestellt wird, dann ist ja überhaupt was faul.

                                    unltdnetworxU 1 Reply Last reply
                                    0
                                    • J JB_Mystery

                                      Habe dies getestet:
                                      Blockly2.jpg
                                      Ergebnis: Es kam kein LOG.

                                      Bin dann weiter auf die Suche gegangen. Mein Wert scheint irgendwie auf TRUE zu stehen, obwohl er nirgends als TRUE dargestellt zu sein scheint.
                                      Objekte.jpg

                                      schedule("*/50 * * * * *", function () { //alle 30 Sek.
                                          if (getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE').val = true) log ("Heizkreispumpe AN = TRUE; " + getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE').val);
                                      });
                                      

                                      Log3.jpg

                                      Ich habe jetzt auch die Log Funktion aktiviert und die minimalen Pumpenzyklen erhöht, so dass ich heute mehrmals testen kann. Also mal abwarten. Ich weis nur nicht, was es bringt? Objekte kein Eintrag und auch im Flot sehe ich kein true.

                                      Idee: Wie kann ich die undefinierten Werte (bei mir anscheinend TRUE) = false setzen, wenn sie nicht true sind? Oder geht das im Adapter?

                                      Ich verzweifel hier noch.

                                      unltdnetworxU Offline
                                      unltdnetworxU Offline
                                      unltdnetworx
                                      Developer
                                      wrote on last edited by
                                      #401

                                      @JB_Mystery
                                      Ich denke, der Wert wird NICHT geändert. Er verliert nur seine Gültigkeit. Vermutlich ist das keine Änderung. Teste doch mal mit aktualisiert und bau eine Prüfung ein, ob der Wert noch gültig ist, falls das geht. Ansonsten ob die letzte Aktualisierung nicht älter ist, als 2x deine eingestellte Aktualisierungszeit aus dem Adapter.

                                      Gruß, Michael
                                      Weitere Infos im Profil.
                                      Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                                      1 Reply Last reply
                                      0
                                      • nik82N nik82

                                        Es geht ja darum mal zu wissen ob bei dir generell etwas nicht stimmt und dann können wir ja weiter schauen.

                                        Wenn die Heizkreispumpe läuft, geht denn dann dein Objekt auf TRUE? Weil laut Screenshot oben ist es ja undefiniert, also steht gar nichts drin. Du loggst ja den Wert mit der History oder? Zeig mal was er da alles drin hat.

                                        Ich hab da auch mal etwas gebastelt um die Werte statt undefiniert auf FALSE zu setzen:

                                        1.JPG

                                        Das funktioniert auch, ABER es ist nicht nötig, denn der TRUE wert wird immer richtig dargestellt und das reicht, deswegen müssen wir ja wissen ob das bei dir der Fall ist, denn wenn der TRUE Wert nicht richtig dargestellt wird, dann ist ja überhaupt was faul.

                                        unltdnetworxU Offline
                                        unltdnetworxU Offline
                                        unltdnetworx
                                        Developer
                                        wrote on last edited by
                                        #402

                                        @nik82
                                        Genau so meinte ich das. 👍

                                        Gruß, Michael
                                        Weitere Infos im Profil.
                                        Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                                        1 Reply Last reply
                                        0
                                        • nik82N Offline
                                          nik82N Offline
                                          nik82
                                          Most Active
                                          wrote on last edited by
                                          #403

                                          Also es ist definitiv eine Änderung wenn die Gültigkeit verloren geht, das Beweist ja das Script oben von mir:-)

                                          1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          264

                                          Online

                                          32.7k

                                          Users

                                          82.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe