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. Skripten / Logik
  4. JSON in Blockly parsen

NEWS

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

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

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

JSON in Blockly parsen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
20 Beiträge 11 Kommentatoren 14.1k Aufrufe 9 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.
  • BuZZyB Offline
    BuZZyB Offline
    BuZZy
    schrieb am zuletzt editiert von
    #6

    In einem Script würde es so aussehen:

     var objekt = {"progress": 0, "_timestamp": 1522141883, "location": "local", "path": "bridge_right.gcode"};
    
     log(objekt.progress); // Ergibt 0
     log(objekt._timestamp); // Ergibt 1522141883
    
    

    Habe gerade mal ein bisschen im Blockly rumgesucht,.. Habe irgendwie keine Möglichkeit gefunden bestimmte Werte mit Blockly aus einem JSON/Object abzufragen..

    Gruß

    1 Antwort Letzte Antwort
    0
    • E Offline
      E Offline
      e-p-s
      schrieb am zuletzt editiert von
      #7

      Danke für deine Hilfe. Leider komm ich vom Code nicht zurück nach Blockly.

      1 Antwort Letzte Antwort
      0
      • BuZZyB Offline
        BuZZyB Offline
        BuZZy
        schrieb am zuletzt editiert von
        #8

        Man kann nicht von Javascript nach Blockly "konvertieren"..

        Du musst dann komplett dieses Script ohne Blockly bauen. Oder warten bis jemand eine Lösung mit Blockly postet.. =/

        Gruß

        1 Antwort Letzte Antwort
        0
        • L Offline
          L Offline
          ludino
          schrieb am zuletzt editiert von
          #9

          Ich verstehe das alles nicht,

          ich habe folgende Zeile

          {"Time":"2018-05-13T09:43:21","Switch1":"ON","Distance":8.76};

          daraus habe ich dann gemacht,

          var objekt = {"Time":"2018-05-13T09:43:21","Switch1":"ON","Distance":8.76};

          log(objekt.Time); // Ergibt 0

          log(objekt._Distance); // Ergibt 1522141883

          aber leider bekomme ich nirgends werte in meinem fall die 8.76

          1 Antwort Letzte Antwort
          0
          • BuZZyB Offline
            BuZZyB Offline
            BuZZy
            schrieb am zuletzt editiert von
            #10

            Es heißt auch Distance in deinem object, nicht _Distance.. Wo kommt denn der _ da her bei dir? :D

            Gruß

            1 Antwort Letzte Antwort
            0
            • L Offline
              L Offline
              ludino
              schrieb am zuletzt editiert von
              #11

              ja danke…! Aber leider auch änderung nichts was ich noch gefunden habe ein Error

              mqtt.0 2018-05-13 12:08:13.330 error Cannot parse {"Time":"2018-05-13T11:08:10","Switch1":"ON","Distance":}

              momentan der COde

               var objekt = {"Time":"2018-05-13T09:43:21","Switch1":"ON","Distance":8.76};
              
               log(objekt.Time); // Ergibt 0
               log(objekt.Distance); // Ergibt 1522141883 
              
              1 Antwort Letzte Antwort
              0
              • BuZZyB Offline
                BuZZyB Offline
                BuZZy
                schrieb am zuletzt editiert von
                #12

                Wieso schmeißt mqtt den fehler? Wie sieht dein komplettes Script aus?

                Bei mir funktioniert es ohne Probleme..

                Gruß

                1 Antwort Letzte Antwort
                0
                • L Offline
                  L Offline
                  ludino
                  schrieb am zuletzt editiert von
                  #13

                  Da ich es nicht verstehe, das ist mein Komplettes Script "duck und Weck"

                  1 Antwort Letzte Antwort
                  0
                  • J Offline
                    J Offline
                    jnmcfly
                    schrieb am zuletzt editiert von
                    #14

                    Hallo, hatte grade auch diese Anforderung. Habe es wie folgt gelöst.

                    on({id: "mqtt.0.tele.SONOFF_PRUSA.SENSOR"/*tele/SONOFF_PRUSA/SENSOR*/, change: "ne"}, function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      json = (function () { try {return JSON.parse(getState("mqtt.0.tele.SONOFF_PRUSA.SENSOR").val);} catch(e) {return {};}})();
                      setState("mymeta.0.3DStromkosten"/*3DStromkosten*/, Math.round((getAttr(json, 'ENERGY.Total') * getState("mymeta.0.kwhPrice").val)*100)/100, true);
                    });
                    
                    1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      mikesch
                      schrieb am zuletzt editiert von
                      #15

                      Hallo jnmcfly,
                      kannst Du mal das Blockly dazu posten bzw. den XML export. Leider bekomme ich das so nur zu 70% nachgebaut.
                      Danke.

                      X 1 Antwort Letzte Antwort
                      0
                      • M mikesch

                        Hallo jnmcfly,
                        kannst Du mal das Blockly dazu posten bzw. den XML export. Leider bekomme ich das so nur zu 70% nachgebaut.
                        Danke.

                        X Offline
                        X Offline
                        xbow42
                        schrieb am zuletzt editiert von xbow42
                        #16

                        @mikesch

                        <xml xmlns="http://www.w3.org/1999/xhtml">
                         <block type="logic_boolean" id="VJ@nv6*~Q;W,@*6MXJ0b" x="-762" y="238">
                           <field name="BOOL">TRUE</field>
                         </block>
                         <block type="comment" id="hd#*aty~iYsu64[%_,8T" x="187" y="288">
                           <field name="COMMENT">(c) https://forum.iobroker.net/post/361542</field>
                           <next>
                             <block type="on_ext" id="D1uBT!v9/V)4h!!Y1)RL">
                               <mutation items="1"></mutation>
                               <field name="CONDITION">ne</field>
                               <field name="ACK_CONDITION"></field>
                               <value name="OID0">
                                 <shadow type="field_oid" id=":EJ[kBY+g/#:42s_MG6!">
                                   <field name="oid">default</field>
                                 </shadow>
                                 <block type="text" id="$f}7_^4x(Dvk0:$g=Z!x">
                                   <field name="TEXT">mqtt.0.tele.SONOFF_PRUSA.SENSOR</field>
                                 </block>
                               </value>
                               <statement name="STATEMENT">
                                 <block type="procedures_callcustomnoreturn" id=".SUNAb;yu94^zP/{E~8}">
                                   <mutation name="calc3dprintercost"></mutation>
                                 </block>
                               </statement>
                             </block>
                           </next>
                         </block>
                         <block type="procedures_defcustomnoreturn" id="enK7^[CkGvQ3`.H}Bsv!" x="188" y="438">
                           <mutation statements="false"></mutation>
                           <field name="NAME">calc3dprintercost</field>
                           <field name="SCRIPT">ICBqc29uID0gKGZ1bmN0aW9uICgpIHsgdHJ5IHtyZXR1cm4gSlNPTi5wYXJzZShnZXRTdGF0ZSgibXF0dC4wLnRlbGUuU09OT0ZGX1BSVVNBLlNFTlNPUiIpLnZhbCk7fSBjYXRjaChlKSB7cmV0dXJuIHt9O319KSgpOw0KICBzZXRTdGF0ZSgibXltZXRhLjAuM0RTdHJvbWtvc3RlbiIvKjNEU3Ryb21rb3N0ZW4qLywgTWF0aC5yb3VuZCgoZ2V0QXR0cihqc29uLCAnRU5FUkdZLlRvdGFsJykgKiBnZXRTdGF0ZSgibXltZXRhLjAua3doUHJpY2UiKS52YWwpKjEwMCkvMTAwLCB0cnVlKTs=</field>
                           <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                         </block>
                        </xml>
                        


                        Pfade im Trigger und in der js-Funktion zu den DP müssen noch angepasst werden. ;)

                        1 Antwort Letzte Antwort
                        0
                        • M Offline
                          M Offline
                          mikesch
                          schrieb am zuletzt editiert von
                          #17

                          @xbow42 -Danke! Läuft!

                          NewpicselN 1 Antwort Letzte Antwort
                          0
                          • M mikesch

                            @xbow42 -Danke! Läuft!

                            NewpicselN Offline
                            NewpicselN Offline
                            Newpicsel
                            schrieb am zuletzt editiert von Newpicsel
                            #18

                            Moin und frohes neues :blush:

                            Ich stehe aktuell vor einem schier unlösbaren Problem, ich muss dazu sagen, ich hab keine Ahnung von dem was ich tue also seid mir nicht böse :innocent:

                            Ich versuche ein JSON Objekt zu parsen, soweit eigentlich kein Problem, zumindest solange ich nicht auf „body“ oder darin enthaltenes zugreifen will, auf zb. „Status“ kann ich zugreifen und den Wert auslesen.

                            Hier ein Beispiel JSON:

                            
                            {
                            "body": {
                            "homes": [
                            {
                            "id": "5954e7f249c75f97428b7b23",
                            "name": "Your House",
                            "altitude": 89,
                            "coordinates": [
                            "-0.12726409999999996, 51.51608619999999"
                            ],
                            "country": "FR",
                            "timezone": "Europe/paris",
                            "rooms": [
                            {
                            "id": 3466299980,
                            "name": "myRoom",
                            "type": "Kitchen",
                            "module_ids": [
                            "09:00:00:00:0e:e0"
                            ]
                            }
                            ],
                            "modules": [
                            {
                            "id": "01:00:00:00:0e:e0",
                            "type": "NAPlug",
                            "name": "thermostat relay",
                            "setup_date": 1498736626,
                            "module_bridged": [
                            "02:00:00:00:0e:e0, 03:00:00:00:0e:e0"
                            ]
                            },
                            {
                            "id": "01:00:00:00:0e:e0",
                            "type": "NATherm1",
                            "name": "thermostat relay",
                            "setup_date": 1498736626,
                            "room_id": 2016185224,
                            "bridge": "01:00:00:00:0e:e0"
                            },
                            {
                            "id": "01:00:00:00:0e:e0",
                            "type": "NRV",
                            "name": "thermostat relay",
                            "setup_date": 1498736626,
                            "room_id": 2016185224,
                            "bridge": "01:00:00:00:0e:e0"
                            }
                            ],
                            "therm_set_point_default_duration": 180,
                            "schedules": [
                            {
                            "timetable": [
                            {
                            "zone_id": 1,
                            "m_offset": 360
                            }
                            ],
                            "zones": [
                            {
                            "name": "Confort",
                            "id": 1,
                            "type": 1,
                            "rooms": [
                            {
                            "id": 201618522,
                            "therm_setpoint_temperature": 15
                            }
                            ]
                            }
                            ],
                            "name": "mySchedule"
                            }
                            ],
                            "therm_mode": "schedule"
                            }
                            ],
                            "user": {
                            "email": "user@example.com",
                            "langage": "fr-FR",
                            "locale": "fr-FR",
                            "feel_like_algorithm": 0,
                            "unit_pressure": 0,
                            "unit_system": 0,
                            "unit_wind": 0,
                            "id": "5c81004fd6e33f0b008b4df2"
                            }
                            },
                            "status": "ok",
                            "time_exec": "0.060059070587158",
                            "time_server": "1553777827"
                            } 
                            

                            Ich möchte hier auf die Liste „body.homes.modules.module_bridged“ zugreifen, am besten die Angaben zählen und dann Objekte für jede dieser ID‘s anlegen.

                            Hat den Hintergrund, dass ich versuche ein blocky zu bauen, welches wie ein Adapter ready to use für jedermann einsetzbar ist, bin auch soweit das Objekte automatisch angelegt werden wenn nicht vorhanden und hier nur Zugangsdaten in Objekte eingetragen werden müssen und automatisch oauth2 Tokens angefordert und aktualisiert werden, womit dann bereits zwei JSON Objekte aus der API geholt und angelegt werden.
                            Zum einen wird schon seit Jahren nach einem Adapter von x Personen gebeten und zum anderen lerne ich so eine Menge dazu! :blush:

                            Ich hoffe mir kann hier jemand helfen, danke im Voraus

                            Blockly-Parsen.png

                            Edit: mir ist klar, dass dieses JSON mit Arrays verschachtelt ist, jedoch liegt genau hier mein Problem, wie muss ich die richtig parsen?
                            Mir fehlt einfach die richtige Formulierung des Pfades, habe es auch mit [] eckigen Klammer oder Klammer und einer null [0] für das erste Array probiert, komme hier aber leider überhaupt nicht weiter :disappointed:
                            Auch im netzt und hier im Forum konnte ich bisher nichts finden, was mir weiterhelfen würde.

                            machs-smart.deM M 2 Antworten Letzte Antwort
                            0
                            • NewpicselN Newpicsel

                              Moin und frohes neues :blush:

                              Ich stehe aktuell vor einem schier unlösbaren Problem, ich muss dazu sagen, ich hab keine Ahnung von dem was ich tue also seid mir nicht böse :innocent:

                              Ich versuche ein JSON Objekt zu parsen, soweit eigentlich kein Problem, zumindest solange ich nicht auf „body“ oder darin enthaltenes zugreifen will, auf zb. „Status“ kann ich zugreifen und den Wert auslesen.

                              Hier ein Beispiel JSON:

                              
                              {
                              "body": {
                              "homes": [
                              {
                              "id": "5954e7f249c75f97428b7b23",
                              "name": "Your House",
                              "altitude": 89,
                              "coordinates": [
                              "-0.12726409999999996, 51.51608619999999"
                              ],
                              "country": "FR",
                              "timezone": "Europe/paris",
                              "rooms": [
                              {
                              "id": 3466299980,
                              "name": "myRoom",
                              "type": "Kitchen",
                              "module_ids": [
                              "09:00:00:00:0e:e0"
                              ]
                              }
                              ],
                              "modules": [
                              {
                              "id": "01:00:00:00:0e:e0",
                              "type": "NAPlug",
                              "name": "thermostat relay",
                              "setup_date": 1498736626,
                              "module_bridged": [
                              "02:00:00:00:0e:e0, 03:00:00:00:0e:e0"
                              ]
                              },
                              {
                              "id": "01:00:00:00:0e:e0",
                              "type": "NATherm1",
                              "name": "thermostat relay",
                              "setup_date": 1498736626,
                              "room_id": 2016185224,
                              "bridge": "01:00:00:00:0e:e0"
                              },
                              {
                              "id": "01:00:00:00:0e:e0",
                              "type": "NRV",
                              "name": "thermostat relay",
                              "setup_date": 1498736626,
                              "room_id": 2016185224,
                              "bridge": "01:00:00:00:0e:e0"
                              }
                              ],
                              "therm_set_point_default_duration": 180,
                              "schedules": [
                              {
                              "timetable": [
                              {
                              "zone_id": 1,
                              "m_offset": 360
                              }
                              ],
                              "zones": [
                              {
                              "name": "Confort",
                              "id": 1,
                              "type": 1,
                              "rooms": [
                              {
                              "id": 201618522,
                              "therm_setpoint_temperature": 15
                              }
                              ]
                              }
                              ],
                              "name": "mySchedule"
                              }
                              ],
                              "therm_mode": "schedule"
                              }
                              ],
                              "user": {
                              "email": "user@example.com",
                              "langage": "fr-FR",
                              "locale": "fr-FR",
                              "feel_like_algorithm": 0,
                              "unit_pressure": 0,
                              "unit_system": 0,
                              "unit_wind": 0,
                              "id": "5c81004fd6e33f0b008b4df2"
                              }
                              },
                              "status": "ok",
                              "time_exec": "0.060059070587158",
                              "time_server": "1553777827"
                              } 
                              

                              Ich möchte hier auf die Liste „body.homes.modules.module_bridged“ zugreifen, am besten die Angaben zählen und dann Objekte für jede dieser ID‘s anlegen.

                              Hat den Hintergrund, dass ich versuche ein blocky zu bauen, welches wie ein Adapter ready to use für jedermann einsetzbar ist, bin auch soweit das Objekte automatisch angelegt werden wenn nicht vorhanden und hier nur Zugangsdaten in Objekte eingetragen werden müssen und automatisch oauth2 Tokens angefordert und aktualisiert werden, womit dann bereits zwei JSON Objekte aus der API geholt und angelegt werden.
                              Zum einen wird schon seit Jahren nach einem Adapter von x Personen gebeten und zum anderen lerne ich so eine Menge dazu! :blush:

                              Ich hoffe mir kann hier jemand helfen, danke im Voraus

                              Blockly-Parsen.png

                              Edit: mir ist klar, dass dieses JSON mit Arrays verschachtelt ist, jedoch liegt genau hier mein Problem, wie muss ich die richtig parsen?
                              Mir fehlt einfach die richtige Formulierung des Pfades, habe es auch mit [] eckigen Klammer oder Klammer und einer null [0] für das erste Array probiert, komme hier aber leider überhaupt nicht weiter :disappointed:
                              Auch im netzt und hier im Forum konnte ich bisher nichts finden, was mir weiterhelfen würde.

                              machs-smart.deM Offline
                              machs-smart.deM Offline
                              machs-smart.de
                              schrieb am zuletzt editiert von
                              #19

                              @newpicsel Versuche es mal mit "modules.module_bridged" und dann einen "in der Liste (DEIN ATTRIBUT VOM OBJEKT BLOCK) nimm entweder "erstes" oder "letztes" - je nach dem welchen Wert du möchtest.

                              www.machs-smart.de
                              Anleitungen und Tutorials rund um ioBroker

                              1 Antwort Letzte Antwort
                              0
                              • NewpicselN Newpicsel

                                Moin und frohes neues :blush:

                                Ich stehe aktuell vor einem schier unlösbaren Problem, ich muss dazu sagen, ich hab keine Ahnung von dem was ich tue also seid mir nicht böse :innocent:

                                Ich versuche ein JSON Objekt zu parsen, soweit eigentlich kein Problem, zumindest solange ich nicht auf „body“ oder darin enthaltenes zugreifen will, auf zb. „Status“ kann ich zugreifen und den Wert auslesen.

                                Hier ein Beispiel JSON:

                                
                                {
                                "body": {
                                "homes": [
                                {
                                "id": "5954e7f249c75f97428b7b23",
                                "name": "Your House",
                                "altitude": 89,
                                "coordinates": [
                                "-0.12726409999999996, 51.51608619999999"
                                ],
                                "country": "FR",
                                "timezone": "Europe/paris",
                                "rooms": [
                                {
                                "id": 3466299980,
                                "name": "myRoom",
                                "type": "Kitchen",
                                "module_ids": [
                                "09:00:00:00:0e:e0"
                                ]
                                }
                                ],
                                "modules": [
                                {
                                "id": "01:00:00:00:0e:e0",
                                "type": "NAPlug",
                                "name": "thermostat relay",
                                "setup_date": 1498736626,
                                "module_bridged": [
                                "02:00:00:00:0e:e0, 03:00:00:00:0e:e0"
                                ]
                                },
                                {
                                "id": "01:00:00:00:0e:e0",
                                "type": "NATherm1",
                                "name": "thermostat relay",
                                "setup_date": 1498736626,
                                "room_id": 2016185224,
                                "bridge": "01:00:00:00:0e:e0"
                                },
                                {
                                "id": "01:00:00:00:0e:e0",
                                "type": "NRV",
                                "name": "thermostat relay",
                                "setup_date": 1498736626,
                                "room_id": 2016185224,
                                "bridge": "01:00:00:00:0e:e0"
                                }
                                ],
                                "therm_set_point_default_duration": 180,
                                "schedules": [
                                {
                                "timetable": [
                                {
                                "zone_id": 1,
                                "m_offset": 360
                                }
                                ],
                                "zones": [
                                {
                                "name": "Confort",
                                "id": 1,
                                "type": 1,
                                "rooms": [
                                {
                                "id": 201618522,
                                "therm_setpoint_temperature": 15
                                }
                                ]
                                }
                                ],
                                "name": "mySchedule"
                                }
                                ],
                                "therm_mode": "schedule"
                                }
                                ],
                                "user": {
                                "email": "user@example.com",
                                "langage": "fr-FR",
                                "locale": "fr-FR",
                                "feel_like_algorithm": 0,
                                "unit_pressure": 0,
                                "unit_system": 0,
                                "unit_wind": 0,
                                "id": "5c81004fd6e33f0b008b4df2"
                                }
                                },
                                "status": "ok",
                                "time_exec": "0.060059070587158",
                                "time_server": "1553777827"
                                } 
                                

                                Ich möchte hier auf die Liste „body.homes.modules.module_bridged“ zugreifen, am besten die Angaben zählen und dann Objekte für jede dieser ID‘s anlegen.

                                Hat den Hintergrund, dass ich versuche ein blocky zu bauen, welches wie ein Adapter ready to use für jedermann einsetzbar ist, bin auch soweit das Objekte automatisch angelegt werden wenn nicht vorhanden und hier nur Zugangsdaten in Objekte eingetragen werden müssen und automatisch oauth2 Tokens angefordert und aktualisiert werden, womit dann bereits zwei JSON Objekte aus der API geholt und angelegt werden.
                                Zum einen wird schon seit Jahren nach einem Adapter von x Personen gebeten und zum anderen lerne ich so eine Menge dazu! :blush:

                                Ich hoffe mir kann hier jemand helfen, danke im Voraus

                                Blockly-Parsen.png

                                Edit: mir ist klar, dass dieses JSON mit Arrays verschachtelt ist, jedoch liegt genau hier mein Problem, wie muss ich die richtig parsen?
                                Mir fehlt einfach die richtige Formulierung des Pfades, habe es auch mit [] eckigen Klammer oder Klammer und einer null [0] für das erste Array probiert, komme hier aber leider überhaupt nicht weiter :disappointed:
                                Auch im netzt und hier im Forum konnte ich bisher nichts finden, was mir weiterhelfen würde.

                                M Online
                                M Online
                                MCU
                                schrieb am zuletzt editiert von MCU
                                #20

                                @newpicsel
                                ff28a583-0edc-4cb5-8c2d-c4cf79d984b8-image.png
                                Ergebnis:

                                cfe3b8c3-ee98-47de-8edd-79aaa0e8cd6c-image.png

                                b7f766b6-26aa-421b-ba83-23ad6a20c2a6-image.png

                                66bedf13-5855-4eee-9fb6-93aaa4547bb6-image.png

                                NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                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

                                742

                                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