Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Objekt als Button (rückstellend) erstellen ?

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.2k

Objekt als Button (rückstellend) erstellen ?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
22 Beiträge 4 Kommentatoren 144 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.
  • FriedhofsblondF Friedhofsblond

    Moin,
    ich möchte von extern den Zustand eines Objektes über einen Webhook im IOB ändern.
    Das Objekt soll kurz auf true gesetzt werden - dann wieder auf false zurückfallen.
    Danach weiter mit Blockly und Asterisk.
    Momentan kriege ich das nur via zwei Webhooks hin.
    Der erste setzt das Objekt auf true, der zweite setzt es wieder auf false.
    Könnte man das irgendwie über den Typ Rolle "Button" statt "State" lösen?
    Oder habe ich einen Fehler beim Erstellen des Objektes gemacht ?

    State:

      "common": {
        "name": "homeyalarm",
        "desc": "Manuell erzeugt",
        "role": "state",
        "type": "string",
        "read": false,
        "write": true,
        "def": ""
      },
      "type": "state",
      "native": {},
      "_id": "0_userdata.0.webhook.homeyalarm",
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      },
      "from": "system.adapter.admin.0",
      "user": "system.user.admin",
      "ts": 1763227975058
    }
    

    Button:

    {
      "common": {
        "name": "homeyalarm",
        "desc": "Manuell erzeugt",
        "role": "button",
        "type": "boolean",
        "read": false,
        "write": true,
        "def": ""
      },
      "type": "state",
      "native": {},
      "_id": "0_userdata.0.webhook.homeyalarm2",
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      },
      "from": "system.adapter.admin.0",
      "user": "system.user.admin",
      "ts": 1763228198423
    }
    

    Ich möchte nicht für jedes Objekt auf der anderen Seite zwei Webhooks auslösen.
    Habe ca. 15 Alarme die an den IOB weitergeleitet werden.

    Jemand einen Tip? - Danke schönes WE ☺

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

    @friedhofsblond sagte: Fehler beim Erstellen des Objektes gemacht ?

    Ja, common.def des Button muss false oder true sein - kein Leerstring.

    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
    • FriedhofsblondF Friedhofsblond

      @ticaki
      Achso, sprich - im Blockly wird dann nur nach Aktualisierung von true geschaut ?
      Ich schicke dann von homey immer nur "true" ?

      83e3e490-3f43-4d3b-b58e-8c94f6d83aa6-image.png

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

      @friedhofsblond sagt: im Blockly wird dann nur nach Aktualisierung von true geschaut ?

      Besser auf "ist wahr" triggern. Dann ist es egal, ob auf false zurück gesetzt wird oder nicht.

      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

      FriedhofsblondF 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @friedhofsblond sagt: im Blockly wird dann nur nach Aktualisierung von true geschaut ?

        Besser auf "ist wahr" triggern. Dann ist es egal, ob auf false zurück gesetzt wird oder nicht.

        FriedhofsblondF Offline
        FriedhofsblondF Offline
        Friedhofsblond
        schrieb am zuletzt editiert von Friedhofsblond
        #6

        @paul53
        Jo, super hab ich so umgesetzt und klappt auch - Danke 👍
        Ich dachte das Objekt muß immer wieder auf false zurückgesetzt werden.
        Hoffentlich gibt es keinen Alarm beim Reboot vom IOB ? - Nein passiert nixs -habs probiert

        so?

        {
          "common": {
            "name": "homeyalarm",
            "desc": "Manuell erzeugt",
            "role": "button",
            "type": "string",
            "read": false,
            "write": true,
            "def": "true"
          },
          "type": "state",
          "native": {},
          "_id": "0_userdata.0.webhook.homeyalarm",
          "acl": {
            "object": 1636,
            "state": 1636,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator"
          },
          "from": "system.adapter.admin.0",
          "user": "system.user.admin",
          "ts": 1763230272314
        }
        
        paul53P 1 Antwort Letzte Antwort
        0
        • FriedhofsblondF Friedhofsblond

          @paul53
          Jo, super hab ich so umgesetzt und klappt auch - Danke 👍
          Ich dachte das Objekt muß immer wieder auf false zurückgesetzt werden.
          Hoffentlich gibt es keinen Alarm beim Reboot vom IOB ? - Nein passiert nixs -habs probiert

          so?

          {
            "common": {
              "name": "homeyalarm",
              "desc": "Manuell erzeugt",
              "role": "button",
              "type": "string",
              "read": false,
              "write": true,
              "def": "true"
            },
            "type": "state",
            "native": {},
            "_id": "0_userdata.0.webhook.homeyalarm",
            "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
            },
            "from": "system.adapter.admin.0",
            "user": "system.user.admin",
            "ts": 1763230272314
          }
          
          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #7

          @friedhofsblond sagte: so?

          Nein so:

          {
            "common": {
              "name": "homeyalarm",
              "desc": "Manuell erzeugt",
              "role": "button",
              "type": "boolean",
              "read": false,
              "write": true,
              "def": true
            },
          

          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
          • T Nicht stören
            T Nicht stören
            ticaki
            schrieb am zuletzt editiert von
            #8

            Wenn man es genau nimmt müsste es:

            "role": "button.press",
            "read": true,
            "write": false,
            

            und darf nur mit ack=true beschrieben werden - aber ist ja kein Adapter 🙂

            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

            Spenden

            1 Antwort Letzte Antwort
            0
            • FriedhofsblondF Offline
              FriedhofsblondF Offline
              Friedhofsblond
              schrieb am zuletzt editiert von Friedhofsblond
              #9

              Moin,
              ich hoffe jetzt passt es:

              {
                "common": {
                  "name": "homeyalarm",
                  "desc": "Manuell erzeugt",
                  "role": "button.press",
                  "type": "boolean",
                  "read": true,
                  "write": false,
                  "def": "true"
                },
                "type": "state",
                "native": {},
                "_id": "0_userdata.0.webhook.homeyalarm",
                "acl": {
                  "object": 1636,
                  "state": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator"
                },
                "from": "system.adapter.admin.0",
                "user": "system.user.admin",
                "ts": 1763304615496
              }
              

              Hm, und was heisst das: "und darf nur mit ack=true beschrieben werden" ?

              paul53P 1 Antwort Letzte Antwort
              0
              • FriedhofsblondF Friedhofsblond

                Moin,
                ich hoffe jetzt passt es:

                {
                  "common": {
                    "name": "homeyalarm",
                    "desc": "Manuell erzeugt",
                    "role": "button.press",
                    "type": "boolean",
                    "read": true,
                    "write": false,
                    "def": "true"
                  },
                  "type": "state",
                  "native": {},
                  "_id": "0_userdata.0.webhook.homeyalarm",
                  "acl": {
                    "object": 1636,
                    "state": 1636,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator"
                  },
                  "from": "system.adapter.admin.0",
                  "user": "system.user.admin",
                  "ts": 1763304615496
                }
                

                Hm, und was heisst das: "und darf nur mit ack=true beschrieben werden" ?

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

                @Friedhofsblond said: ich hoffe jetzt passt es:

                Nein, Zeile 9:

                    "def": true
                

                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

                FriedhofsblondF 1 Antwort Letzte Antwort
                0
                • FriedhofsblondF Offline
                  FriedhofsblondF Offline
                  Friedhofsblond
                  schrieb am zuletzt editiert von Friedhofsblond
                  #11

                  Steht doch da ?

                  • sorry "" gesehen
                  1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @Friedhofsblond said: ich hoffe jetzt passt es:

                    Nein, Zeile 9:

                        "def": true
                    
                    FriedhofsblondF Offline
                    FriedhofsblondF Offline
                    Friedhofsblond
                    schrieb am zuletzt editiert von Friedhofsblond
                    #12

                    @paul53
                    OK, bin jetzt beim anlegen der Alarme und bekomme bei jedem Objekt eine Warung:

                    	warn	Read-only state "0_userdata.0.webhook.ha-aktiv-ga" has been written without ack-flag with value "false"
                    

                    4ef0cf51-f0af-4eb9-a7b4-3503e3b1e8ad-image.png

                    Was hab ich falsch gemacht ?

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • FriedhofsblondF Friedhofsblond

                      @paul53
                      OK, bin jetzt beim anlegen der Alarme und bekomme bei jedem Objekt eine Warung:

                      	warn	Read-only state "0_userdata.0.webhook.ha-aktiv-ga" has been written without ack-flag with value "false"
                      

                      4ef0cf51-f0af-4eb9-a7b4-3503e3b1e8ad-image.png

                      Was hab ich falsch gemacht ?

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

                      @Friedhofsblond said: Was hab ich falsch gemacht ?

                      Der Admin schreibt normalerweise Datenpunkte mit ack=false. Wie werden die Datenpunkte sonst geschrieben?

                      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

                      FriedhofsblondF 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @Friedhofsblond said: Was hab ich falsch gemacht ?

                        Der Admin schreibt normalerweise Datenpunkte mit ack=false. Wie werden die Datenpunkte sonst geschrieben?

                        FriedhofsblondF Offline
                        FriedhofsblondF Offline
                        Friedhofsblond
                        schrieb am zuletzt editiert von Friedhofsblond
                        #14

                        @paul53

                        Na die DP lege ich doch manuell an.
                        Habe mir oben ein Beispiel erstellt und dupliziere den mit anderem Namen:

                        f350952c-6756-47ce-85d4-41c3dc7c974d-image.png

                        habe mir die Abkürzung ausgedacht z.B. :
                        ha-rauch-wohn
                        ha=Homeyalarm
                        rausch=Rauchmelder
                        Wohn=Wohnzimmer

                        das ist der Auslöser:
                        900d2b19-6f7c-49ca-be00-27ce40c18f67-image.png

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • AsgothianA Offline
                          AsgothianA Offline
                          Asgothian
                          Developer
                          schrieb am zuletzt editiert von Asgothian
                          #15

                          Die Meldung sagt, was den Admin stört:

                          Du hast die Datenpunkte als Read Only angelegt. Sprich als Datenpunkte die vom Benutzer selber eigentlich nicht beschrieben werden sollen. Wenn du dieser Datenpunkte jetzt aus einem Skript beschreibst, dann verletzt du diese Regel. Dabei gibt es eine Ausnahme:
                          Damit der Admin in der Lage ist, Aktualisierung von Daten punkten darzustellen. Auch wenn diese nicht zu beschreiben sind, werden diese mit ‘acknowledge=true’ beschrieben. Damit sagst du dem Admin, dass es sich um eine Aktualisierung zur Darstellung handelt, nicht um einen Befehl zur Steuerung.

                          Du hast also letztendlich zwei Möglichkeiten, diese Meldung zu beseitigen:
                          Möglichkeit A: die Datenpunkte als ‘writsble’ zu charakterisieren.
                          Möglichkeit B: in deinem Skript die Datenpunkte mit Ack = true. zu schreiben.

                          A.
                          Sorry, das neue Forum ist schneller als ich, und diktierter Text bedarf eines edits 🙂

                          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                          FriedhofsblondF 1 Antwort Letzte Antwort
                          0
                          • AsgothianA Asgothian

                            Die Meldung sagt, was den Admin stört:

                            Du hast die Datenpunkte als Read Only angelegt. Sprich als Datenpunkte die vom Benutzer selber eigentlich nicht beschrieben werden sollen. Wenn du dieser Datenpunkte jetzt aus einem Skript beschreibst, dann verletzt du diese Regel. Dabei gibt es eine Ausnahme:
                            Damit der Admin in der Lage ist, Aktualisierung von Daten punkten darzustellen. Auch wenn diese nicht zu beschreiben sind, werden diese mit ‘acknowledge=true’ beschrieben. Damit sagst du dem Admin, dass es sich um eine Aktualisierung zur Darstellung handelt, nicht um einen Befehl zur Steuerung.

                            Du hast also letztendlich zwei Möglichkeiten, diese Meldung zu beseitigen:
                            Möglichkeit A: die Datenpunkte als ‘writsble’ zu charakterisieren.
                            Möglichkeit B: in deinem Skript die Datenpunkte mit Ack = true. zu schreiben.

                            A.
                            Sorry, das neue Forum ist schneller als ich, und diktierter Text bedarf eines edits 🙂

                            FriedhofsblondF Offline
                            FriedhofsblondF Offline
                            Friedhofsblond
                            schrieb am zuletzt editiert von Friedhofsblond
                            #16

                            @Asgothian
                            Ja sorry, habe noch fix was ergänzt.

                            Aber wie schreibe ich Ack=true ??

                            (Sorry bin fast 70 Jahre und nicht sooo fit , bei diesen Sachen. Meist brauche ich nur ein Beispiel und passe das an meine Bedürfnisse an)

                            Ich denke auch, das man das alles vielleicht über ein Webhook mit Variablen erledigen kann.
                            z.B. Wenn ein Webhook mit Rauch-Wohn kommt , wird dann über eine Variable ein Blockly mit Text für den Rauch an 2-3 Telefonnummern gesendet.
                            Aber ich geh meist den einfachen "Holzhackerweg" - komme ich auch selber nach bei Fehlersuche.

                            AsgothianA 1 Antwort Letzte Antwort
                            0
                            • FriedhofsblondF Friedhofsblond

                              @paul53

                              Na die DP lege ich doch manuell an.
                              Habe mir oben ein Beispiel erstellt und dupliziere den mit anderem Namen:

                              f350952c-6756-47ce-85d4-41c3dc7c974d-image.png

                              habe mir die Abkürzung ausgedacht z.B. :
                              ha-rauch-wohn
                              ha=Homeyalarm
                              rausch=Rauchmelder
                              Wohn=Wohnzimmer

                              das ist der Auslöser:
                              900d2b19-6f7c-49ca-be00-27ce40c18f67-image.png

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

                              @Friedhofsblond said: das ist der Auslöser:

                              Dann ändere die Objekteigenschaften so wie hier gezeigt.

                              {
                                "common": {
                                  "name": "homeyalarm",
                                  "desc": "Manuell erzeugt",
                                  "role": "button",
                                  "type": "boolean",
                                  "read": false,
                                  "write": true,
                                  "def": true
                                },
                              

                              @Friedhofsblond said in Objekt als Button (rückstellend) erstellen ?:

                              bin fast 70 Jahre

                              Jungspund.

                              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

                              FriedhofsblondF 2 Antworten Letzte Antwort
                              1
                              • paul53P paul53

                                @Friedhofsblond said: das ist der Auslöser:

                                Dann ändere die Objekteigenschaften so wie hier gezeigt.

                                {
                                  "common": {
                                    "name": "homeyalarm",
                                    "desc": "Manuell erzeugt",
                                    "role": "button",
                                    "type": "boolean",
                                    "read": false,
                                    "write": true,
                                    "def": true
                                  },
                                

                                @Friedhofsblond said in Objekt als Button (rückstellend) erstellen ?:

                                bin fast 70 Jahre

                                Jungspund.

                                FriedhofsblondF Offline
                                FriedhofsblondF Offline
                                Friedhofsblond
                                schrieb am zuletzt editiert von
                                #18

                                @paul53

                                Ah, dann hat sich der Wert beim Anlegen geändert - Danke 😊

                                1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @Friedhofsblond said: das ist der Auslöser:

                                  Dann ändere die Objekteigenschaften so wie hier gezeigt.

                                  {
                                    "common": {
                                      "name": "homeyalarm",
                                      "desc": "Manuell erzeugt",
                                      "role": "button",
                                      "type": "boolean",
                                      "read": false,
                                      "write": true,
                                      "def": true
                                    },
                                  

                                  @Friedhofsblond said in Objekt als Button (rückstellend) erstellen ?:

                                  bin fast 70 Jahre

                                  Jungspund.

                                  FriedhofsblondF Offline
                                  FriedhofsblondF Offline
                                  Friedhofsblond
                                  schrieb am zuletzt editiert von Friedhofsblond
                                  #19

                                  @paul53 said in Objekt als Button (rückstellend) erstellen ?:

                                  Jungspund.

                                  ... und nur Elektriker kein Script-Nerd 🙄 😄

                                  1 Antwort Letzte Antwort
                                  0
                                  • FriedhofsblondF Offline
                                    FriedhofsblondF Offline
                                    Friedhofsblond
                                    schrieb am zuletzt editiert von
                                    #20

                                    Danker erstmal - schönen Restsonntag

                                    1 Antwort Letzte Antwort
                                    0
                                    • FriedhofsblondF Friedhofsblond

                                      @Asgothian
                                      Ja sorry, habe noch fix was ergänzt.

                                      Aber wie schreibe ich Ack=true ??

                                      (Sorry bin fast 70 Jahre und nicht sooo fit , bei diesen Sachen. Meist brauche ich nur ein Beispiel und passe das an meine Bedürfnisse an)

                                      Ich denke auch, das man das alles vielleicht über ein Webhook mit Variablen erledigen kann.
                                      z.B. Wenn ein Webhook mit Rauch-Wohn kommt , wird dann über eine Variable ein Blockly mit Text für den Rauch an 2-3 Telefonnummern gesendet.
                                      Aber ich geh meist den einfachen "Holzhackerweg" - komme ich auch selber nach bei Fehlersuche.

                                      AsgothianA Offline
                                      AsgothianA Offline
                                      Asgothian
                                      Developer
                                      schrieb am zuletzt editiert von Asgothian
                                      #21

                                      @Friedhofsblond said in Objekt als Button (rückstellend) erstellen ?:

                                      Ja sorry, habe noch fix was ergänzt.

                                      Aber wie schreibe ich Ack=true ??

                                      statt

                                      http://192.168.115.29:8087/set/0_userdata.0.webhook.homeyalarm?value=true
                                      

                                      machst du

                                      http://192.168.115.29:8087/set/0_userdata.0.webhook.homeyalarm?value=true&ack=true
                                      

                                      A.

                                      (gefunden hier: https://github.com/ioBroker/ioBroker.simple-api?tab=readme-ov-file#set)

                                      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                                      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                                      FriedhofsblondF 1 Antwort Letzte Antwort
                                      0
                                      • AsgothianA Asgothian

                                        @Friedhofsblond said in Objekt als Button (rückstellend) erstellen ?:

                                        Ja sorry, habe noch fix was ergänzt.

                                        Aber wie schreibe ich Ack=true ??

                                        statt

                                        http://192.168.115.29:8087/set/0_userdata.0.webhook.homeyalarm?value=true
                                        

                                        machst du

                                        http://192.168.115.29:8087/set/0_userdata.0.webhook.homeyalarm?value=true&ack=true
                                        

                                        A.

                                        (gefunden hier: https://github.com/ioBroker/ioBroker.simple-api?tab=readme-ov-file#set)

                                        FriedhofsblondF Offline
                                        FriedhofsblondF Offline
                                        Friedhofsblond
                                        schrieb am zuletzt editiert von
                                        #22

                                        @Asgothian
                                        👍

                                        1 Antwort Letzte Antwort
                                        0
                                        Antworten
                                        • In einem neuen Thema antworten
                                        Anmelden zum Antworten
                                        • Älteste zuerst
                                        • Neuste zuerst
                                        • Meiste Stimmen


                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate
                                        FAQ Cloud / IOT
                                        HowTo: Node.js-Update
                                        HowTo: Backup/Restore
                                        Downloads
                                        BLOG

                                        758

                                        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
                                        • Aktuell
                                        • Tags
                                        • Ungelesen 0
                                        • Kategorien
                                        • Unreplied
                                        • Beliebt
                                        • GitHub
                                        • Docu
                                        • Hilfe