Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Luft-Messdaten von OpenSenseMap auslesen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Luft-Messdaten von OpenSenseMap auslesen

Scheduled Pinned Locked Moved Blockly
climatemonitoringblockly
59 Posts 4 Posters 4.3k Views 3 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.
  • HomoranH Homoran

    @paul53
    OK!
    Danke!

    Habe gerade deine Version geladen - da hast du ja schon meine nächste Baustelle drin.

    i from 1 to n

    Das sehe ich mir näher an.

    Aber du hast ja wie befürchtet ;-) fast alles umgekrempelt - das muss ich jetzt erst einmal nachvollziehen können

    EDIT - und doch mit json Auswertung gearbeitet :-(

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

    @Homoran sagte:

    und doch mit json Auswertung gearbeitet

    JSON in ein Objekt zu wandeln und dann auf die Attribute des Objektes zuzugreifen, ist wesentlich einfacher, als den String zu analysieren.

    EDIT: Ergänze besser die Verwendung von "sensorType" für die ID um den Punktkiller().

    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

    HomoranH 1 Reply Last reply
    0
    • paul53P paul53

      @Homoran sagte:

      und doch mit json Auswertung gearbeitet

      JSON in ein Objekt zu wandeln und dann auf die Attribute des Objektes zuzugreifen, ist wesentlich einfacher, als den String zu analysieren.

      EDIT: Ergänze besser die Verwendung von "sensorType" für die ID um den Punktkiller().

      HomoranH Do not disturb
      HomoranH Do not disturb
      Homoran
      Global Moderator Administrators
      wrote on last edited by
      #13

      Ich fange langsam an dein Skript nachvollziehen zu können

      @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

      JSON in ein Objekt zu wandeln und dann auf die Attribute des Objektes zuzugreifen, ist wesentlich, einfacher als den String zu analysieren.

      Das hatte ich mir gedacht, aber ich bin/war noch nicht ganz soweit ;-)

      Geht denn überhaupt etwas wie Länge von in Blockly mit Texten?

      • Also die Anzahl einer Fundstelle eines RegEx zu ermitteln?

      @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

      EDIT: Ergänze besser die Verwendung von "sensorType" für die ID um den Punktkiller().

      Das wäre meine erste Frage gewesen, weil die IDs noch Leerzeichen enthalten

      jetzt muss ich noch den Namen der Messstelle in das name-Feld der ID bringen
      Ich hatte den State extra als RW genommen, damit man sich den anpassen kann

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      paul53P 1 Reply Last reply
      0
      • HomoranH Homoran

        Ich fange langsam an dein Skript nachvollziehen zu können

        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

        JSON in ein Objekt zu wandeln und dann auf die Attribute des Objektes zuzugreifen, ist wesentlich, einfacher als den String zu analysieren.

        Das hatte ich mir gedacht, aber ich bin/war noch nicht ganz soweit ;-)

        Geht denn überhaupt etwas wie Länge von in Blockly mit Texten?

        • Also die Anzahl einer Fundstelle eines RegEx zu ermitteln?

        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

        EDIT: Ergänze besser die Verwendung von "sensorType" für die ID um den Punktkiller().

        Das wäre meine erste Frage gewesen, weil die IDs noch Leerzeichen enthalten

        jetzt muss ich noch den Namen der Messstelle in das name-Feld der ID bringen
        Ich hatte den State extra als RW genommen, damit man sich den anpassen kann

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

        @Homoran sagte in Luft-Messdaten von OpenSenseMap auslesen:

        den Namen der Messstelle in das name-Feld der ID bringen

        Dann muss anstelle der Variable Station nur die schon existierende Variable Name genommen werden.

        Blockly_temp.JPG

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

        HomoranH 2 Replies Last reply
        0
        • paul53P paul53

          @Homoran sagte in Luft-Messdaten von OpenSenseMap auslesen:

          den Namen der Messstelle in das name-Feld der ID bringen

          Dann muss anstelle der Variable Station nur die schon existierende Variable Name genommen werden.

          Blockly_temp.JPG

          Luftdaten.JPG

          HomoranH Do not disturb
          HomoranH Do not disturb
          Homoran
          Global Moderator Administrators
          wrote on last edited by
          #15

          @paul53
          und das habe ich bei der Bearbeitung von json noch nicht verstanden.
          Dieses Json ist ein (sehr) verschachteltes solches.

          name kommt eigentlich nur bei der Station vor, du nutzst es aber doch auch bei den Sensoren

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          paul53P 1 Reply Last reply
          0
          • paul53P paul53

            @Homoran sagte in Luft-Messdaten von OpenSenseMap auslesen:

            den Namen der Messstelle in das name-Feld der ID bringen

            Dann muss anstelle der Variable Station nur die schon existierende Variable Name genommen werden.

            Blockly_temp.JPG

            Luftdaten.JPG

            HomoranH Do not disturb
            HomoranH Do not disturb
            Homoran
            Global Moderator Administrators
            wrote on last edited by Homoran
            #16

            @paul53
            Jetzt ist gerade dein EDIT aufgepoppt

            Ich wollte den Namen in das Name Feld des Sensors bringen - zusätzlich zur ID
            Ich weiß nämlich nicht ob der Name eindeutig ist

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            paul53P 1 Reply Last reply
            0
            • HomoranH Homoran

              @paul53
              und das habe ich bei der Bearbeitung von json noch nicht verstanden.
              Dieses Json ist ein (sehr) verschachteltes solches.

              name kommt eigentlich nur bei der Station vor, du nutzst es aber doch auch bei den Sensoren

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

              @Homoran sagte:

              name kommt eigentlich nur bei der Station vor, du nutzst es aber doch auch bei den Sensoren

              Die globale Variable Name enthält den Stationsnamen. Die lokale Variable Name (Funktionsparameter) enthält das Attribut "title" des Sensors.

              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 Reply Last reply
              0
              • HomoranH Homoran

                @paul53
                Jetzt ist gerade dein EDIT aufgepoppt

                Ich wollte den Namen in das Name Feld des Sensors bringen - zusätzlich zur ID
                Ich weiß nämlich nicht ob der Name eindeutig ist

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

                @Homoran sagte :

                zusätzlich zur ID
                Ich weiß nämlich nicht ob der Name eindeutig ist

                Diese Modifikation der ID sollte nicht schwer fallen ?

                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

                HomoranH 1 Reply Last reply
                0
                • paul53P paul53

                  @Homoran sagte :

                  zusätzlich zur ID
                  Ich weiß nämlich nicht ob der Name eindeutig ist

                  Diese Modifikation der ID sollte nicht schwer fallen ?

                  HomoranH Do not disturb
                  HomoranH Do not disturb
                  Homoran
                  Global Moderator Administrators
                  wrote on last edited by
                  #19

                  @paul53
                  Nicht dass ich mich schon wieder unpräzise ausgedrückt habe (ich weiß doch was ich meine ;-) )

                  Es soll so aussehen:
                  state_statt_Channel.png

                  Bisher wird die ID nicht einzeln als DP angelegt sondern nur als "Pfad" zum Sensor.
                  Außerdem soll der Name Editirbar sein.
                  Einige Stationen heißen z.B. "Station" - das hilft keinem

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  paul53P 1 Reply Last reply
                  0
                  • HomoranH Homoran

                    @paul53
                    Nicht dass ich mich schon wieder unpräzise ausgedrückt habe (ich weiß doch was ich meine ;-) )

                    Es soll so aussehen:
                    state_statt_Channel.png

                    Bisher wird die ID nicht einzeln als DP angelegt sondern nur als "Pfad" zum Sensor.
                    Außerdem soll der Name Editirbar sein.
                    Einige Stationen heißen z.B. "Station" - das hilft keinem

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

                    @Homoran sagte:

                    Außerdem soll der Name Editirbar sein.

                    Habe ich Dich falsch verstanden ? Du möchtest den Stationsnamen im Namen des Datenpunktes haben und nicht in der 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

                    HomoranH 1 Reply Last reply
                    0
                    • paul53P paul53

                      @Homoran sagte:

                      Außerdem soll der Name Editirbar sein.

                      Habe ich Dich falsch verstanden ? Du möchtest den Stationsnamen im Namen des Datenpunktes haben und nicht in der ID ?

                      HomoranH Do not disturb
                      HomoranH Do not disturb
                      Homoran
                      Global Moderator Administrators
                      wrote on last edited by
                      #21

                      @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                      @Homoran sagte:

                      Außerdem soll der Name Editirbar sein.

                      Habe ich Dich falsch verstanden ? Du möchtest den Stationsnamen im Namen des Datenpunktes haben und nicht in der ID ?

                      Ja!

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      paul53P 1 Reply Last reply
                      0
                      • HomoranH Homoran

                        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                        @Homoran sagte:

                        Außerdem soll der Name Editirbar sein.

                        Habe ich Dich falsch verstanden ? Du möchtest den Stationsnamen im Namen des Datenpunktes haben und nicht in der ID ?

                        Ja!

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

                        @Homoran
                        Also etwa so ?

                        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

                        HomoranH 1 Reply Last reply
                        0
                        • paul53P paul53

                          @Homoran
                          Also etwa so ?

                          Blockly_temp.JPG

                          HomoranH Do not disturb
                          HomoranH Do not disturb
                          Homoran
                          Global Moderator Administrators
                          wrote on last edited by Homoran
                          #23

                          @paul53 weiss nicht - den part habe ich noch nicht komplett intus - sorry!

                          Das soll herauskommen:
                          ID_Name.png

                          MAP1 ist editierbar!


                          So habe ich es "gelöst":
                          ID_Name_Blockly.png


                          Und dabei die Funktion Stations-DP anlegen mit createState('Luftdaten.' + Station, {type:'device', read:true, write:true, name:Name}); im Vorfeld verwendet

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          paul53P 1 Reply Last reply
                          0
                          • HomoranH Homoran

                            @paul53 weiss nicht - den part habe ich noch nicht komplett intus - sorry!

                            Das soll herauskommen:
                            ID_Name.png

                            MAP1 ist editierbar!


                            So habe ich es "gelöst":
                            ID_Name_Blockly.png


                            Und dabei die Funktion Stations-DP anlegen mit createState('Luftdaten.' + Station, {type:'device', read:true, write:true, name:Name}); im Vorfeld verwendet

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

                            @Homoran
                            Ach, Du hast einen zusätzlichen Datenpunkt angelegt. type = 'device' ist unzulässig !

                            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

                            HomoranH 1 Reply Last reply
                            0
                            • paul53P paul53

                              @Homoran
                              Ach, Du hast einen zusätzlichen Datenpunkt angelegt. type = 'device' ist unzulässig !

                              HomoranH Do not disturb
                              HomoranH Do not disturb
                              Homoran
                              Global Moderator Administrators
                              wrote on last edited by Homoran
                              #25

                              @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                              @Homoran
                              type = 'device' ist unzulässig !

                              Ja - das waren noch die Knochen von meinem ersten Versuch - das Thema hatten wir ja schon.
                              Muss ich noch ändern

                              EDIT: cool ist ein Bool geworden ;-)

                              Ach, Du hast einen zusätzlichen Datenpunkt angelegt.

                              geht es anders?

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              paul53P 1 Reply Last reply
                              0
                              • HomoranH Homoran

                                @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                @Homoran
                                type = 'device' ist unzulässig !

                                Ja - das waren noch die Knochen von meinem ersten Versuch - das Thema hatten wir ja schon.
                                Muss ich noch ändern

                                EDIT: cool ist ein Bool geworden ;-)

                                Ach, Du hast einen zusätzlichen Datenpunkt angelegt.

                                geht es anders?

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

                                @Homoran sagte:

                                geht es anders?

                                Nicht mit createState(). Ich würde die Funktion erzeugeZahlDP() mit verwenden.

                                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

                                HomoranH 1 Reply Last reply
                                1
                                • paul53P paul53

                                  @Homoran sagte:

                                  geht es anders?

                                  Nicht mit createState(). Ich würde die Funktion erzeugeZahlDP() mit verwenden.

                                  Blockly_temp.JPG

                                  HomoranH Do not disturb
                                  HomoranH Do not disturb
                                  Homoran
                                  Global Moderator Administrators
                                  wrote on last edited by Homoran
                                  #27

                                  @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                  Ich würde die Funktion erzeugeZahlDP() mit verwenden.

                                  ok - das ist dann eine Funktion weniger un Name ist da ja auch RW ;-)

                                  Ich hätte das aus "Strukturgründen" deshalb ja lieber als channel gehabt.

                                  Und dummy kommt dann in den Pfad bei den Sensor-States statt Station?

                                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                  paul53P 2 Replies Last reply
                                  0
                                  • HomoranH Homoran

                                    @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                    Ich würde die Funktion erzeugeZahlDP() mit verwenden.

                                    ok - das ist dann eine Funktion weniger un Name ist da ja auch RW ;-)

                                    Ich hätte das aus "Strukturgründen" deshalb ja lieber als channel gehabt.

                                    Und dummy kommt dann in den Pfad bei den Sensor-States statt Station?

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

                                    @Homoran sagte:

                                    Und dummy kommt dann in den Pfad bei den Sensor-States statt Station?

                                    Nein, dummy ist das, was der Bezeichner sagt. Die Variable wird nur benötigt, weil die Funktion einen Wert zurück gibt, der an dieser Stelle nicht benötigt wird.

                                    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 Reply Last reply
                                    1
                                    • HomoranH Homoran

                                      @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                      Ich würde die Funktion erzeugeZahlDP() mit verwenden.

                                      ok - das ist dann eine Funktion weniger un Name ist da ja auch RW ;-)

                                      Ich hätte das aus "Strukturgründen" deshalb ja lieber als channel gehabt.

                                      Und dummy kommt dann in den Pfad bei den Sensor-States statt Station?

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

                                      @Homoran sagte:

                                      aus "Strukturgründen" deshalb ja lieber als channel gehabt.

                                      Dann musst Du einen Javascript-Funktion mit setObject() verwenden.

                                      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

                                      HomoranH 1 Reply Last reply
                                      0
                                      • paul53P paul53

                                        @Homoran sagte:

                                        aus "Strukturgründen" deshalb ja lieber als channel gehabt.

                                        Dann musst Du einen Javascript-Funktion mit setObject() verwenden.

                                        HomoranH Do not disturb
                                        HomoranH Do not disturb
                                        Homoran
                                        Global Moderator Administrators
                                        wrote on last edited by
                                        #30

                                        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                        @Homoran sagte:

                                        aus "Strukturgründen" deshalb ja lieber als channel gehabt.

                                        Dann musst Du einen Javascript-Funktion mit setObject() verwenden.

                                        Das lasse ich lieber wenn das so gefährlich ist.

                                        Du überraschst mich immer wieder.

                                        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                        Die Variable wird nur benötigt, weil die Funktion einen Wert zurück gibt,

                                        Das ist doch Hokuspokus ;-)
                                        Bin mal gespannt

                                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                        1 Reply Last reply
                                        0
                                        • HomoranH Do not disturb
                                          HomoranH Do not disturb
                                          Homoran
                                          Global Moderator Administrators
                                          wrote on last edited by
                                          #31

                                          Natürlich hat es geklappt.
                                          Danke @paul53
                                          Aber bis ich das verdaut habe wird es noch etwas dauern

                                          @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                          Dann musst Du einen Javascript-Funktion mit setObject() verwenden.

                                          Wenn ich ganz mutig bin verwende ich meine alte StationDP-Anlegen funktion und tausche nur setState gegen setObject aus.

                                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                          paul53P 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

                                          377

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe