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. Skripten / Logik
  4. Prüfen ob Datenpunkt existiert

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    324

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

Prüfen ob Datenpunkt existiert

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
15 Beiträge 4 Kommentatoren 2.7k Aufrufe 2 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.
  • htreckslerH htrecksler

    @bahnuhr habe ich gerade gefunden
    Link Text
    Vielleicht hilft der "existState"

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #5

    @htrecksler
    existsState(id) gibt es noch nicht lange und der Befehl ist (noch) undokumentiert. Das gilt auch für existsObject(id).

    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

    bahnuhrB 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @htrecksler
      existsState(id) gibt es noch nicht lange und der Befehl ist (noch) undokumentiert. Das gilt auch für existsObject(id).

      bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von bahnuhr
      #6

      @paul53 sagte in Prüfen ob Datenpunkt existiert:

      @htrecksler
      existsState(id) gibt es noch nicht lange und der Befehl ist (noch) undokumentiert. Das gilt auch für existsObject(id).

      Wo ist da der Unterschied?

      Für die Prüfung der Datenpunkte hat "..State" funktioniert.


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      paul53P 1 Antwort Letzte Antwort
      0
      • bahnuhrB bahnuhr

        @paul53 sagte in Prüfen ob Datenpunkt existiert:

        @htrecksler
        existsState(id) gibt es noch nicht lange und der Befehl ist (noch) undokumentiert. Das gilt auch für existsObject(id).

        Wo ist da der Unterschied?

        Für die Prüfung der Datenpunkte hat "..State" funktioniert.

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #7

        @bahnuhr sagte:

        Für die Prüfung der Datenpunkte hat "..State" funktioniert.

        Ja, aber nur für Datenpunkte (state(Zustand) muss existieren).

        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

        bahnuhrB 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @bahnuhr sagte:

          Für die Prüfung der Datenpunkte hat "..State" funktioniert.

          Ja, aber nur für Datenpunkte (state(Zustand) muss existieren).

          bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #8

          @paul53 sagte in Prüfen ob Datenpunkt existiert:

          @bahnuhr sagte:

          Für die Prüfung der Datenpunkte hat "..State" funktioniert.

          Ja, aber nur für Datenpunkte (state(Zustand) muss existieren).

          Ziel war es:

          Ich möchte prüfen ob ein Datenpunkt existiert bzw. angelegt wurde (ohne das es eine Fehlermeldung gibt).


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
          ScreenToGif :https://www.screentogif.com/downloads.html

          paul53P 1 Antwort Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @paul53 sagte in Prüfen ob Datenpunkt existiert:

            @bahnuhr sagte:

            Für die Prüfung der Datenpunkte hat "..State" funktioniert.

            Ja, aber nur für Datenpunkte (state(Zustand) muss existieren).

            Ziel war es:

            Ich möchte prüfen ob ein Datenpunkt existiert bzw. angelegt wurde (ohne das es eine Fehlermeldung gibt).

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #9

            @bahnuhr sagte:

            Ich möchte prüfen ob ein Datenpunkt existiert bzw. angelegt wurde (ohne das es eine Fehlermeldung gibt).

            Dafür ist existsState(id) gedacht.

            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

            bahnuhrB 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @bahnuhr sagte:

              Ich möchte prüfen ob ein Datenpunkt existiert bzw. angelegt wurde (ohne das es eine Fehlermeldung gibt).

              Dafür ist existsState(id) gedacht.

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #10

              @paul53 sagte in Prüfen ob Datenpunkt existiert:

              @bahnuhr sagte:

              Ich möchte prüfen ob ein Datenpunkt existiert bzw. angelegt wurde (ohne das es eine Fehlermeldung gibt).

              Dafür ist existsState(id) gedacht.

              Danke.

              Und was macht man dann mit: existsObject(id).


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              paul53P 1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @paul53 sagte in Prüfen ob Datenpunkt existiert:

                @bahnuhr sagte:

                Ich möchte prüfen ob ein Datenpunkt existiert bzw. angelegt wurde (ohne das es eine Fehlermeldung gibt).

                Dafür ist existsState(id) gedacht.

                Danke.

                Und was macht man dann mit: existsObject(id).

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #11

                @bahnuhr sagte:

                was macht man dann mit: existsObject(id).

                Prüfen, ob ein Objekt von z.B. Typ "channel", "device", "enum", ... existiert.

                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

                dslraserD 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @bahnuhr sagte:

                  was macht man dann mit: existsObject(id).

                  Prüfen, ob ein Objekt von z.B. Typ "channel", "device", "enum", ... existiert.

                  dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #12

                  @paul53

                  existsState(id) gibt es noch nicht lange und der Befehl ist (noch) undokumentiert. Das gilt auch für existsObject(id).

                  ich lese damit die Seriennummer (Alexa2 Adapter) eines ECHOS aus und setze damit dann z.B. die Sprachausgabe auf den angesprochenen ECHO, dabei kann es aber auch zu Fehlermeldungen kommen, weil nicht jedes Gerät z.B. diesen DP ssml hat. Wie kann ich in Blockly abfragen ob es diesen DP gibt ?

                  Bildschirmfoto 2019-12-23 um 18.27.41.png

                  <block xmlns="http://www.w3.org/1999/xhtml" type="variables_set" id="Yps_^d-kW+oe5cQMJ@@q" x="34" y="469">
                   <field name="VAR" id="tx`]izPXI!BeK19V`CX$" variabletype="">angesprochener_echo</field>
                   <value name="VALUE">
                     <block type="text_join" id="erZ?IJvmk9]^7PFtivUc">
                       <mutation items="3"></mutation>
                       <value name="ADD0">
                         <block type="text" id="-]u5SGaBrfr:E8rt]5x`">
                           <field name="TEXT">alexa2.0.Echo-Devices.</field>
                         </block>
                       </value>
                       <value name="ADD1">
                         <block type="get_value" id="~@yqzw9b:kyhv;sWile*">
                           <field name="ATTR">val</field>
                           <field name="OID">alexa2.0.History.serialNumber</field>
                         </block>
                       </value>
                       <value name="ADD2">
                         <block type="text" id="?f?%9j/S}8PwwvP;IQ3j">
                           <field name="TEXT">.Commands.ssml</field>
                         </block>
                       </value>
                     </block>
                   </value>
                  </block>
                  

                  Das gleiche gilt auch für das Lautstärke setzen.

                  Bildschirmfoto 2019-12-23 um 18.32.26.png

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • dslraserD dslraser

                    @paul53

                    existsState(id) gibt es noch nicht lange und der Befehl ist (noch) undokumentiert. Das gilt auch für existsObject(id).

                    ich lese damit die Seriennummer (Alexa2 Adapter) eines ECHOS aus und setze damit dann z.B. die Sprachausgabe auf den angesprochenen ECHO, dabei kann es aber auch zu Fehlermeldungen kommen, weil nicht jedes Gerät z.B. diesen DP ssml hat. Wie kann ich in Blockly abfragen ob es diesen DP gibt ?

                    Bildschirmfoto 2019-12-23 um 18.27.41.png

                    <block xmlns="http://www.w3.org/1999/xhtml" type="variables_set" id="Yps_^d-kW+oe5cQMJ@@q" x="34" y="469">
                     <field name="VAR" id="tx`]izPXI!BeK19V`CX$" variabletype="">angesprochener_echo</field>
                     <value name="VALUE">
                       <block type="text_join" id="erZ?IJvmk9]^7PFtivUc">
                         <mutation items="3"></mutation>
                         <value name="ADD0">
                           <block type="text" id="-]u5SGaBrfr:E8rt]5x`">
                             <field name="TEXT">alexa2.0.Echo-Devices.</field>
                           </block>
                         </value>
                         <value name="ADD1">
                           <block type="get_value" id="~@yqzw9b:kyhv;sWile*">
                             <field name="ATTR">val</field>
                             <field name="OID">alexa2.0.History.serialNumber</field>
                           </block>
                         </value>
                         <value name="ADD2">
                           <block type="text" id="?f?%9j/S}8PwwvP;IQ3j">
                             <field name="TEXT">.Commands.ssml</field>
                           </block>
                         </value>
                       </block>
                     </value>
                    </block>
                    

                    Das gleiche gilt auch für das Lautstärke setzen.

                    Bildschirmfoto 2019-12-23 um 18.32.26.png

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #13

                    @dslraser sagte:

                    Wie kann ich in Blockly abfragen ob es diesen DP gibt ?

                    Mit einer Javascript-Funktion mit Ergebnis (Übergabe-Parameter: id). Inhalt:

                    return existsState(id);
                    

                    Blockly_temp.JPG

                    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

                    dslraserD 1 Antwort Letzte Antwort
                    1
                    • paul53P paul53

                      @dslraser sagte:

                      Wie kann ich in Blockly abfragen ob es diesen DP gibt ?

                      Mit einer Javascript-Funktion mit Ergebnis (Übergabe-Parameter: id). Inhalt:

                      return existsState(id);
                      

                      Blockly_temp.JPG

                      dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von dslraser
                      #14

                      @paul53
                      Danke Dir.
                      Es funktioniert. Habe ich das so richtig umgesetzt ?

                      Bildschirmfoto 2019-12-23 um 19.05.21.png

                      <xml xmlns="http://www.w3.org/1999/xhtml">
                       <variables>
                         <variable type="" id="[axQ$oH/ZZy.k67+iBx/">id</variable>
                         <variable type="" id="tx`]izPXI!BeK19V`CX$">angesprochener_echo</variable>
                       </variables>
                       <block type="procedures_defcustomreturn" id="7R:L*9?)7Wl^RqVg+G`q" x="163" y="13">
                         <mutation statements="false">
                           <arg name="id" varid="[axQ$oH/ZZy.k67+iBx/"></arg>
                         </mutation>
                         <field name="NAME">existiert_DP</field>
                         <field name="SCRIPT">cmV0dXJuIGV4aXN0c1N0YXRlKGlkKTs=</field>
                         <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                       </block>
                       <block type="on_ext" id="y@0Cu2?,1;o_bDcJ4ZuT" x="162" y="88">
                         <mutation items="1"></mutation>
                         <field name="CONDITION">any</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id="Ps^V--{[M@oA{#6`!ESN">
                             <field name="oid">alexa2.0.History.serialNumber</field>
                           </shadow>
                         </value>
                         <statement name="STATEMENT">
                           <block type="controls_if" id="y)`c-wm[C}cP{X]y3)Dw">
                             <mutation else="1"></mutation>
                             <value name="IF0">
                               <block type="procedures_callcustomreturn" id="BdLe-fXhm3kGbG{.5RJj">
                                 <mutation name="existiert_DP">
                                   <arg name="id"></arg>
                                 </mutation>
                                 <value name="ARG0">
                                   <block type="text_join" id="%CbkkRKGDgdm;jO#nlgV">
                                     <mutation items="3"></mutation>
                                     <value name="ADD0">
                                       <block type="text" id="3{b9TSidU,^5#px#TM?s">
                                         <field name="TEXT">alexa2.0.Echo-Devices.</field>
                                       </block>
                                     </value>
                                     <value name="ADD1">
                                       <block type="get_value" id="GTn9gRaUp!2e%9bRgPZg">
                                         <field name="ATTR">val</field>
                                         <field name="OID">alexa2.0.History.serialNumber</field>
                                       </block>
                                     </value>
                                     <value name="ADD2">
                                       <block type="text" id="h}m`45Y5o3#!6dDZx%IK">
                                         <field name="TEXT">.Commands.ssml</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO0">
                               <block type="variables_set" id="e[+cDb+`pg-aWTFT@9z{">
                                 <field name="VAR" id="tx`]izPXI!BeK19V`CX$" variabletype="">angesprochener_echo</field>
                                 <value name="VALUE">
                                   <block type="text_join" id="u[Q1}Hpw@]p0o??1PAs5">
                                     <mutation items="3"></mutation>
                                     <value name="ADD0">
                                       <block type="text" id="38x/61SdZ3,;6l5hwj]W">
                                         <field name="TEXT">alexa2.0.Echo-Devices.</field>
                                       </block>
                                     </value>
                                     <value name="ADD1">
                                       <block type="get_value" id=";.zk3.,FM?7d.Z=AKCfr">
                                         <field name="ATTR">val</field>
                                         <field name="OID">alexa2.0.History.serialNumber</field>
                                       </block>
                                     </value>
                                     <value name="ADD2">
                                       <block type="text" id="Pc31[W.?d0%ZQ:z$B`-A">
                                         <field name="TEXT">.Commands.ssml</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </statement>
                             <statement name="ELSE">
                               <block type="debug" id="EWDo/1)[Ss|S_)=R~gua">
                                 <field name="Severity">warn</field>
                                 <value name="TEXT">
                                   <shadow type="text" id="=aW~G~#OZRNLcxp^Txk+">
                                     <field name="TEXT">test</field>
                                   </shadow>
                                   <block type="text" id=":`Z|PO/g-XC$|DVzfaA/">
                                     <field name="TEXT">Das angesprochene Gerät  unterstützt kein ssml !</field>
                                   </block>
                                 </value>
                               </block>
                             </statement>
                           </block>
                         </statement>
                       </block>
                      </xml>
                      

                      EDIT: ich hatte das falsche Bild und den falschen Export. Ich habe es gerade korrigiert. Sorry.

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • dslraserD dslraser

                        @paul53
                        Danke Dir.
                        Es funktioniert. Habe ich das so richtig umgesetzt ?

                        Bildschirmfoto 2019-12-23 um 19.05.21.png

                        <xml xmlns="http://www.w3.org/1999/xhtml">
                         <variables>
                           <variable type="" id="[axQ$oH/ZZy.k67+iBx/">id</variable>
                           <variable type="" id="tx`]izPXI!BeK19V`CX$">angesprochener_echo</variable>
                         </variables>
                         <block type="procedures_defcustomreturn" id="7R:L*9?)7Wl^RqVg+G`q" x="163" y="13">
                           <mutation statements="false">
                             <arg name="id" varid="[axQ$oH/ZZy.k67+iBx/"></arg>
                           </mutation>
                           <field name="NAME">existiert_DP</field>
                           <field name="SCRIPT">cmV0dXJuIGV4aXN0c1N0YXRlKGlkKTs=</field>
                           <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                         </block>
                         <block type="on_ext" id="y@0Cu2?,1;o_bDcJ4ZuT" x="162" y="88">
                           <mutation items="1"></mutation>
                           <field name="CONDITION">any</field>
                           <field name="ACK_CONDITION"></field>
                           <value name="OID0">
                             <shadow type="field_oid" id="Ps^V--{[M@oA{#6`!ESN">
                               <field name="oid">alexa2.0.History.serialNumber</field>
                             </shadow>
                           </value>
                           <statement name="STATEMENT">
                             <block type="controls_if" id="y)`c-wm[C}cP{X]y3)Dw">
                               <mutation else="1"></mutation>
                               <value name="IF0">
                                 <block type="procedures_callcustomreturn" id="BdLe-fXhm3kGbG{.5RJj">
                                   <mutation name="existiert_DP">
                                     <arg name="id"></arg>
                                   </mutation>
                                   <value name="ARG0">
                                     <block type="text_join" id="%CbkkRKGDgdm;jO#nlgV">
                                       <mutation items="3"></mutation>
                                       <value name="ADD0">
                                         <block type="text" id="3{b9TSidU,^5#px#TM?s">
                                           <field name="TEXT">alexa2.0.Echo-Devices.</field>
                                         </block>
                                       </value>
                                       <value name="ADD1">
                                         <block type="get_value" id="GTn9gRaUp!2e%9bRgPZg">
                                           <field name="ATTR">val</field>
                                           <field name="OID">alexa2.0.History.serialNumber</field>
                                         </block>
                                       </value>
                                       <value name="ADD2">
                                         <block type="text" id="h}m`45Y5o3#!6dDZx%IK">
                                           <field name="TEXT">.Commands.ssml</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                               <statement name="DO0">
                                 <block type="variables_set" id="e[+cDb+`pg-aWTFT@9z{">
                                   <field name="VAR" id="tx`]izPXI!BeK19V`CX$" variabletype="">angesprochener_echo</field>
                                   <value name="VALUE">
                                     <block type="text_join" id="u[Q1}Hpw@]p0o??1PAs5">
                                       <mutation items="3"></mutation>
                                       <value name="ADD0">
                                         <block type="text" id="38x/61SdZ3,;6l5hwj]W">
                                           <field name="TEXT">alexa2.0.Echo-Devices.</field>
                                         </block>
                                       </value>
                                       <value name="ADD1">
                                         <block type="get_value" id=";.zk3.,FM?7d.Z=AKCfr">
                                           <field name="ATTR">val</field>
                                           <field name="OID">alexa2.0.History.serialNumber</field>
                                         </block>
                                       </value>
                                       <value name="ADD2">
                                         <block type="text" id="Pc31[W.?d0%ZQ:z$B`-A">
                                           <field name="TEXT">.Commands.ssml</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                 </block>
                               </statement>
                               <statement name="ELSE">
                                 <block type="debug" id="EWDo/1)[Ss|S_)=R~gua">
                                   <field name="Severity">warn</field>
                                   <value name="TEXT">
                                     <shadow type="text" id="=aW~G~#OZRNLcxp^Txk+">
                                       <field name="TEXT">test</field>
                                     </shadow>
                                     <block type="text" id=":`Z|PO/g-XC$|DVzfaA/">
                                       <field name="TEXT">Das angesprochene Gerät  unterstützt kein ssml !</field>
                                     </block>
                                   </value>
                                 </block>
                               </statement>
                             </block>
                           </statement>
                         </block>
                        </xml>
                        

                        EDIT: ich hatte das falsche Bild und den falschen Export. Ich habe es gerade korrigiert. Sorry.

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #15

                        @dslraser sagte:

                        Habe ich das so richtig umgesetzt ?

                        Ja, kann man so machen. Ich hätte die ID nur einmal in eine Variable konstruiert und dann diese Variable 2 mal verwendet.

                        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

                        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

                        537

                        Online

                        32.5k

                        Benutzer

                        81.7k

                        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