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. Skripten / Logik
  4. JavaScript
  5. ecoflow-connector-Script zur dynamischen Leistungsanpassung

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    10
    1
    108

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

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

ecoflow-connector-Script zur dynamischen Leistungsanpassung

Scheduled Pinned Locked Moved JavaScript
1.7k Posts 127 Posters 780.7k Views 127 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.
  • W Waly_de

    @resilient ja, history Adapter muss laufen …

    R Offline
    R Offline
    resilient
    wrote on last edited by
    #552

    @waly_de
    sieht auf jeden Fall besser aus... aber nur wenn ich MinValueMin: 0 auf Echzeit stelle sonst kommen wieder die fehler:

    info: javascript.0 (10357) script.js.ecoflow-connector_v1142: Fehler beim Abrufen des niedrigsten Werts: Error: No data

    W 1 Reply Last reply
    0
    • R resilient

      @waly_de
      sieht auf jeden Fall besser aus... aber nur wenn ich MinValueMin: 0 auf Echzeit stelle sonst kommen wieder die fehler:

      info: javascript.0 (10357) script.js.ecoflow-connector_v1142: Fehler beim Abrufen des niedrigsten Werts: Error: No data

      W Offline
      W Offline
      Waly_de
      wrote on last edited by
      #553

      @resilient
      Script stoppen
      Realpower object löschen
      History an
      Script starten

      Dann sollte es laufen

      R M 2 Replies Last reply
      0
      • W Waly_de

        @resilient
        Script stoppen
        Realpower object löschen
        History an
        Script starten

        Dann sollte es laufen

        R Offline
        R Offline
        resilient
        wrote on last edited by
        #554

        @waly_de
        tatsächlich jetzt läufts auch mit nicht Echtzeit.... werde noch beobachten wie gut er es regelt wenn er nicht wie gerade voll einpeist...
        Vielen Dank schon mal für deine Hilfe und das Script, werde dir definitiv was auf Paypal schicken!

        Grüße

        W 1 Reply Last reply
        0
        • R resilient

          @waly_de
          tatsächlich jetzt läufts auch mit nicht Echtzeit.... werde noch beobachten wie gut er es regelt wenn er nicht wie gerade voll einpeist...
          Vielen Dank schon mal für deine Hilfe und das Script, werde dir definitiv was auf Paypal schicken!

          Grüße

          W Offline
          W Offline
          Waly_de
          wrote on last edited by
          #555

          @resilient prima 👌 freut mich das es läuft!

          1 Reply Last reply
          0
          • P Offline
            P Offline
            pasch
            wrote on last edited by
            #556

            Ich habe jetzt das ganze Objekt 0_userdata.0.ecoflow gelöscht und neu mit dem Skript 1142 angefangen. Leider ohne großen erfolg.

            2023-09-28 17:01:03.157 - info: javascript.0 (186) Start javascript script.js.ps1142
            2023-09-28 17:01:03.210 - info: javascript.0 (186) script.js.ps1142: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
            2023-09-28 17:01:03.376 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetDisplayBrightness
            2023-09-28 17:01:03.378 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetPrio
            2023-09-28 17:01:03.382 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetBatLimitLow
            2023-09-28 17:01:03.384 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetBatLimitHigh
            2023-09-28 17:01:03.385 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetAC
            2023-09-28 17:01:03.537 - info: javascript.0 (186) script.js.ps1142: Verbunden mit dem Ecoflow MQTT-Broker
            2023-09-28 17:01:13.219 - info: javascript.0 (186) script.js.ps1142: PowerStream [PowerStream] Batteriestand unter Limit:15% (0%). Limitiere Einspeiseleistung auf: 150W
            2023-09-28 17:08:17.120 - info: javascript.0 (186) script.js.ps1142: Verbunden mit dem Ecoflow MQTT-Broker
            2023-09-28 17:10:43.382 - info: javascript.0 (186) script.js.ps1142: PowerStream [PowerStream] Batteriestand ist jetzt über Limit:20% (98%). Maximale Einspeisung wieder bei: 600W
            2023-09-28 17:20:50.530 - info: javascript.0 (186) script.js.ps1142: PeakSkip Delta: 212
            

            setAC unter writeables ist auch nach 20 Minuten noch auf null
            332edcc8-a165-4034-983d-add4414626ea-grafik.png

            Ich werde später versuchen den Punkt zu finden weshalb setAC nicht gesetzt wird. Vielleicht hab ich ja Glück. :)

            W 1 Reply Last reply
            0
            • P pasch

              Ich habe jetzt das ganze Objekt 0_userdata.0.ecoflow gelöscht und neu mit dem Skript 1142 angefangen. Leider ohne großen erfolg.

              2023-09-28 17:01:03.157 - info: javascript.0 (186) Start javascript script.js.ps1142
              2023-09-28 17:01:03.210 - info: javascript.0 (186) script.js.ps1142: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
              2023-09-28 17:01:03.376 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetDisplayBrightness
              2023-09-28 17:01:03.378 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetPrio
              2023-09-28 17:01:03.382 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetBatLimitLow
              2023-09-28 17:01:03.384 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetBatLimitHigh
              2023-09-28 17:01:03.385 - info: javascript.0 (186) script.js.ps1142: Neues Writeable angelegt. Gerät:PowerStream Typ:PS Wert: SetAC
              2023-09-28 17:01:03.537 - info: javascript.0 (186) script.js.ps1142: Verbunden mit dem Ecoflow MQTT-Broker
              2023-09-28 17:01:13.219 - info: javascript.0 (186) script.js.ps1142: PowerStream [PowerStream] Batteriestand unter Limit:15% (0%). Limitiere Einspeiseleistung auf: 150W
              2023-09-28 17:08:17.120 - info: javascript.0 (186) script.js.ps1142: Verbunden mit dem Ecoflow MQTT-Broker
              2023-09-28 17:10:43.382 - info: javascript.0 (186) script.js.ps1142: PowerStream [PowerStream] Batteriestand ist jetzt über Limit:20% (98%). Maximale Einspeisung wieder bei: 600W
              2023-09-28 17:20:50.530 - info: javascript.0 (186) script.js.ps1142: PeakSkip Delta: 212
              

              setAC unter writeables ist auch nach 20 Minuten noch auf null
              332edcc8-a165-4034-983d-add4414626ea-grafik.png

              Ich werde später versuchen den Punkt zu finden weshalb setAC nicht gesetzt wird. Vielleicht hab ich ja Glück. :)

              W Offline
              W Offline
              Waly_de
              wrote on last edited by Waly_de
              #557

              @pasch Ich denke du hast mitgelesen?
              Bitte prüfe noch mal ob Du den History-Adapter installiert hast und dieses auch läuft.

              umeleU P 2 Replies Last reply
              0
              • W Waly_de

                @pasch Ich denke du hast mitgelesen?
                Bitte prüfe noch mal ob Du den History-Adapter installiert hast und dieses auch läuft.

                umeleU Offline
                umeleU Offline
                umele
                wrote on last edited by
                #558

                Ich brauche bitte auch noch mal Hilfe.

                • Das Script Version 1.1.4 läuft auf einem Raspi 4.
                • Ein PowerStream mit Delta Pro und Zusatzakku.
                • RealPower wird korrekt angelegt. History aktiv.
                • 0_userdata.0.ecoflow.app_device_property_HW51ZOxxxxxxxxxxxx.data.InverterHeartbeat.batSoc ist auch nach mehreren Stunden noch auf "0" und entsprechend bekomme ich auch die Nachricht "Batteriestand unter Limit" => entsprechend ist SetAC auch immer = 0
                • Die Kommunikation an sich klappt - wenn ich die Einspeisung in der App manuell auf z.B. 200 Watt stelle, ist sie eine Minute später wieder auf 0...

                Was kann ich noch nachprüfen?
                raspi batsoc.png
                raspi 1.png

                W 1 Reply Last reply
                0
                • umeleU umele

                  Ich brauche bitte auch noch mal Hilfe.

                  • Das Script Version 1.1.4 läuft auf einem Raspi 4.
                  • Ein PowerStream mit Delta Pro und Zusatzakku.
                  • RealPower wird korrekt angelegt. History aktiv.
                  • 0_userdata.0.ecoflow.app_device_property_HW51ZOxxxxxxxxxxxx.data.InverterHeartbeat.batSoc ist auch nach mehreren Stunden noch auf "0" und entsprechend bekomme ich auch die Nachricht "Batteriestand unter Limit" => entsprechend ist SetAC auch immer = 0
                  • Die Kommunikation an sich klappt - wenn ich die Einspeisung in der App manuell auf z.B. 200 Watt stelle, ist sie eine Minute später wieder auf 0...

                  Was kann ich noch nachprüfen?
                  raspi batsoc.png
                  raspi 1.png

                  W Offline
                  W Offline
                  Waly_de
                  wrote on last edited by
                  #559

                  @umele das sieht nach Kommunikationsproblemen zwischen PS und Delta aus. Der Wert batSoc wird selten, u.U. nur nach Änderung aktualisiert. Das kann also etwas dauern. Wenn er aber immer auf 0 steht, stimmt da was auf der EcoFlow Seite nicht.

                  Die PS muss mit dem Eingang 1 der Delta verbunden sein, der Zusatzakku mit Eingang 2.

                  umeleU 1 Reply Last reply
                  0
                  • W Waly_de

                    @umele das sieht nach Kommunikationsproblemen zwischen PS und Delta aus. Der Wert batSoc wird selten, u.U. nur nach Änderung aktualisiert. Das kann also etwas dauern. Wenn er aber immer auf 0 steht, stimmt da was auf der EcoFlow Seite nicht.

                    Die PS muss mit dem Eingang 1 der Delta verbunden sein, der Zusatzakku mit Eingang 2.

                    umeleU Offline
                    umeleU Offline
                    umele
                    wrote on last edited by
                    #560

                    @waly_de Danke für die schnelle Antwort. Habe gleich mal die Ports geprüft - sieht so aus, als wäre der Zusatzakku auf Port 1. Ich änder das gleich mal und melde mich wieder.
                    Delta Ports.jpg

                    umeleU 1 Reply Last reply
                    0
                    • umeleU umele

                      @waly_de Danke für die schnelle Antwort. Habe gleich mal die Ports geprüft - sieht so aus, als wäre der Zusatzakku auf Port 1. Ich änder das gleich mal und melde mich wieder.
                      Delta Ports.jpg

                      umeleU Offline
                      umeleU Offline
                      umele
                      wrote on last edited by
                      #561

                      @Waly_de - passt :+1:
                      Vielen lieben Dank!!

                      Das bedeutet dann im Umkehrschluss wohl, dass nur Port 1 ein "echter" Kommunikationsport ist - richtig? Dann muss ich bei einem Firmware-Update PowerStream und Zusatzakku kurzfristig wieder tauschen?

                      Super Arbeit!!

                      1 Reply Last reply
                      0
                      • W Waly_de

                        @pasch Ich denke du hast mitgelesen?
                        Bitte prüfe noch mal ob Du den History-Adapter installiert hast und dieses auch läuft.

                        P Offline
                        P Offline
                        pasch
                        wrote on last edited by
                        #562

                        @waly_de Danke das du mich noch mal mit der Nase darauf gestoßen hast. :)
                        Das war auch bei mir die Lösung. Ich hatte es nicht mit meinem Problem in Verbindung gebracht, weil ich keine Fehlermeldung in dieser Richtung bekommen hatte.

                        1 Reply Last reply
                        0
                        • K Offline
                          K Offline
                          kaiausBrieselang
                          wrote on last edited by
                          #563

                          Hallo,
                          ich habe mal eine Verständnisfrage:
                          wozu benötige ich die Parameter:
                          lowBatLimitPozOn: 30,
                          lowBatLimitPozOff:40,
                          lowBatLimit: 150,

                          Bei mir wird der Akku bis zum letzten % "leer" gezogen. Ich hätte erwartet, dass zumindest ab 30% "nur" noch auf 150W reduziert wird. Das klappt bei mir gar nicht.
                          Aber ich verstehe auch den Hintergrund nicht so ganz. Warum sollte ich "kurz vor Leer" die Ausgabeleistung "nur" auf 150W (oder einen beliebigen Wert) reduzieren. Entweder ich möchte die volle benötigte Leistung bis zur definierten Restladung haben oder nicht, aber was bringt eine reduzierte Abgabe?
                          Vielleicht verstehe ich das auch nicht richtig.

                          Dann habe ich noch eine weitere Frage.
                          Der Ladestand der Batterie wird ja hier angezeigt:
                          0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_bmsStatus.f32ShowSoc
                          0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_bmsStatus.soc
                          0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_emsStatus.f32LcdShowSoc
                          0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_emsStatus.lcdShowSoc

                          Aber um an die Werte heran zu kommen muss ich ja den D2M abfragen. Das wiederum erzeugt ja viel Datenstrom.
                          In den Einstellungen des PS in der APP wird ja auch der Batteriestand angezeigt.
                          Finde ich vielleicht den Wert irgendwo versteckt in den "userdaten" wieder ohne de D2M abzufragen?

                          vielen Lieben Dank für eure Hilfe.
                          Und vor allen für das tolle Script.

                          gruß Kai

                          P 1 Reply Last reply
                          0
                          • K kaiausBrieselang

                            Hallo,
                            ich habe mal eine Verständnisfrage:
                            wozu benötige ich die Parameter:
                            lowBatLimitPozOn: 30,
                            lowBatLimitPozOff:40,
                            lowBatLimit: 150,

                            Bei mir wird der Akku bis zum letzten % "leer" gezogen. Ich hätte erwartet, dass zumindest ab 30% "nur" noch auf 150W reduziert wird. Das klappt bei mir gar nicht.
                            Aber ich verstehe auch den Hintergrund nicht so ganz. Warum sollte ich "kurz vor Leer" die Ausgabeleistung "nur" auf 150W (oder einen beliebigen Wert) reduzieren. Entweder ich möchte die volle benötigte Leistung bis zur definierten Restladung haben oder nicht, aber was bringt eine reduzierte Abgabe?
                            Vielleicht verstehe ich das auch nicht richtig.

                            Dann habe ich noch eine weitere Frage.
                            Der Ladestand der Batterie wird ja hier angezeigt:
                            0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_bmsStatus.f32ShowSoc
                            0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_bmsStatus.soc
                            0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_emsStatus.f32LcdShowSoc
                            0_userdata.0.ecoflow.app_device_property_R351xxxxD2Mxxx.data.params.bms_emsStatus.lcdShowSoc

                            Aber um an die Werte heran zu kommen muss ich ja den D2M abfragen. Das wiederum erzeugt ja viel Datenstrom.
                            In den Einstellungen des PS in der APP wird ja auch der Batteriestand angezeigt.
                            Finde ich vielleicht den Wert irgendwo versteckt in den "userdaten" wieder ohne de D2M abzufragen?

                            vielen Lieben Dank für eure Hilfe.
                            Und vor allen für das tolle Script.

                            gruß Kai

                            P Offline
                            P Offline
                            Ponti92
                            wrote on last edited by
                            #564

                            @kaiausbrieselang ja das geht auch über

                            *.data.InverterHeartbeat.batSoc
                            
                            K 1 Reply Last reply
                            0
                            • P Offline
                              P Offline
                              pasch
                              wrote on last edited by
                              #565

                              Läuft super bisher. :)

                              Mir ist aufgefallen, dass "Other Loads" bei mir oft um 1-3 Watt schwankt. Gibt es die Möglichkeit zu sagen, nur bei Änderungen größer X den neuen Wert setzten? In den Einstellungen habe ich nichts gefunden.

                              Grüße
                              Patrick

                              1 Reply Last reply
                              0
                              • R Offline
                                R Offline
                                resilient
                                wrote on last edited by
                                #566

                                Gestern Abend ist mir was aufgefallen, das eventuell noch ein Bug sein könnte. Der erste PS mit Speicher war leer und der 2. hatte noch 60% aber das Script wollte/konnte
                                dem 2. PS die angeforderte Leistung nicht zuweisen er wollte immer den ersten bei dem die Batterie bereits leer war. Half nur das script zu stoppen und es manuell über die app zu machen.
                                Aber ansonsten läuft die Regelung ziemlich gut auch bei Echtzeit-Regelung.

                                1 Reply Last reply
                                0
                                • P Ponti92

                                  @kaiausbrieselang ja das geht auch über

                                  *.data.InverterHeartbeat.batSoc
                                  
                                  K Offline
                                  K Offline
                                  kaiausBrieselang
                                  wrote on last edited by
                                  #567

                                  @ponti92
                                  wieder was gelernt :-)
                                  Danke dir!!

                                  1 Reply Last reply
                                  0
                                  • S Offline
                                    S Offline
                                    sirdir
                                    wrote on last edited by sirdir
                                    #568

                                    Hm, das neue Script funktioniert für mich nicht. Es regelt überhaupt nichts. Der Debug Modus gibt leider auch keine sinnvollen Meldungen mehr aus sondern im Prinzip nur MQTT geschnatter. Disregard, beim cut&paste ist bei der Smartmeter ID was schief gegangen.

                                    1 Reply Last reply
                                    0
                                    • umeleU Offline
                                      umeleU Offline
                                      umele
                                      wrote on last edited by
                                      #569

                                      Hallo zusammen,

                                      Ich habe mal für mich selber zusätzlich zum Script mit Blockly was entworfen, was mir erlaubt, den täglichen Strombezug vom Netz zu monitoren.
                                      blockly Strombezug.png

                                      Die dafür nötigen Objekte habe ich manuell erstellt:
                                      neue Objekte.png

                                      Falls das interessant erscheint - vielleicht mag ja jemand das ins Script integrieren?

                                      1 Reply Last reply
                                      0
                                      • umeleU Offline
                                        umeleU Offline
                                        umele
                                        wrote on last edited by umele
                                        #570

                                        Hallo zusammen,

                                        Das Script läuft bei mir inzwischen reibungslos - vielen Dank @Waly_de für die super Arbeit!

                                        Ich möchte "lowBatLimitPozOn" von der Wettervorhersage abhängig machen.
                                        Wenn der kommende Tag sonnig wird, dann soll lowBatLimitPozOn = 10 sein, sonst lowBatLimitPozOn = 30 (möchte genügend Reserve für Stromausfälle behalten).
                                        Die Wettervorhersage bekomme ich vom Adapter "DasWetter". Über die Objekte

                                        • daswetter.0.NextDays.Location_1.Day_1.Wetter_Symbol_id

                                        und

                                        • daswetter.0.NextDays.Location_1.Day_1.Wetter_Symbol_id2

                                        kommt die Info, ob Vormittag, bzw. Nachmittag sonnig werden.

                                        Darauf basierend habe ich ein Objekt ("AkkuReserve") erstellt, das den gewünschten Wert für lowBatLimitPozOn enthält.

                                        "AkkuReserve" soll an lowBatLimitPozOn übergeben werden.

                                        Leider kann ich wirklich kein JavaScript...
                                        Kann mir bitte jemand dabei helfen?
                                        7535bac0-4d05-422e-a372-1de59c654df7-image.png

                                        Vielen Dank!

                                        W 1 Reply Last reply
                                        0
                                        • umeleU umele

                                          Hallo zusammen,

                                          Das Script läuft bei mir inzwischen reibungslos - vielen Dank @Waly_de für die super Arbeit!

                                          Ich möchte "lowBatLimitPozOn" von der Wettervorhersage abhängig machen.
                                          Wenn der kommende Tag sonnig wird, dann soll lowBatLimitPozOn = 10 sein, sonst lowBatLimitPozOn = 30 (möchte genügend Reserve für Stromausfälle behalten).
                                          Die Wettervorhersage bekomme ich vom Adapter "DasWetter". Über die Objekte

                                          • daswetter.0.NextDays.Location_1.Day_1.Wetter_Symbol_id

                                          und

                                          • daswetter.0.NextDays.Location_1.Day_1.Wetter_Symbol_id2

                                          kommt die Info, ob Vormittag, bzw. Nachmittag sonnig werden.

                                          Darauf basierend habe ich ein Objekt ("AkkuReserve") erstellt, das den gewünschten Wert für lowBatLimitPozOn enthält.

                                          "AkkuReserve" soll an lowBatLimitPozOn übergeben werden.

                                          Leider kann ich wirklich kein JavaScript...
                                          Kann mir bitte jemand dabei helfen?
                                          7535bac0-4d05-422e-a372-1de59c654df7-image.png

                                          Vielen Dank!

                                          W Offline
                                          W Offline
                                          Waly_de
                                          wrote on last edited by
                                          #571

                                          @umele hehe das ist eine tolle Idee 👍😊

                                          Vorschlag: wenn du schon ein Objekt selbst anlegst, dann scheib doch da den gewünschten wert für dein Limit rein, und wir ersetzen die entsprechende Variable im Script mit diesem Object…

                                          umeleU 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          324

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          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