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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JSON Format aus SimpleAPI Adapter

NEWS

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

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

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

JSON Format aus SimpleAPI Adapter

Scheduled Pinned Locked Moved Skripten / Logik
10 Posts 6 Posters 1.3k Views 5 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.
  • BobbyB Offline
    BobbyB Offline
    Bobby
    wrote on last edited by
    #1

    Hallo Freunde,

    ich speichere einen JSON String im Datenpunkt der richtig geschrieben wird:

    {
      "data": [
        {
          "temperaturaussen": 9,
          "feuchtaussen": 87.54,
          "temperaturwohnzimmer": 21,
          "feuchtwohnzimmer": 56.98,
          "temperaturbadezimmer": 21,
          "feuchtbadezimmer": 60.79,
          "davefeucht": 58,
          "daveduenger": 1345,
          "udofeucht": 50,
          "udoduenger": 294
        }
      ]
    }
    

    Über getPlainValue im Simple Adapter bekomme ich jedoch folgenden Output:

    "{\"data\":[{\"temperaturaussen\":9,\"feuchtaussen\":87.54,\"temperaturwohnzimmer\":21,\"feuchtwohnzimmer\":56.98,\"temperaturbadezimmer\":21,\"feuchtbadezimmer\":60.79,\"davefeucht\":58,\"daveduenger\":1345,\"udofeucht\":50,\"udoduenger\":294}]}"
    

    Kann mir jemand erklären wo die \ herkommen ?

    Ich schreibe den Datenpunkt über folgendes Script

    setState("javascript.0.EigeneDatenpunkte.Daten", {
            data: [{
                temperaturaussen: getState("javascript.0.EigeneDatenpunkte.TemperaturBalkon").val,
                feuchtaussen: getState("deconz.0.Sensors.10.humidity").val,
                temperaturwohnzimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturWohnzimmer").val,
                feuchtwohnzimmer: getState("deconz.0.Sensors.13.humidity").val,
                temperaturbadezimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturBadezimmer").val,
                feuchtbadezimmer: getState("deconz.0.Sensors.16.humidity").val,
                davefeucht: getState("ble.0.c4:7c:8d:6d:c3:63.moisture").val,
                daveduenger: getState("ble.0.c4:7c:8d:6d:c3:63.fertility").val,
                udofeucht: getState("ble.0.c4:7c:8d:6d:c3:7d.moisture").val,
                udoduenger: getState("ble.0.c4:7c:8d:6d:c3:7d.fertility").val
            }]
        });
    

    Grüße und Danke

    Jey CeeJ paul53P mickymM 3 Replies Last reply
    0
    • BobbyB Bobby

      Hallo Freunde,

      ich speichere einen JSON String im Datenpunkt der richtig geschrieben wird:

      {
        "data": [
          {
            "temperaturaussen": 9,
            "feuchtaussen": 87.54,
            "temperaturwohnzimmer": 21,
            "feuchtwohnzimmer": 56.98,
            "temperaturbadezimmer": 21,
            "feuchtbadezimmer": 60.79,
            "davefeucht": 58,
            "daveduenger": 1345,
            "udofeucht": 50,
            "udoduenger": 294
          }
        ]
      }
      

      Über getPlainValue im Simple Adapter bekomme ich jedoch folgenden Output:

      "{\"data\":[{\"temperaturaussen\":9,\"feuchtaussen\":87.54,\"temperaturwohnzimmer\":21,\"feuchtwohnzimmer\":56.98,\"temperaturbadezimmer\":21,\"feuchtbadezimmer\":60.79,\"davefeucht\":58,\"daveduenger\":1345,\"udofeucht\":50,\"udoduenger\":294}]}"
      

      Kann mir jemand erklären wo die \ herkommen ?

      Ich schreibe den Datenpunkt über folgendes Script

      setState("javascript.0.EigeneDatenpunkte.Daten", {
              data: [{
                  temperaturaussen: getState("javascript.0.EigeneDatenpunkte.TemperaturBalkon").val,
                  feuchtaussen: getState("deconz.0.Sensors.10.humidity").val,
                  temperaturwohnzimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturWohnzimmer").val,
                  feuchtwohnzimmer: getState("deconz.0.Sensors.13.humidity").val,
                  temperaturbadezimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturBadezimmer").val,
                  feuchtbadezimmer: getState("deconz.0.Sensors.16.humidity").val,
                  davefeucht: getState("ble.0.c4:7c:8d:6d:c3:63.moisture").val,
                  daveduenger: getState("ble.0.c4:7c:8d:6d:c3:63.fertility").val,
                  udofeucht: getState("ble.0.c4:7c:8d:6d:c3:7d.moisture").val,
                  udoduenger: getState("ble.0.c4:7c:8d:6d:c3:7d.fertility").val
              }]
          });
      

      Grüße und Danke

      Jey CeeJ Online
      Jey CeeJ Online
      Jey Cee
      Developer
      wrote on last edited by
      #2

      @bobby sagte in JSON Format aus SimpleAPI Adapter:

      Kann mir jemand erklären wo die \ herkommen ?

      Das JSON wird in einen String umgewandelt. Damit das wieder ein JSON wird musst du den String mit JSON.parse(string) umwandeln.

      Persönlicher Support
      Spenden -> paypal.me/J3YC33

      BobbyB 1 Reply Last reply
      0
      • Jey CeeJ Jey Cee

        @bobby sagte in JSON Format aus SimpleAPI Adapter:

        Kann mir jemand erklären wo die \ herkommen ?

        Das JSON wird in einen String umgewandelt. Damit das wieder ein JSON wird musst du den String mit JSON.parse(string) umwandeln.

        BobbyB Offline
        BobbyB Offline
        Bobby
        wrote on last edited by
        #3

        @jey-cee Ich möchte die Werte gerne in Android Studio benutzen.

        Wenn ich

        val dataJson = JSONObject(jsonstring)
        

        versuche bekomme ich folgende Fehlermeldung

        org.json.JSONException: Value {"data":[{"temperaturaussen":14,"feuchtaussen":76.75,"temperaturwohnzimmer":21,"feuchtwohnzimmer":56.65,"temperaturbadezimmer":21,"feuchtbadezimmer":60.02,"davefeucht":58,"daveduenger":1345,"udofeucht":50,"udoduenger":294}]} of type java.lang.String cannot be converted to JSONObject
        
        OliverIOO 1 Reply Last reply
        0
        • BobbyB Bobby

          Hallo Freunde,

          ich speichere einen JSON String im Datenpunkt der richtig geschrieben wird:

          {
            "data": [
              {
                "temperaturaussen": 9,
                "feuchtaussen": 87.54,
                "temperaturwohnzimmer": 21,
                "feuchtwohnzimmer": 56.98,
                "temperaturbadezimmer": 21,
                "feuchtbadezimmer": 60.79,
                "davefeucht": 58,
                "daveduenger": 1345,
                "udofeucht": 50,
                "udoduenger": 294
              }
            ]
          }
          

          Über getPlainValue im Simple Adapter bekomme ich jedoch folgenden Output:

          "{\"data\":[{\"temperaturaussen\":9,\"feuchtaussen\":87.54,\"temperaturwohnzimmer\":21,\"feuchtwohnzimmer\":56.98,\"temperaturbadezimmer\":21,\"feuchtbadezimmer\":60.79,\"davefeucht\":58,\"daveduenger\":1345,\"udofeucht\":50,\"udoduenger\":294}]}"
          

          Kann mir jemand erklären wo die \ herkommen ?

          Ich schreibe den Datenpunkt über folgendes Script

          setState("javascript.0.EigeneDatenpunkte.Daten", {
                  data: [{
                      temperaturaussen: getState("javascript.0.EigeneDatenpunkte.TemperaturBalkon").val,
                      feuchtaussen: getState("deconz.0.Sensors.10.humidity").val,
                      temperaturwohnzimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturWohnzimmer").val,
                      feuchtwohnzimmer: getState("deconz.0.Sensors.13.humidity").val,
                      temperaturbadezimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturBadezimmer").val,
                      feuchtbadezimmer: getState("deconz.0.Sensors.16.humidity").val,
                      davefeucht: getState("ble.0.c4:7c:8d:6d:c3:63.moisture").val,
                      daveduenger: getState("ble.0.c4:7c:8d:6d:c3:63.fertility").val,
                      udofeucht: getState("ble.0.c4:7c:8d:6d:c3:7d.moisture").val,
                      udoduenger: getState("ble.0.c4:7c:8d:6d:c3:7d.fertility").val
                  }]
              });
          

          Grüße und Danke

          paul53P Offline
          paul53P Offline
          paul53
          wrote on last edited by
          #4

          @bobby sagte: Ich schreibe den Datenpunkt über folgendes Script

          Damit wird ein Objekt in den Datenpunkt geschrieben. Für ein JSON braucht es JSON.stringify(obj).

          setState("javascript.0.EigeneDatenpunkte.Daten", JSON.stringify(
              {
                  data: [{
                      temperaturaussen: getState("javascript.0.EigeneDatenpunkte.TemperaturBalkon").val,
                      feuchtaussen: getState("deconz.0.Sensors.10.humidity").val,
                      temperaturwohnzimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturWohnzimmer").val,
                      feuchtwohnzimmer: getState("deconz.0.Sensors.13.humidity").val,
                      temperaturbadezimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturBadezimmer").val,
                      feuchtbadezimmer: getState("deconz.0.Sensors.16.humidity").val,
                      davefeucht: getState("ble.0.c4:7c:8d:6d:c3:63.moisture").val,
                      daveduenger: getState("ble.0.c4:7c:8d:6d:c3:63.fertility").val,
                      udofeucht: getState("ble.0.c4:7c:8d:6d:c3:7d.moisture").val,
                      udoduenger: getState("ble.0.c4:7c:8d:6d:c3:7d.fertility").val
                  }]
              }
          ));
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          BobbyB 1 Reply Last reply
          0
          • paul53P paul53

            @bobby sagte: Ich schreibe den Datenpunkt über folgendes Script

            Damit wird ein Objekt in den Datenpunkt geschrieben. Für ein JSON braucht es JSON.stringify(obj).

            setState("javascript.0.EigeneDatenpunkte.Daten", JSON.stringify(
                {
                    data: [{
                        temperaturaussen: getState("javascript.0.EigeneDatenpunkte.TemperaturBalkon").val,
                        feuchtaussen: getState("deconz.0.Sensors.10.humidity").val,
                        temperaturwohnzimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturWohnzimmer").val,
                        feuchtwohnzimmer: getState("deconz.0.Sensors.13.humidity").val,
                        temperaturbadezimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturBadezimmer").val,
                        feuchtbadezimmer: getState("deconz.0.Sensors.16.humidity").val,
                        davefeucht: getState("ble.0.c4:7c:8d:6d:c3:63.moisture").val,
                        daveduenger: getState("ble.0.c4:7c:8d:6d:c3:63.fertility").val,
                        udofeucht: getState("ble.0.c4:7c:8d:6d:c3:7d.moisture").val,
                        udoduenger: getState("ble.0.c4:7c:8d:6d:c3:7d.fertility").val
                    }]
                }
            ));
            
            BobbyB Offline
            BobbyB Offline
            Bobby
            wrote on last edited by
            #5

            Ich bekomme ja den richtigen String ausgelesen.

            V/JSON: "{\"temperaturaussen\":13,\"feuchtaussen\":77.18,\"temperaturwohnzimmer\":21,\"feuchtwohnzimmer\":57.5,\"temperaturbadezimmer\":21,\"feuchtbadezimmer\":63.18,\"davefeucht\":58,\"daveduenger\":1345,\"udofeucht\":50,\"udoduenger\":294}"
            

            Nur wenn ich ihn verarbeiten will bekomme ich eine Fehlermeldung:

            Log.v("JSON",fullJson);
                    val dataJson = JSONObject(fullJson)
            
            of type java.lang.String cannot be converted to JSONObject
            
            liv-in-skyL 1 Reply Last reply
            0
            • BobbyB Bobby

              Ich bekomme ja den richtigen String ausgelesen.

              V/JSON: "{\"temperaturaussen\":13,\"feuchtaussen\":77.18,\"temperaturwohnzimmer\":21,\"feuchtwohnzimmer\":57.5,\"temperaturbadezimmer\":21,\"feuchtbadezimmer\":63.18,\"davefeucht\":58,\"daveduenger\":1345,\"udofeucht\":50,\"udoduenger\":294}"
              

              Nur wenn ich ihn verarbeiten will bekomme ich eine Fehlermeldung:

              Log.v("JSON",fullJson);
                      val dataJson = JSONObject(fullJson)
              
              of type java.lang.String cannot be converted to JSONObject
              
              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              wrote on last edited by liv-in-sky
              #6

              @bobby sagte in JSON Format aus SimpleAPI Adapter:

              JSONObject

              kannst du den string nicht vorher bearbeiten und alle schrägstriche entfernen - bin sicher java kann das

              bevor du JSONObject(fullJson)
              ausführst

              irgendwie so: str.replaceAll("\", "")); oder str.replaceAll("\\", ""))
              

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              1 Reply Last reply
              0
              • BobbyB Bobby

                @jey-cee Ich möchte die Werte gerne in Android Studio benutzen.

                Wenn ich

                val dataJson = JSONObject(jsonstring)
                

                versuche bekomme ich folgende Fehlermeldung

                org.json.JSONException: Value {"data":[{"temperaturaussen":14,"feuchtaussen":76.75,"temperaturwohnzimmer":21,"feuchtwohnzimmer":56.65,"temperaturbadezimmer":21,"feuchtbadezimmer":60.02,"davefeucht":58,"daveduenger":1345,"udofeucht":50,"udoduenger":294}]} of type java.lang.String cannot be converted to JSONObject
                
                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                wrote on last edited by
                #7

                @bobby sagte in JSON Format aus SimpleAPI Adapter:

                @jey-cee Ich möchte die Werte gerne in Android Studio benutzen.

                Wenn ich

                val dataJson = JSONObject(jsonstring)
                

                versuche bekomme ich folgende Fehlermeldung

                org.json.JSONException: Value {"data":[{"temperaturaussen":14,"feuchtaussen":76.75,"temperaturwohnzimmer":21,"feuchtwohnzimmer":56.65,"temperaturbadezimmer":21,"feuchtbadezimmer":60.02,"davefeucht":58,"daveduenger":1345,"udofeucht":50,"udoduenger":294}]} of type java.lang.String cannot be converted to JSONObject
                

                Diesem Artikel nach müsste der richtige Befehl wie folgt lauten

                
                JSONObject dataJson = new JSONObject(jsonstring);
                
                

                https://stackoverflow.com/questions/18192891/conversion-from-string-to-json-object-android

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                BobbyB 1 Reply Last reply
                0
                • OliverIOO OliverIO

                  @bobby sagte in JSON Format aus SimpleAPI Adapter:

                  @jey-cee Ich möchte die Werte gerne in Android Studio benutzen.

                  Wenn ich

                  val dataJson = JSONObject(jsonstring)
                  

                  versuche bekomme ich folgende Fehlermeldung

                  org.json.JSONException: Value {"data":[{"temperaturaussen":14,"feuchtaussen":76.75,"temperaturwohnzimmer":21,"feuchtwohnzimmer":56.65,"temperaturbadezimmer":21,"feuchtbadezimmer":60.02,"davefeucht":58,"daveduenger":1345,"udofeucht":50,"udoduenger":294}]} of type java.lang.String cannot be converted to JSONObject
                  

                  Diesem Artikel nach müsste der richtige Befehl wie folgt lauten

                  
                  JSONObject dataJson = new JSONObject(jsonstring);
                  
                  

                  https://stackoverflow.com/questions/18192891/conversion-from-string-to-json-object-android

                  BobbyB Offline
                  BobbyB Offline
                  Bobby
                  wrote on last edited by
                  #8

                  @oliverio Ich bin dabei meine eigene Smart Home App zu schreiben, dafür benutze ich Kotlin.

                  Da gibt es leider

                  JSONObject dataJson = new JSONObject(jsonstring);
                  

                  nicht, nur

                  val dataJson = JSONObject(jsonstring)
                  
                  BobbyB 1 Reply Last reply
                  0
                  • BobbyB Bobby

                    @oliverio Ich bin dabei meine eigene Smart Home App zu schreiben, dafür benutze ich Kotlin.

                    Da gibt es leider

                    JSONObject dataJson = new JSONObject(jsonstring);
                    

                    nicht, nur

                    val dataJson = JSONObject(jsonstring)
                    
                    BobbyB Offline
                    BobbyB Offline
                    Bobby
                    wrote on last edited by
                    #9

                    Wenn ich den Datenpunkt als String speichere, z.B. so

                    setState("javascript.0.EigeneDatenpunkte.Wandtablet_Daten", "data: [{tempaussen: 42, tempwohnzimmer: 39}]")
                    

                    Und dann ein Json Objekt erstelle

                    val dataJson = JSONObject("{" + fullJson.substring(1, fullJson.length -1) + "}")
                    

                    indem ich Klammern wieder einfüge funktioniert es zwar, aber das scheint mir irgendwie nicht des Rätsels Lösung zu sein.
                    Wirkt auch einfach zu umständlich.

                    1 Reply Last reply
                    0
                    • BobbyB Bobby

                      Hallo Freunde,

                      ich speichere einen JSON String im Datenpunkt der richtig geschrieben wird:

                      {
                        "data": [
                          {
                            "temperaturaussen": 9,
                            "feuchtaussen": 87.54,
                            "temperaturwohnzimmer": 21,
                            "feuchtwohnzimmer": 56.98,
                            "temperaturbadezimmer": 21,
                            "feuchtbadezimmer": 60.79,
                            "davefeucht": 58,
                            "daveduenger": 1345,
                            "udofeucht": 50,
                            "udoduenger": 294
                          }
                        ]
                      }
                      

                      Über getPlainValue im Simple Adapter bekomme ich jedoch folgenden Output:

                      "{\"data\":[{\"temperaturaussen\":9,\"feuchtaussen\":87.54,\"temperaturwohnzimmer\":21,\"feuchtwohnzimmer\":56.98,\"temperaturbadezimmer\":21,\"feuchtbadezimmer\":60.79,\"davefeucht\":58,\"daveduenger\":1345,\"udofeucht\":50,\"udoduenger\":294}]}"
                      

                      Kann mir jemand erklären wo die \ herkommen ?

                      Ich schreibe den Datenpunkt über folgendes Script

                      setState("javascript.0.EigeneDatenpunkte.Daten", {
                              data: [{
                                  temperaturaussen: getState("javascript.0.EigeneDatenpunkte.TemperaturBalkon").val,
                                  feuchtaussen: getState("deconz.0.Sensors.10.humidity").val,
                                  temperaturwohnzimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturWohnzimmer").val,
                                  feuchtwohnzimmer: getState("deconz.0.Sensors.13.humidity").val,
                                  temperaturbadezimmer: getState("javascript.0.EigeneDatenpunkte.TemperaturBadezimmer").val,
                                  feuchtbadezimmer: getState("deconz.0.Sensors.16.humidity").val,
                                  davefeucht: getState("ble.0.c4:7c:8d:6d:c3:63.moisture").val,
                                  daveduenger: getState("ble.0.c4:7c:8d:6d:c3:63.fertility").val,
                                  udofeucht: getState("ble.0.c4:7c:8d:6d:c3:7d.moisture").val,
                                  udoduenger: getState("ble.0.c4:7c:8d:6d:c3:7d.fertility").val
                              }]
                          });
                      

                      Grüße und Danke

                      mickymM Offline
                      mickymM Offline
                      mickym
                      Most Active
                      wrote on last edited by mickym
                      #10

                      @bobby Im Prinzip ist der output doch in Ordnung - die Anführungszeichen werden maskiert.

                      Ich hab es mal mit Deinem String versucht - keine Probleme:

                      let obj2 = JSON.parse("{\"data\":[{\"temperaturaussen\":9,\"feuchtaussen\":87.54,\"temperaturwohnzimmer\":21,\"feuchtwohnzimmer\":56.98,\"temperaturbadezimmer\":21,\"feuchtbadezimmer\":60.79,\"davefeucht\":58,\"daveduenger\":1345,\"udofeucht\":50,\"udoduenger\":294}]}");
                      
                      log (obj2);
                      log (obj2.data[0].temperaturwohnzimmer);
                      

                      918c9d3a-18ba-42fb-b743-31476b0b5960-image.png

                      Im Prinzip ist deshalb eigentlich der Antwort von @Jey-Cee nichts hinzuzufügen und man muss auch überhaupt keine Verrenkungen mit Stringmanipulationen machen.

                      Also:

                      val dataJson = JSON.parse(jsonstring)
                      

                      Wenn Du das ganze wieder stringifizierst - dann ist die Maskierung auch wieder weg:

                      f5f7d2b4-d172-4ced-a59f-1479048f175b-image.png

                      Ist in meinen Augen unnötig, aber damit würde quasi Deine Zuweisung wie folgt aussehen:

                      val dataJson = JSONObject(JSON.stringify(JSON.parse(jsonstring)))
                      

                      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 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

                      434

                      Online

                      32.4k

                      Users

                      81.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