Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. ioBroker Allgemein
  4. [gelöst] Neeo-Adapter mit Proxmox

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    13
    1
    744

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    2.0k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    920

[gelöst] Neeo-Adapter mit Proxmox

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
neeo adapter
84 Beiträge 7 Kommentatoren 9.4k Aufrufe 5 Beobachtet
  • Ä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.
  • K Kusi

    @glasfaser sagte in Bestehender Adapter umschreiben:

    nc -zv 192.168.1.80 1104

    Folgendes erscheint nun bei der VM:

    kusi@ioBroker:~$ nc -zv 192.168.1.80 1104
    neeo-brain-wohnzimmer.home [192.168.1.80] 1104 (?) : Connection refused
    

    Was mich aber sehr erstaunt, dasselbe Resultat erhalte ich beim Raspberry.
    Der Adapter verbindet sich aber mit dem Brain und es erscheint auch kein Fehler im Log.

    liv-in-skyL Offline
    liv-in-skyL Offline
    liv-in-sky
    schrieb am zuletzt editiert von
    #28

    @kusi

    das ganze ist nicht einfach

    • ist der neeo adapter überhaupt lauffähig im neuen js-controller ?
    • war dein raspi, als es funktioniert hatte auf dem alten js-controller oder war da schon upgedatet?

    normalerweise wüßte ich nichts, warum ein port in proxmox nicht offen sein sollte - hatte das thema noch nie

    der fehler sagt, es gibt ein dns problem - also auflösung-thema

    Image 2.png

    kann sein, dass in deinem lokalen dsn system was falsches drinsteht, der adapter auf dem raspi aber die richtige adresse gespeichert hat

    du könntest auch mal in der instanz auf debug schalten und mal nachsehen, wo die instanz beim starten hängen bleibt

    habe mir code mal angesehen - check ich nicht - da muss ein profi kucken :-(

    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

    K GlasfaserG 2 Antworten Letzte Antwort
    1
    • liv-in-skyL liv-in-sky

      @kusi

      das ganze ist nicht einfach

      • ist der neeo adapter überhaupt lauffähig im neuen js-controller ?
      • war dein raspi, als es funktioniert hatte auf dem alten js-controller oder war da schon upgedatet?

      normalerweise wüßte ich nichts, warum ein port in proxmox nicht offen sein sollte - hatte das thema noch nie

      der fehler sagt, es gibt ein dns problem - also auflösung-thema

      Image 2.png

      kann sein, dass in deinem lokalen dsn system was falsches drinsteht, der adapter auf dem raspi aber die richtige adresse gespeichert hat

      du könntest auch mal in der instanz auf debug schalten und mal nachsehen, wo die instanz beim starten hängen bleibt

      habe mir code mal angesehen - check ich nicht - da muss ein profi kucken :-(

      K Offline
      K Offline
      Kusi
      schrieb am zuletzt editiert von
      #29

      @liv-in-sky sagte in Bestehender Adapter umschreiben:

      war dein raspi, als es funktioniert hatte auf dem alten js-controller oder war da schon upgedatet?

      Ich habe es diese Nacht ausprobiert, Admin und js-controller sind auf dem neusten Stand.

      liv-in-skyL 2 Antworten Letzte Antwort
      0
      • liv-in-skyL liv-in-sky

        @kusi

        das ganze ist nicht einfach

        • ist der neeo adapter überhaupt lauffähig im neuen js-controller ?
        • war dein raspi, als es funktioniert hatte auf dem alten js-controller oder war da schon upgedatet?

        normalerweise wüßte ich nichts, warum ein port in proxmox nicht offen sein sollte - hatte das thema noch nie

        der fehler sagt, es gibt ein dns problem - also auflösung-thema

        Image 2.png

        kann sein, dass in deinem lokalen dsn system was falsches drinsteht, der adapter auf dem raspi aber die richtige adresse gespeichert hat

        du könntest auch mal in der instanz auf debug schalten und mal nachsehen, wo die instanz beim starten hängen bleibt

        habe mir code mal angesehen - check ich nicht - da muss ein profi kucken :-(

        GlasfaserG Offline
        GlasfaserG Offline
        Glasfaser
        schrieb am zuletzt editiert von Glasfaser
        #30

        @Kusi

        @liv-in-sky sagte in Bestehender Adapter umschreiben:
        du könntest auch mal in der instanz auf debug schalten und mal nachsehen, wo die instanz beim starten hängen bleibt

        Stelle den Log mal hier rein, vielleicht kann man was erkennen

        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

        K 1 Antwort Letzte Antwort
        0
        • K Kusi

          @liv-in-sky sagte in Bestehender Adapter umschreiben:

          war dein raspi, als es funktioniert hatte auf dem alten js-controller oder war da schon upgedatet?

          Ich habe es diese Nacht ausprobiert, Admin und js-controller sind auf dem neusten Stand.

          liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von
          #31

          @kusi

          hier wird auch nach einer brainIP gefragt https://github.com/NEEOInc/neeo-sdk/issues/170

          ist zwar docker - könnte aber auch für proxmox zutreffen

          auch schon alles alt - wird im adapter genutzt - daher ist es nicht möglich, eine feste ip zu setzen - diese api sucht nache einem gerät im netz

          also mit umschreiben wird schlecht gehen

          evtl mußt du den alten raspi als slave einrichten und die instanz auf diesem slave nutzen

          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 Antwort Letzte Antwort
          0
          • K Kusi

            @liv-in-sky sagte in Bestehender Adapter umschreiben:

            war dein raspi, als es funktioniert hatte auf dem alten js-controller oder war da schon upgedatet?

            Ich habe es diese Nacht ausprobiert, Admin und js-controller sind auf dem neusten Stand.

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            schrieb am zuletzt editiert von liv-in-sky
            #32

            @kusi

            was du mal testen könntest - du brauchst eine console des proxmox servers - nicht der iobroker vm - danach ein neustart des proxmox servers - ist nur zum ausprobieren - keine ahnung ob das irgendwie hilft

            geh ins verzeichnis :

            cd /sys/devices/virtual/net/$IFACE/bridge/
            

            dann öffne

            nano multicast_querier
            

            und schreibe eine 1 rein statt der 0

            das selbe mit

            /sys/class/net/$IFACE/bridge/multicast_snooping
            

            dieser datei - nur das du darin die 1 mit einer 0 ersetzt

            $IFACE ist der name deiner network bridge in proxmox bei mir z.b. "vmbr0 "

            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

            K 1 Antwort Letzte Antwort
            0
            • GlasfaserG Glasfaser

              @Kusi

              @liv-in-sky sagte in Bestehender Adapter umschreiben:
              du könntest auch mal in der instanz auf debug schalten und mal nachsehen, wo die instanz beim starten hängen bleibt

              Stelle den Log mal hier rein, vielleicht kann man was erkennen

              K Offline
              K Offline
              Kusi
              schrieb am zuletzt editiert von Kusi
              #33

              @glasfaser sagte in Bestehender Adapter umschreiben:

              Stelle den Log mal hier rein

              2021-10-04 22:13:29.738 - info: host.ioBroker "system.adapter.neeo.0" enabled
              2021-10-04 22:13:29.852 - info: host.ioBroker instance system.adapter.neeo.0 started with pid 32357
              2021-10-04 22:13:30.349 - debug: neeo.0 (32357) Redis Objects: Use Redis connection: 127.0.0.1:9001
              2021-10-04 22:13:30.358 - debug: neeo.0 (32357) Objects client ready ... initialize now
              2021-10-04 22:13:30.359 - debug: neeo.0 (32357) Objects create System PubSub Client
              2021-10-04 22:13:30.359 - debug: neeo.0 (32357) Objects create User PubSub Client
              2021-10-04 22:13:30.359 - debug: neeo.0 (32357) Objects client initialize lua scripts
              2021-10-04 22:13:30.364 - debug: neeo.0 (32357) Objects connected to redis: 127.0.0.1:9001
              2021-10-04 22:13:30.366 - debug: neeo.0 (32357) objectDB connected
              2021-10-04 22:13:30.367 - debug: neeo.0 (32357) Redis States: Use Redis connection: 127.0.0.1:9000
              2021-10-04 22:13:30.370 - debug: neeo.0 (32357) States create System PubSub Client
              2021-10-04 22:13:30.371 - debug: neeo.0 (32357) States create User PubSub Client
              2021-10-04 22:13:30.375 - debug: neeo.0 (32357) States connected to redis: 127.0.0.1:9000
              2021-10-04 22:13:30.375 - debug: neeo.0 (32357) statesDB connected
              2021-10-04 22:13:30.429 - info: neeo.0 (32357) starting. Version 1.0.0 in /opt/iobroker/node_modules/iobroker.neeo, node: v12.22.6, js-controller: 3.3.18
              2021-10-04 22:13:30.585 - error: neeo.0 (32357) neeo initialization failedError: getaddrinfo ENOTFOUND neeo-2372dc31.local

              1 Antwort Letzte Antwort
              0
              • liv-in-skyL liv-in-sky

                @kusi

                was du mal testen könntest - du brauchst eine console des proxmox servers - nicht der iobroker vm - danach ein neustart des proxmox servers - ist nur zum ausprobieren - keine ahnung ob das irgendwie hilft

                geh ins verzeichnis :

                cd /sys/devices/virtual/net/$IFACE/bridge/
                

                dann öffne

                nano multicast_querier
                

                und schreibe eine 1 rein statt der 0

                das selbe mit

                /sys/class/net/$IFACE/bridge/multicast_snooping
                

                dieser datei - nur das du darin die 1 mit einer 0 ersetzt

                $IFACE ist der name deiner network bridge in proxmox bei mir z.b. "vmbr0 "

                K Offline
                K Offline
                Kusi
                schrieb am zuletzt editiert von
                #34

                @liv-in-sky sagte in Bestehender Adapter umschreiben:

                was du mal testen könntest - du brauchst eine console des proxmox servers - nicht der iobroker vm - danach ein neustart des proxmox servers - ist nur zum ausprobieren - keine ahnung ob das irgendwie hilft
                geh ins verzeichnis :
                cd /sys/devices/virtual/net/$IFACE/bridge/

                dann öffne
                nano multicast_querier

                und schreibe eine 1 rein statt der 0
                das selbe mit
                /sys/class/net/$IFACE/bridge/multicast_snooping

                dieser datei - nur das du darin die 1 mit einer 0 ersetzt
                $IFACE ist der name deiner network bridge in proxmox bei mir z.b. "vmbr0 "

                Hat leider nichts geändert.

                liv-in-skyL 1 Antwort Letzte Antwort
                0
                • K Kusi

                  @liv-in-sky sagte in Bestehender Adapter umschreiben:

                  was du mal testen könntest - du brauchst eine console des proxmox servers - nicht der iobroker vm - danach ein neustart des proxmox servers - ist nur zum ausprobieren - keine ahnung ob das irgendwie hilft
                  geh ins verzeichnis :
                  cd /sys/devices/virtual/net/$IFACE/bridge/

                  dann öffne
                  nano multicast_querier

                  und schreibe eine 1 rein statt der 0
                  das selbe mit
                  /sys/class/net/$IFACE/bridge/multicast_snooping

                  dieser datei - nur das du darin die 1 mit einer 0 ersetzt
                  $IFACE ist der name deiner network bridge in proxmox bei mir z.b. "vmbr0 "

                  Hat leider nichts geändert.

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von
                  #35

                  @kusi

                  dann fällt mir leider nicht mehr viel ein

                  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

                  K 1 Antwort Letzte Antwort
                  0
                  • liv-in-skyL liv-in-sky

                    @kusi

                    dann fällt mir leider nicht mehr viel ein

                    K Offline
                    K Offline
                    Kusi
                    schrieb am zuletzt editiert von
                    #36

                    @liv-in-sky
                    Wo kann ich den Promiscous-Mode in Proxmox einstellen?

                    liv-in-skyL 2 Antworten Letzte Antwort
                    0
                    • K Kusi

                      @liv-in-sky
                      Wo kann ich den Promiscous-Mode in Proxmox einstellen?

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #37

                      @kusi sagte in Bestehender Adapter umschreiben:

                      Promiscous-Mode in Proxmox

                      habe nur das gefunden - https://forum.proxmox.com/threads/network-sensor-monitor-session-promiscuous.37845/

                      musst du mal google fragen - hatte nie wirklich damit zu tun

                      irgendwo stand auch, das dieser mode automatisch eingestellt ist

                      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 Antwort Letzte Antwort
                      0
                      • K Kusi

                        @liv-in-sky
                        Wo kann ich den Promiscous-Mode in Proxmox einstellen?

                        liv-in-skyL Offline
                        liv-in-skyL Offline
                        liv-in-sky
                        schrieb am zuletzt editiert von
                        #38

                        @kusi

                        vielleicht könntest du deinen raspi als slave verwenden um den adapter einsetzen zu können ?

                        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

                        K 1 Antwort Letzte Antwort
                        0
                        • liv-in-skyL liv-in-sky

                          @kusi

                          vielleicht könntest du deinen raspi als slave verwenden um den adapter einsetzen zu können ?

                          K Offline
                          K Offline
                          Kusi
                          schrieb am zuletzt editiert von
                          #39

                          @liv-in-sky Den Raspi habe ich bereits verkauft, weil er aber noch bei mir Zuhause ist für die Konfiguration, konnte ich den Adapter testen. Einen neuen zu kaufen nur für diesen Adapter ist es mir nicht wert.

                          liv-in-skyL 1 Antwort Letzte Antwort
                          0
                          • K Kusi

                            @liv-in-sky Den Raspi habe ich bereits verkauft, weil er aber noch bei mir Zuhause ist für die Konfiguration, konnte ich den Adapter testen. Einen neuen zu kaufen nur für diesen Adapter ist es mir nicht wert.

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #40

                            @kusi

                            war nur eine idee - da diese "fernbedienung" ja doch etwas teurer ist, dachte ich , es wäre evtl sinnvoll

                            ich habe 2 raspi3 und einen banana pi rumliegen - was bekommt man für einen gebrauchten rasp 3 ? oder hattest du einen 4er ?

                            konntest du mit dem Promiscous etwas erreichen ?

                            wir könne auch immer noch gemeinsam auf dein proxmox system schauen - wobei uns wohl die ideen langsam ausgehen :-(

                            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

                            K 1 Antwort Letzte Antwort
                            0
                            • liv-in-skyL liv-in-sky

                              @kusi

                              war nur eine idee - da diese "fernbedienung" ja doch etwas teurer ist, dachte ich , es wäre evtl sinnvoll

                              ich habe 2 raspi3 und einen banana pi rumliegen - was bekommt man für einen gebrauchten rasp 3 ? oder hattest du einen 4er ?

                              konntest du mit dem Promiscous etwas erreichen ?

                              wir könne auch immer noch gemeinsam auf dein proxmox system schauen - wobei uns wohl die ideen langsam ausgehen :-(

                              K Offline
                              K Offline
                              Kusi
                              schrieb am zuletzt editiert von Kusi
                              #41

                              @liv-in-sky Ich hatte einen Raspi 4 mit 4 GB.

                              Promiscous Mode habe ich nicht gefunden.
                              Die Neeo war in der Tat nicht günstig, zumal ich mehrere habe. Da vermutlich aber mitte nächstes Jahr die YIO-Remote getestet wird, will ich da auch nicht ein riesen Fass aufmachen.
                              Wenn es nicht geht, dann geht es halt eben nicht.
                              Ich habe vorgestern noch den Nuc komplett neu aufgesetzt, da die Beta von Proxmox installiert war. Nun ist die normale Version von Proxmox jungfräulich. Die ioBroker VM ist auch neu erstellt, ioBroker jedoch wiederhergestellt.
                              Aber ggfs komme ich auf dich zu, damit du mal auf mein Proxmox schauen kannst.

                              Mittlerweile hätte ich aber sämtliche http-Befehle zusammen, um den Adapter mit Blockly nachzubauen.

                              1 Antwort Letzte Antwort
                              0
                              • HomoranH Homoran

                                @kusi sagte in Bestehender Adapter umschreiben:

                                Ist es möglich einen bestehenden Adpater umzuschreiben (wird nicht mehr supportet) und wenn ja, könnte mir jemand dabei helfen?

                                Ja, nein, vielleicht

                                Natürlich kannst du es lokal für dich machen.
                                Auf das bisher genutzte Repo hat nur der Eigentümer Zugriff, die Änderungen für alle wird auf diesem Weg schwierig.
                                Man könnte natürlich einen Fork ziehen.

                                Um welchen Adapter geht es denn?

                                K Offline
                                K Offline
                                Kusi
                                schrieb am zuletzt editiert von
                                #42

                                @homoran Wenn ich einen URL Request mache, erhalte ich folgende Antwort:

                                [{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Wohnzimmer","roomname":"Wohnzimmer","model":"TV%202.0%20UHD%20(Additional%20Hardware%20necessary)","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585611100160/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407932336662380544","powerKey":"6407932585309110272"},{"type":"launch","detail":{"devicename":"Verst%C3%A4rker","roomname":"Wohnzimmer","model":"STR-DN1080%20AVR","manufacturer":"Sony","devicetype":"AVRECEIVER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448161329152/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933299204816896","powerKey":"6407933448090025984"},{"type":"launch","detail":{"devicename":"Xbox%20One%20X","roomname":"Wohnzimmer","model":"Xbox%20One%20X","manufacturer":"Microsoft","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818950385664/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933595926659072","powerKey":"6407933818862305280"},{"type":"launch","detail":{"devicename":"Wii","roomname":"Wohnzimmer","model":"Wii","manufacturer":"Nintendo","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818967162880/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933781746909184","powerKey":"6407933818874888192"},{"type":"launch","detail":{"devicename":"Nvidia%20Shield","roomname":"Wohnzimmer","model":"ioBroker%20Shield","manufacturer":"NEEO","devicetype":"MEDIAPLAYER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815616249856/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6833739810096545792","powerKey":"6833739815536558080"},{"type":"launch","detail":{"devicename":"Ambilight%20Schlafzimmer","roomname":"Schlafzimmer","model":"Hue","manufacturer":"Philips","devicetype":"LIGHT"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464734318592/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6734979547038482432","powerKey":"6518913464629460992"},{"type":"launch","detail":{"devicename":"TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"Sony%20TV%20Schlafzimmer","manufacturer":"Sony","devicetype":"TV"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878470299648/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856304596109754368","powerKey":"6856304878285750272"},{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"DVB%20Swisscom%20TV%20Schlafzimmer","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544234815488/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856316536823480320","powerKey":"6856316544163512320"},{"type":"launch","detail":{"devicename":"Sonos%20Kusi","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674105876480/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458510595129344","powerKey":"6788458673942298624"},{"type":"launch","detail":{"devicename":"Sonos%20Feli","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674118459392/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458668535840768","powerKey":"6788458673950687232"},{"type":"launch","detail":{"devicename":"ioBroker","roomname":"SmartHome","model":"HDMISWITCH","manufacturer":"DUMMY","devicetype":"HDMISWITCH"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413848748032/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6781140315068694528","powerKey":"6781140413701947392"},{"type":"launch","detail":{"devicename":"Klimaanlage","roomname":"SmartHome","model":"CLIMA","manufacturer":"DUMMY","devicetype":"CLIMA"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072153190400/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6831595058282627072","powerKey":"6831595071981223936"}]
                                

                                Bin ich richtig in der Annahme dass dies ein JSON ist?
                                Wie kann ich nun den "Devicename" und "isPoweredOn" auslesen?

                                Mit folgendem Blockly erhalte ich die Antwort "undefined".
                                1b513c49-a120-4b15-9545-83235c116cb1-image.png

                                Ein Entfernen der eckigen Klammern am Anfang und Ende bringt den Fehler

                                00:07:55.818	error	javascript.0 (437) script.js.Test_Adapter.Neeo: Cannot parse "{"type":"launch","detail":{"de"SyntaxError: Unexpected token , in JSON at position 737
                                
                                liv-in-skyL 2 Antworten Letzte Antwort
                                0
                                • K Kusi

                                  @homoran Wenn ich einen URL Request mache, erhalte ich folgende Antwort:

                                  [{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Wohnzimmer","roomname":"Wohnzimmer","model":"TV%202.0%20UHD%20(Additional%20Hardware%20necessary)","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585611100160/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407932336662380544","powerKey":"6407932585309110272"},{"type":"launch","detail":{"devicename":"Verst%C3%A4rker","roomname":"Wohnzimmer","model":"STR-DN1080%20AVR","manufacturer":"Sony","devicetype":"AVRECEIVER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448161329152/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933299204816896","powerKey":"6407933448090025984"},{"type":"launch","detail":{"devicename":"Xbox%20One%20X","roomname":"Wohnzimmer","model":"Xbox%20One%20X","manufacturer":"Microsoft","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818950385664/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933595926659072","powerKey":"6407933818862305280"},{"type":"launch","detail":{"devicename":"Wii","roomname":"Wohnzimmer","model":"Wii","manufacturer":"Nintendo","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818967162880/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933781746909184","powerKey":"6407933818874888192"},{"type":"launch","detail":{"devicename":"Nvidia%20Shield","roomname":"Wohnzimmer","model":"ioBroker%20Shield","manufacturer":"NEEO","devicetype":"MEDIAPLAYER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815616249856/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6833739810096545792","powerKey":"6833739815536558080"},{"type":"launch","detail":{"devicename":"Ambilight%20Schlafzimmer","roomname":"Schlafzimmer","model":"Hue","manufacturer":"Philips","devicetype":"LIGHT"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464734318592/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6734979547038482432","powerKey":"6518913464629460992"},{"type":"launch","detail":{"devicename":"TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"Sony%20TV%20Schlafzimmer","manufacturer":"Sony","devicetype":"TV"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878470299648/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856304596109754368","powerKey":"6856304878285750272"},{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"DVB%20Swisscom%20TV%20Schlafzimmer","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544234815488/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856316536823480320","powerKey":"6856316544163512320"},{"type":"launch","detail":{"devicename":"Sonos%20Kusi","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674105876480/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458510595129344","powerKey":"6788458673942298624"},{"type":"launch","detail":{"devicename":"Sonos%20Feli","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674118459392/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458668535840768","powerKey":"6788458673950687232"},{"type":"launch","detail":{"devicename":"ioBroker","roomname":"SmartHome","model":"HDMISWITCH","manufacturer":"DUMMY","devicetype":"HDMISWITCH"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413848748032/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6781140315068694528","powerKey":"6781140413701947392"},{"type":"launch","detail":{"devicename":"Klimaanlage","roomname":"SmartHome","model":"CLIMA","manufacturer":"DUMMY","devicetype":"CLIMA"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072153190400/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6831595058282627072","powerKey":"6831595071981223936"}]
                                  

                                  Bin ich richtig in der Annahme dass dies ein JSON ist?
                                  Wie kann ich nun den "Devicename" und "isPoweredOn" auslesen?

                                  Mit folgendem Blockly erhalte ich die Antwort "undefined".
                                  1b513c49-a120-4b15-9545-83235c116cb1-image.png

                                  Ein Entfernen der eckigen Klammern am Anfang und Ende bringt den Fehler

                                  00:07:55.818	error	javascript.0 (437) script.js.Test_Adapter.Neeo: Cannot parse "{"type":"launch","detail":{"de"SyntaxError: Unexpected token , in JSON at position 737
                                  
                                  liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  schrieb am zuletzt editiert von
                                  #43

                                  @kusi

                                  geht nicht so einfach- das ist ein array mit allen devices - sieht so aus:

                                  Image 3.png

                                  hier ein beispiel zum auslesen:

                                  Image 4.png

                                  block zum importieren:

                                  <xml xmlns="https://developers.google.com/blockly/xml">
                                   <variables>
                                     <variable id="1[ShADWL#DIla+B:Ti*O">x</variable>
                                     <variable id="3*aG|5B/38gJvOqC#)KT">dasJson</variable>
                                   </variables>
                                   <block type="procedures_defcustomreturn" id="wJ22T8w(WqT,:DQGI-S}" x="487" y="337">
                                     <mutation statements="false">
                                       <arg name="x" varid="1[ShADWL#DIla+B:Ti*O"></arg>
                                     </mutation>
                                     <field name="NAME">etwas tun</field>
                                     <field name="SCRIPT">ICByZXR1cm4gZGVjb2RlVVJJKHgpOyAg</field>
                                     <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                   </block>
                                   <block type="variables_set" id="(}:O*?%PbhZSYfk22prk" x="62" y="412">
                                     <field name="VAR" id="3*aG|5B/38gJvOqC#)KT">dasJson</field>
                                     <value name="VALUE">
                                       <block type="text" id="7{aqX5tG~87w;?PWPcNv">
                                         <field name="TEXT">[{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Wohnzimmer","roomname":"Wohnzimmer","model":"TV%202.0%20UHD%20(Additional%20Hardware%20necessary)","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585611100160/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407932336662380544","powerKey":"6407932585309110272"},{"type":"launch","detail":{"devicename":"Verst%C3%A4rker","roomname":"Wohnzimmer","model":"STR-DN1080%20AVR","manufacturer":"Sony","devicetype":"AVRECEIVER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448161329152/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933299204816896","powerKey":"6407933448090025984"},{"type":"launch","detail":{"devicename":"Xbox%20One%20X","roomname":"Wohnzimmer","model":"Xbox%20One%20X","manufacturer":"Microsoft","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818950385664/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933595926659072","powerKey":"6407933818862305280"},{"type":"launch","detail":{"devicename":"Wii","roomname":"Wohnzimmer","model":"Wii","manufacturer":"Nintendo","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818967162880/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933781746909184","powerKey":"6407933818874888192"},{"type":"launch","detail":{"devicename":"Nvidia%20Shield","roomname":"Wohnzimmer","model":"ioBroker%20Shield","manufacturer":"NEEO","devicetype":"MEDIAPLAYER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815616249856/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6833739810096545792","powerKey":"6833739815536558080"},{"type":"launch","detail":{"devicename":"Ambilight%20Schlafzimmer","roomname":"Schlafzimmer","model":"Hue","manufacturer":"Philips","devicetype":"LIGHT"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464734318592/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6734979547038482432","powerKey":"6518913464629460992"},{"type":"launch","detail":{"devicename":"TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"Sony%20TV%20Schlafzimmer","manufacturer":"Sony","devicetype":"TV"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878470299648/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856304596109754368","powerKey":"6856304878285750272"},{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"DVB%20Swisscom%20TV%20Schlafzimmer","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544234815488/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856316536823480320","powerKey":"6856316544163512320"},{"type":"launch","detail":{"devicename":"Sonos%20Kusi","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674105876480/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458510595129344","powerKey":"6788458673942298624"},{"type":"launch","detail":{"devicename":"Sonos%20Feli","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674118459392/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458668535840768","powerKey":"6788458673950687232"},{"type":"launch","detail":{"devicename":"ioBroker","roomname":"SmartHome","model":"HDMISWITCH","manufacturer":"DUMMY","devicetype":"HDMISWITCH"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413848748032/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6781140315068694528","powerKey":"6781140413701947392"},{"type":"launch","detail":{"devicename":"Klimaanlage","roomname":"SmartHome","model":"CLIMA","manufacturer":"DUMMY","devicetype":"CLIMA"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072153190400/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6831595058282627072","powerKey":"6831595071981223936"}] </field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="debug" id="d.,x(T~9aSJ==m0z!`W}">
                                         <field name="Severity">log</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="9u;[S-`.@789WOH!HDY#">
                                             <field name="TEXT">test</field>
                                           </shadow>
                                           <block type="get_attr" id="3f|OQ]=,HXS5w_H#B1Js">
                                             <value name="PATH">
                                               <shadow type="text" id="Y}ieiQ=E94d#(_?/8PQG">
                                                 <field name="TEXT">detail.devicename</field>
                                               </shadow>
                                             </value>
                                             <value name="OBJECT">
                                               <block type="lists_getIndex" id="QIQ_r5a21}!?lyjOyDk,">
                                                 <mutation statement="false" at="true"></mutation>
                                                 <field name="MODE">GET</field>
                                                 <field name="WHERE">FROM_START</field>
                                                 <value name="VALUE">
                                                   <block type="convert_json2object" id="CFu!*@NDhLFi|O8SI,PC">
                                                     <value name="VALUE">
                                                       <block type="variables_get" id="fs}T7;Y)6$AV1AF?J_d4">
                                                         <field name="VAR" id="3*aG|5B/38gJvOqC#)KT">dasJson</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <value name="AT">
                                                   <block type="math_number" id="j=rEPn#a$Ma50FRUXDU[">
                                                     <field name="NUM">1</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="debug" id="j{2e6Q@Jm4?Co:qeqIBL">
                                             <field name="Severity">log</field>
                                             <value name="TEXT">
                                               <shadow type="text" id="0m_Xe5#/4v{/A!yON2*A">
                                                 <field name="TEXT">test</field>
                                               </shadow>
                                               <block type="procedures_callcustomreturn" id="!I%d%R(BI[L{oZ?Z;g%0">
                                                 <mutation name="etwas tun">
                                                   <arg name="x"></arg>
                                                 </mutation>
                                                 <value name="ARG0">
                                                   <block type="get_attr" id="z[0?tXWjM4|q121#3A,c">
                                                     <value name="PATH">
                                                       <shadow type="text" id="VnT5#dqip-(qdsW9mhU;">
                                                         <field name="TEXT">detail.devicename</field>
                                                       </shadow>
                                                     </value>
                                                     <value name="OBJECT">
                                                       <block type="lists_getIndex" id="(ZbXE2(7RSh/|jLB!@_?">
                                                         <mutation statement="false" at="true"></mutation>
                                                         <field name="MODE">GET</field>
                                                         <field name="WHERE">FROM_START</field>
                                                         <value name="VALUE">
                                                           <block type="convert_json2object" id="ATm@Y,W^QF~OFh-}Abmr">
                                                             <value name="VALUE">
                                                               <block type="variables_get" id="ATT=yE-mh1AL6lqeD$Z_">
                                                                 <field name="VAR" id="3*aG|5B/38gJvOqC#)KT">dasJson</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="AT">
                                                           <block type="math_number" id="W`6%OuSb/L#8;]83+mKG">
                                                             <field name="NUM">2</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                  </xml>
                                  

                                  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 Antwort Letzte Antwort
                                  0
                                  • K Kusi

                                    @homoran Wenn ich einen URL Request mache, erhalte ich folgende Antwort:

                                    [{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Wohnzimmer","roomname":"Wohnzimmer","model":"TV%202.0%20UHD%20(Additional%20Hardware%20necessary)","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585611100160/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407932585577545728/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407932336662380544","powerKey":"6407932585309110272"},{"type":"launch","detail":{"devicename":"Verst%C3%A4rker","roomname":"Wohnzimmer","model":"STR-DN1080%20AVR","manufacturer":"Sony","devicetype":"AVRECEIVER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448161329152/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933448152940544/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933299204816896","powerKey":"6407933448090025984"},{"type":"launch","detail":{"devicename":"Xbox%20One%20X","roomname":"Wohnzimmer","model":"Xbox%20One%20X","manufacturer":"Microsoft","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818950385664/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818937802752/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933595926659072","powerKey":"6407933818862305280"},{"type":"launch","detail":{"devicename":"Wii","roomname":"Wohnzimmer","model":"Wii","manufacturer":"Nintendo","devicetype":"GAMECONSOLE"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818967162880/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6407933818958774272/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6407933781746909184","powerKey":"6407933818874888192"},{"type":"launch","detail":{"devicename":"Nvidia%20Shield","roomname":"Wohnzimmer","model":"ioBroker%20Shield","manufacturer":"NEEO","devicetype":"MEDIAPLAYER"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815616249856/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6407914396776923136/recipes/6833739815607861248/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6833739810096545792","powerKey":"6833739815536558080"},{"type":"launch","detail":{"devicename":"Ambilight%20Schlafzimmer","roomname":"Schlafzimmer","model":"Hue","manufacturer":"Philips","devicetype":"LIGHT"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464734318592/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6518913464730124288/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6734979547038482432","powerKey":"6518913464629460992"},{"type":"launch","detail":{"devicename":"TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"Sony%20TV%20Schlafzimmer","manufacturer":"Sony","devicetype":"TV"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878470299648/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856304878453522432/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856304596109754368","powerKey":"6856304878285750272"},{"type":"launch","detail":{"devicename":"Swisscom%20TV%20Schlafzimmer","roomname":"Schlafzimmer","model":"DVB%20Swisscom%20TV%20Schlafzimmer","manufacturer":"Swisscom","devicetype":"DVB"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544234815488/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6503790620979494912/recipes/6856316544222232576/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6856316536823480320","powerKey":"6856316544163512320"},{"type":"launch","detail":{"devicename":"Sonos%20Kusi","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674105876480/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674093293568/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458510595129344","powerKey":"6788458673942298624"},{"type":"launch","detail":{"devicename":"Sonos%20Feli","roomname":"Badezimmer","model":"PLAY%3A1","manufacturer":"Sonos","devicetype":"SONOS"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674118459392/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6677596736619282432/recipes/6788458674114265088/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6788458668535840768","powerKey":"6788458673950687232"},{"type":"launch","detail":{"devicename":"ioBroker","roomname":"SmartHome","model":"HDMISWITCH","manufacturer":"DUMMY","devicetype":"HDMISWITCH"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413848748032/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6781140413840359424/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6781140315068694528","powerKey":"6781140413701947392"},{"type":"launch","detail":{"devicename":"Klimaanlage","roomname":"SmartHome","model":"CLIMA","manufacturer":"DUMMY","devicetype":"CLIMA"},"url":{"identify":"http://192.168.1.104:3000/v1/systeminfo/identbrain","setPowerOn":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/execute","setPowerOff":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072153190400/execute","getPowerState":"http://192.168.1.104:3000/v1/projects/home/rooms/6781022373706465280/recipes/6831595072144801792/isactive"},"isCustom":false,"isPoweredOn":false,"uid":"6831595058282627072","powerKey":"6831595071981223936"}]
                                    

                                    Bin ich richtig in der Annahme dass dies ein JSON ist?
                                    Wie kann ich nun den "Devicename" und "isPoweredOn" auslesen?

                                    Mit folgendem Blockly erhalte ich die Antwort "undefined".
                                    1b513c49-a120-4b15-9545-83235c116cb1-image.png

                                    Ein Entfernen der eckigen Klammern am Anfang und Ende bringt den Fehler

                                    00:07:55.818	error	javascript.0 (437) script.js.Test_Adapter.Neeo: Cannot parse "{"type":"launch","detail":{"de"SyntaxError: Unexpected token , in JSON at position 737
                                    
                                    liv-in-skyL Offline
                                    liv-in-skyL Offline
                                    liv-in-sky
                                    schrieb am zuletzt editiert von
                                    #44

                                    @kusi

                                    • request gibt dir einen string im json-format
                                    • muss in ein json-object verwandelt werden, um mit punkt-notation arbeiten zu können
                                    • die eckigen klammer zeigen, das es ein array ist mit json-object-einträgen
                                    • der devicename ist in url-lesbar - der 2te debug-blog verwandelt über die function den url-code in einen lesbaren code

                                    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

                                    K 2 Antworten Letzte Antwort
                                    0
                                    • liv-in-skyL liv-in-sky

                                      @kusi

                                      • request gibt dir einen string im json-format
                                      • muss in ein json-object verwandelt werden, um mit punkt-notation arbeiten zu können
                                      • die eckigen klammer zeigen, das es ein array ist mit json-object-einträgen
                                      • der devicename ist in url-lesbar - der 2te debug-blog verwandelt über die function den url-code in einen lesbaren code
                                      K Offline
                                      K Offline
                                      Kusi
                                      schrieb am zuletzt editiert von Kusi
                                      #45

                                      @liv-in-sky Danke für deine Arbeit. Was du genau meinst ist für mich noch unbekannt, aber es funktioniert. Darauf kann ich aufbauen, vielen Dank.

                                      e251b957-4290-4006-9def-28eb4962a4ff-image.png

                                      Warum "decodeURI"? URL hätte ich ja noch verstehen können, aber URI?

                                      1 Antwort Letzte Antwort
                                      0
                                      • liv-in-skyL liv-in-sky

                                        @kusi

                                        • request gibt dir einen string im json-format
                                        • muss in ein json-object verwandelt werden, um mit punkt-notation arbeiten zu können
                                        • die eckigen klammer zeigen, das es ein array ist mit json-object-einträgen
                                        • der devicename ist in url-lesbar - der 2te debug-blog verwandelt über die function den url-code in einen lesbaren code
                                        K Offline
                                        K Offline
                                        Kusi
                                        schrieb am zuletzt editiert von Kusi
                                        #46

                                        @liv-in-sky
                                        Notepad und JSON-Plugin installiert, andere URL benutzt, und nun sehe ich noch viel mehr.
                                        Danke dir für deinen Denkanstoss mit dem Notepad :-)

                                        0acadfef-3f6f-49bd-8d66-739d7d428485-image.png

                                        liv-in-skyL 2 Antworten Letzte Antwort
                                        0
                                        • K Kusi

                                          @liv-in-sky
                                          Notepad und JSON-Plugin installiert, andere URL benutzt, und nun sehe ich noch viel mehr.
                                          Danke dir für deinen Denkanstoss mit dem Notepad :-)

                                          0acadfef-3f6f-49bd-8d66-739d7d428485-image.png

                                          liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          schrieb am zuletzt editiert von
                                          #47

                                          @kusi

                                          ich nehme an, der adapter wird ja auch alle x-sekunden abgefragt haben

                                          also fragst du immer wieder, welches gerät eingeschalten ist und dann fragst du diese geräte ab. vielleicht kannst du noch durch eingerenzung der tagesstunden den traffic reduzieren.

                                          evtl kannst du einen anderen trigger nutzen. wenn dieser an ist wird mehr abgefragt, wenn er aus ist, ist das interval geringer bei der abfrage

                                          wenn es nur zur anzeige dient, brauchst du ja nicht unbedingt alle 10 sek - wenn du etwas steuern willst , dann schon - je nachdem, was für netzwerk-kompunenten du hast und wie das netzwerk ausgelastet ist

                                          ich würde mir erstmal keine großen gedanken machen und einfach mal loslegen - der adapter auf dem raspi wird ja dann auch abgeschalten

                                          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 Antwort Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

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

                                          458

                                          Online

                                          32.9k

                                          Benutzer

                                          83.1k

                                          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