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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Parser Wert auslesen aber wie?

NEWS

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

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

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

Parser Wert auslesen aber wie?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
147 Beiträge 5 Kommentatoren 18.7k Aufrufe 3 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.
  • mickymM mickym

    Du könntest noch versuchen folgenden Header zu nutzen:

    9115e6ee-1e06-49b9-8f52-2a0c772a0ca5-image.png

    in der HTTP- Request Node.

    G Offline
    G Offline
    G.Hawk
    schrieb am zuletzt editiert von
    #49

    @mickym
    geht leider auch nicht

    Das war der Anfang:
    https://forum.iobroker.net/topic/57079/ewe-elmo-smartmeter-wifi-einbinden

    1 Antwort Letzte Antwort
    0
    • mickymM Online
      mickymM Online
      mickym
      Most Active
      schrieb am zuletzt editiert von mickym
      #50

      @g-hawk Kannst Du wenn Du im Browser das Aufrufs - mal das Entwicklerfenster anschauen, ob da bestimmte Header gesetzt werden. Vielleicht verbietet die App auch ein direktes aufrufen. Mach mal ein Browserfenster auf - ruf die Daten ab und drücke F12.

      Das Problem liegt am Aufruf - da kann kein Tool was mit anfangen und auch kein Adapter wenn man nicht weiß, warum das so nicht abrufbar ist.

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      G 1 Antwort Letzte Antwort
      0
      • mickymM mickym

        @g-hawk Kannst Du wenn Du im Browser das Aufrufs - mal das Entwicklerfenster anschauen, ob da bestimmte Header gesetzt werden. Vielleicht verbietet die App auch ein direktes aufrufen. Mach mal ein Browserfenster auf - ruf die Daten ab und drücke F12.

        Das Problem liegt am Aufruf - da kann kein Tool was mit anfangen und auch kein Adapter wenn man nicht weiß, warum das so nicht abrufbar ist.

        G Offline
        G Offline
        G.Hawk
        schrieb am zuletzt editiert von
        #51

        @mickym

        Unbenannt.PNG

        mickymM 1 Antwort Letzte Antwort
        0
        • G G.Hawk

          @mickym

          Unbenannt.PNG

          mickymM Online
          mickymM Online
          mickym
          Most Active
          schrieb am zuletzt editiert von mickym
          #52

          @g-hawk Klapp mal oben das alles auf, was unter head steht. Und wieder Screenshot. Allerdings =$0 schon da steht sehe ich eher schwarz. Dann werden die Daten dynamisch bereitgestellt und nicht als HTML Seite.

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          G 1 Antwort Letzte Antwort
          0
          • mickymM mickym

            @g-hawk Klapp mal oben das alles auf, was unter head steht. Und wieder Screenshot. Allerdings =$0 schon da steht sehe ich eher schwarz. Dann werden die Daten dynamisch bereitgestellt und nicht als HTML Seite.

            G Offline
            G Offline
            G.Hawk
            schrieb am zuletzt editiert von
            #53

            @mickym
            Unbenannt.PNG

            mickymM 1 Antwort Letzte Antwort
            0
            • G G.Hawk

              @mickym
              Unbenannt.PNG

              mickymM Online
              mickymM Online
              mickym
              Most Active
              schrieb am zuletzt editiert von
              #54

              @g-hawk Also ich befürchte, dass man das so nicht direkt auslesen kann, deswegen klappt es weder mit Blockly, NodeRed noch dem Parser. Ich kann Dir da leider auch nicht mehr weiter helfen. Kannst also NodeRed wieder löschen.

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              G 1 Antwort Letzte Antwort
              0
              • mickymM mickym

                @g-hawk Also ich befürchte, dass man das so nicht direkt auslesen kann, deswegen klappt es weder mit Blockly, NodeRed noch dem Parser. Ich kann Dir da leider auch nicht mehr weiter helfen. Kannst also NodeRed wieder löschen.

                G Offline
                G Offline
                G.Hawk
                schrieb am zuletzt editiert von G.Hawk
                #55

                @mickym
                Mit dem Parser klappt es ja mir fehlen nur die richtigen regex Befehle
                Ich kann das so auslesen, das Problem das er den Wert nicht findet, tritt nur auf wenn der Wert negativ wird ich muss den RegEX Ausdruck "255":([\d.]+)" anpassen, ich weiß nur nicht wie
                Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                Und ich muss im Parser ankreuzen " Verwenden sie einen unsicheren HTTP Parser

                mickymM 2 Antworten Letzte Antwort
                0
                • G G.Hawk

                  @mickym
                  Mit dem Parser klappt es ja mir fehlen nur die richtigen regex Befehle
                  Ich kann das so auslesen, das Problem das er den Wert nicht findet, tritt nur auf wenn der Wert negativ wird ich muss den RegEX Ausdruck "255":([\d.]+)" anpassen, ich weiß nur nicht wie
                  Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                  Und ich muss im Parser ankreuzen " Verwenden sie einen unsicheren HTTP Parser

                  mickymM Online
                  mickymM Online
                  mickym
                  Most Active
                  schrieb am zuletzt editiert von
                  #56

                  @g-hawk Na ok - das bekommen wir hin. Also diesen negativ Wert brauchst Du - ein Minus davor hat nicht geklappt?

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  mickymM G 2 Antworten Letzte Antwort
                  0
                  • mickymM mickym

                    @g-hawk Na ok - das bekommen wir hin. Also diesen negativ Wert brauchst Du - ein Minus davor hat nicht geklappt?

                    mickymM Online
                    mickymM Online
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von
                    #57

                    @mickym Hake in Node Red doch noch mal das hier an:

                    750a3577-ff34-4b92-99f8-20ca07b40276-image.png

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    1 Antwort Letzte Antwort
                    0
                    • G G.Hawk

                      @mickym
                      Mit dem Parser klappt es ja mir fehlen nur die richtigen regex Befehle
                      Ich kann das so auslesen, das Problem das er den Wert nicht findet, tritt nur auf wenn der Wert negativ wird ich muss den RegEX Ausdruck "255":([\d.]+)" anpassen, ich weiß nur nicht wie
                      Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                      Und ich muss im Parser ankreuzen " Verwenden sie einen unsicheren HTTP Parser

                      mickymM Online
                      mickymM Online
                      mickym
                      Most Active
                      schrieb am zuletzt editiert von mickym
                      #58

                      @g-hawk sagte in Parser Wert auslesen aber wie?:

                      Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                      Ja können wir machen du brauchst mE nur ein - davor mit ?

                      Aber probier mal parallel die Option disable strict parsing in Node Red

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      G 1 Antwort Letzte Antwort
                      0
                      • mickymM mickym

                        @g-hawk Na ok - das bekommen wir hin. Also diesen negativ Wert brauchst Du - ein Minus davor hat nicht geklappt?

                        G Offline
                        G Offline
                        G.Hawk
                        schrieb am zuletzt editiert von
                        #59

                        @mickym

                        Also:
                        Das ruft der Parser ab:

                        {"meterId":"1KFM0000028196","deviceId":"EBSD1425009486","msgType":"EMETER_OBIS_V2","measurements":[{"timestamp":"2023-04-02T11:32:33Z","values":{"1-0:96.90.2*1":"7E2005D2","1-0:0.2.0*0":"312E3033","1-0:14.7.0*255":49.900001525878906,"1-0:81.7.26*255":52,"1-0:81.7.15*255":331,"1-0:81.7.4*255":188,"1-0:81.7.2*255":239,"1-0:81.7.1*255":117,"1-0:71.7.0*255":1.1100000143051147,"1-0:51.7.0*255":0.73000001907348633,"1-0:31.7.0*255":1.8999999761581421,"1-0:72.7.0*255":235.5,"1-0:52.7.0*255":233.80000305175781,"1-0:32.7.0*255":235.89999389648438,"1-0:16.7.0*255":-152,"1-0:2.8.0*255":0.52590000629425049,"1-0:1.8.0*255":10474.70703125,"1-0:96.1.0*255":"0A014B464D0000006E24","1-0:96.50.1*1":"4B464D"}}]}
                        

                        ich brauche die Werte hinter:

                        1-0:16.7.0255
                        1-0:2.8.0
                        255
                        1-0:1.8.0*255

                        mickymM 1 Antwort Letzte Antwort
                        0
                        • mickymM mickym

                          @g-hawk sagte in Parser Wert auslesen aber wie?:

                          Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                          Ja können wir machen du brauchst mE nur ein - davor mit ?

                          Aber probier mal parallel die Option disable strict parsing in Node Red

                          G Offline
                          G Offline
                          G.Hawk
                          schrieb am zuletzt editiert von
                          #60

                          @mickym sagte in Parser Wert auslesen aber wie?:

                          @g-hawk sagte in Parser Wert auslesen aber wie?:

                          Gibt es nicht einen Online Generator dafür, der mir einfach den RegEX Ausdruck anzeigt, den ich da eintragen muss?

                          Ja können wir machen du brauchst mE nur ein - davor mit ?

                          Aber probier mal parallel die Option disable strict parsing in Node Red

                          Geht leider nicht

                          1 Antwort Letzte Antwort
                          0
                          • G G.Hawk

                            @mickym

                            Also:
                            Das ruft der Parser ab:

                            {"meterId":"1KFM0000028196","deviceId":"EBSD1425009486","msgType":"EMETER_OBIS_V2","measurements":[{"timestamp":"2023-04-02T11:32:33Z","values":{"1-0:96.90.2*1":"7E2005D2","1-0:0.2.0*0":"312E3033","1-0:14.7.0*255":49.900001525878906,"1-0:81.7.26*255":52,"1-0:81.7.15*255":331,"1-0:81.7.4*255":188,"1-0:81.7.2*255":239,"1-0:81.7.1*255":117,"1-0:71.7.0*255":1.1100000143051147,"1-0:51.7.0*255":0.73000001907348633,"1-0:31.7.0*255":1.8999999761581421,"1-0:72.7.0*255":235.5,"1-0:52.7.0*255":233.80000305175781,"1-0:32.7.0*255":235.89999389648438,"1-0:16.7.0*255":-152,"1-0:2.8.0*255":0.52590000629425049,"1-0:1.8.0*255":10474.70703125,"1-0:96.1.0*255":"0A014B464D0000006E24","1-0:96.50.1*1":"4B464D"}}]}
                            

                            ich brauche die Werte hinter:

                            1-0:16.7.0255
                            1-0:2.8.0
                            255
                            1-0:1.8.0*255

                            mickymM Online
                            mickymM Online
                            mickym
                            Most Active
                            schrieb am zuletzt editiert von mickym
                            #61

                            @g-hawk sagte in Parser Wert auslesen aber wie?:

                            1-0:16.7.0255

                            So was immer in CodeTags - sonst verschluckt es den Stern:
                            3469e347-e8e9-41f5-9073-a6e71ef9ce54-image.png

                            Also ich weiss nicht wie das in dem Parser-Adapter eingetragen werden muss.
                            Hier siehst du den ganzen Match und in der Group den Wert:

                            (-?\d+\.?\d+)
                            

                            Damit kannst Du alle Zahlen auslesen - der Rest ist damit das vorne dran matched.

                            Mit dem Link kannst Du selber testen.

                            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                            G 1 Antwort Letzte Antwort
                            0
                            • mickymM mickym

                              @g-hawk sagte in Parser Wert auslesen aber wie?:

                              1-0:16.7.0255

                              So was immer in CodeTags - sonst verschluckt es den Stern:
                              3469e347-e8e9-41f5-9073-a6e71ef9ce54-image.png

                              Also ich weiss nicht wie das in dem Parser-Adapter eingetragen werden muss.
                              Hier siehst du den ganzen Match und in der Group den Wert:

                              (-?\d+\.?\d+)
                              

                              Damit kannst Du alle Zahlen auslesen - der Rest ist damit das vorne dran matched.

                              Mit dem Link kannst Du selber testen.

                              G Offline
                              G Offline
                              G.Hawk
                              schrieb am zuletzt editiert von
                              #62

                              @mickym
                              Danke ich probiere es

                              1 Antwort Letzte Antwort
                              0
                              • mickymM Online
                                mickymM Online
                                mickym
                                Most Active
                                schrieb am zuletzt editiert von mickym
                                #63

                                @g-hawk So wenn das nicht klappt, dann schaun wir mal ob wir es mit Javascript hinbekommen. Ich habe in axios was gefunden mit dem man diese unsicheren Seiten abfragen kann:

                                const axios = require('axios');
                                
                                const url = 'http://192.168.10.212/data'
                                
                                axios.get(url, { insecureHTTPParser: true }).then((response) => {
                                  console.log(response.data)
                                })
                                

                                Probier doch mal dieses JS zu erstellen und schau ob damit der Aufruf funktioniert.

                                ca40303f-595b-4308-90da-02f7c3c4b88b-image.png

                                Wenn das hinhaut - dann haben wir gewonnen.

                                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                G 1 Antwort Letzte Antwort
                                0
                                • mickymM mickym

                                  @g-hawk So wenn das nicht klappt, dann schaun wir mal ob wir es mit Javascript hinbekommen. Ich habe in axios was gefunden mit dem man diese unsicheren Seiten abfragen kann:

                                  const axios = require('axios');
                                  
                                  const url = 'http://192.168.10.212/data'
                                  
                                  axios.get(url, { insecureHTTPParser: true }).then((response) => {
                                    console.log(response.data)
                                  })
                                  

                                  Probier doch mal dieses JS zu erstellen und schau ob damit der Aufruf funktioniert.

                                  ca40303f-595b-4308-90da-02f7c3c4b88b-image.png

                                  Wenn das hinhaut - dann haben wir gewonnen.

                                  G Offline
                                  G Offline
                                  G.Hawk
                                  schrieb am zuletzt editiert von G.Hawk
                                  #64

                                  @mickym sagte in Parser Wert auslesen aber wie?:

                                                                                                                                                              const axios = require('axios');                                                                                                                                                                                                                                                                                                                                                         const url = 'http://192.168.10.212/data'                                                                                                                                                                                                                                                                                                                                                         axios.get(url, { insecureHTTPParser: true }).then((response) => {                                                                                                                                                                              console.log(response.data)                                                                                                                                                                            })                                            
                                  

                                  Unten stehen die Daten wie auf der Website, aber was machen wir nun damit?
                                  Bekommt man die irgendwie in eine Datenpunkt?
                                  Ist das denn recourcenschonender als mit dem Parser?

                                  Mit dem Parser funktioniert es im Moment

                                  mickymM 1 Antwort Letzte Antwort
                                  0
                                  • G G.Hawk

                                    @mickym sagte in Parser Wert auslesen aber wie?:

                                                                                                                                                                const axios = require('axios');                                                                                                                                                                                                                                                                                                                                                         const url = 'http://192.168.10.212/data'                                                                                                                                                                                                                                                                                                                                                         axios.get(url, { insecureHTTPParser: true }).then((response) => {                                                                                                                                                                              console.log(response.data)                                                                                                                                                                            })                                            
                                    

                                    Unten stehen die Daten wie auf der Website, aber was machen wir nun damit?
                                    Bekommt man die irgendwie in eine Datenpunkt?
                                    Ist das denn recourcenschonender als mit dem Parser?

                                    Mit dem Parser funktioniert es im Moment

                                    mickymM Online
                                    mickymM Online
                                    mickym
                                    Most Active
                                    schrieb am zuletzt editiert von
                                    #65

                                    @g-hawk Ja ist viel besser, als mit dem Adapter. Die Axios Bibliothek ist schon drin.

                                    Kannst kurz mal das was im log steht hier in CodeTags kopieren?

                                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                    G 1 Antwort Letzte Antwort
                                    0
                                    • mickymM mickym

                                      @g-hawk Ja ist viel besser, als mit dem Adapter. Die Axios Bibliothek ist schon drin.

                                      Kannst kurz mal das was im log steht hier in CodeTags kopieren?

                                      G Offline
                                      G Offline
                                      G.Hawk
                                      schrieb am zuletzt editiert von
                                      #66

                                      @mickym
                                      Unbenannt.JPG

                                      mickymM 1 Antwort Letzte Antwort
                                      0
                                      • G G.Hawk

                                        @mickym
                                        Unbenannt.JPG

                                        mickymM Online
                                        mickymM Online
                                        mickym
                                        Most Active
                                        schrieb am zuletzt editiert von
                                        #67

                                        @g-hawk

                                        So dann sollte das funktionieren.

                                        const axios = require('axios');
                                         
                                        const url = 'http://192.168.10.212/data'
                                         
                                        axios.get(url, { insecureHTTPParser: true }).then((response) => {
                                          let obj = JSON.parse(response.data);
                                          console.log (obj.measurements[0].values["1-0:16.7.0*255"]);
                                          console.log (obj.measurements[0].values["1-0:2.8.0*255"]);
                                          console.log (obj.measurements[0].values["1-0:1.8.0*255"]);
                                        })
                                        
                                        

                                        dann kannst Du die Daten nämlich so direkt in einen Datenpunkt schreiben.

                                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                        G 1 Antwort Letzte Antwort
                                        0
                                        • mickymM mickym

                                          @g-hawk

                                          So dann sollte das funktionieren.

                                          const axios = require('axios');
                                           
                                          const url = 'http://192.168.10.212/data'
                                           
                                          axios.get(url, { insecureHTTPParser: true }).then((response) => {
                                            let obj = JSON.parse(response.data);
                                            console.log (obj.measurements[0].values["1-0:16.7.0*255"]);
                                            console.log (obj.measurements[0].values["1-0:2.8.0*255"]);
                                            console.log (obj.measurements[0].values["1-0:1.8.0*255"]);
                                          })
                                          
                                          

                                          dann kannst Du die Daten nämlich so direkt in einen Datenpunkt schreiben.

                                          G Offline
                                          G Offline
                                          G.Hawk
                                          schrieb am zuletzt editiert von
                                          #68

                                          @mickym sagte in Parser Wert auslesen aber wie?:

                                                                                                                                                                      const axios = require('axios');                                                                                                                                                                                                                                                                                                                                                         const url = 'http://192.168.10.212/data'                                                                                                                                                                                                                                                                                                                                                         axios.get(url, { insecureHTTPParser: true }).then((response) => {                                                                                                                                                                              let obj = JSON.parse(response.data);                                                                                                                                                                              console.log (obj.measurements[0].values["1-0:16.7.0*255"]);                                                                                                                                                                              console.log (obj.measurements[0].values["1-0:2.8.0*255"]);                                                                                                                                                                              console.log (obj.measurements[0].values["1-0:1.8.0*255"]);                                                                                                                                                                            })                                                                                                                                                                                                                         
                                          

                                          Unbenannt.JPG

                                          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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          612

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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