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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Cloud Dienste
  4. [gelöst] ioBroker Custom Skill / Javascript Problem

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    402

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

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

[gelöst] ioBroker Custom Skill / Javascript Problem

Geplant Angeheftet Gesperrt Verschoben Cloud Dienste
alexa skill
6 Beiträge 2 Kommentatoren 698 Aufrufe
  • Ä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.
  • RoE19xxR Offline
    RoE19xxR Offline
    RoE19xx
    schrieb am zuletzt editiert von RoE19xx
    #1

    Hallo,

    Laut Github Beschreibung kann man ja auf die Fragen im ioBroker Custom Skill mit dem text2command Adapter reagieren, oder auch mit Javascript (Beispiel ist auch in Github zu finden).

    Ich habe hierfür nun ein wenig mit Javascript experimentiert, da ich mir auf Dauer hier mehr Flexibilität und ggf. etwas weniger Pflegeaufwand als bei text2command verspreche.

    Ich verwende den iot Adapter, und habe dort "Benutze text2command Instanz" deaktiviert.

    Habe dann das Beispiel Script für einen kleinen Test etwas angepasst, das schaut dann so aus:

    // important, that ack=true
    on({id: 'iot.0.smart.lastCommand', ack: true, change: 'any'}, obj => {
        // you have 200ms to prepare the answer and to write it into iot.X.smart.lastResponse
        log("### Last Command: " +obj.state.val);
        if(obj.state.val.match(/büro/) && obj.state.val.match(/luftfeuchtigkeit/))
        {
            var humVal = getState("hm-rpc.0.MEQxxxxxxx.1.HUMIDITY").val;
            setState("iot.0.smart.lastResponse", "Die Luftfeuchtigkeit im Büro liegt aktuell bei " +humVal+ " Prozent"); // important, that ack=false (default)
            //setState('iot.0.smart.lastResponse', 'Received phrase is: ' + obj.state.val); // important, that ack=false (default)
        }
    });
    
    

    Dann teste ich mit dem Satz "Alexa, Frag ioBroker nach der Luftfeuchtigkeit im Büro".

    Bekomme auch sofort die Antwort "Die Luftfeuchtigkeit im Büro liegt aktuell bei <wert>Prozent".

    Theoretisch alles wunderbar.

    Allerdings wartet Alexa nach der Antwort auf eine weitere Eingabe. D.h. sie bleibt aktiv und hört weiter zu. Wenn ich noch etwas sage, dann wird das auch als Eingabe vom ioBroker Skill verarbeitet und steht in iot.0.smart.lastCommand zur Verfügung.

    Wenn ich nichts sage sprich nicht weiter reagiere, dann wartet sie ein paar Sekunden. Dann kommt der Quittierungston gefolgt von der Meldung "Ich habe im Moment Schwierigkeiten auf Deinen Custom ioBroker Skill zuzugreifen".

    Der Skill ist aber korrekt verbunden bzw. verknüpft (wurde auch schon getrennt und wieder verbunden).

    Gibt es da noch einen Fehler im ioBroker Custom Skill in Kombination mit Javascript?

    Hier noch die Versionen der Adapter die meiner Meinung nach hier relevant sein könnten:

    JS Script Engine >>> 4.0.11

    IoT Assitants >>> 0.3.1

    Ich verwende zwei JS Sript Engine Instanzen. Instanz 0 für Tests und Instanz 1 produktiv.

    Getestet habe ich das Ganze bei mir in der javascript.0 Instanz.

    Könnt ihr das auch reproduzieren oder habe ich hier irgendwo etwas übersehen?

    Bin für jeden Tipp dankbar!

    Gruß

    Roland</wert>

    1 Antwort Letzte Antwort
    0
    • apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #2

      Das kann sehr gut sein. Welche Version des iot Adapters nutzt du? Bitte die mal ein issue anlegen mit link hierher.

      Gesendet vom Handy …

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      1 Antwort Letzte Antwort
      0
      • RoE19xxR Offline
        RoE19xxR Offline
        RoE19xx
        schrieb am zuletzt editiert von
        #3

        Hallo Ingo,

        Wie oben geschrieben.

        JS Script Engine >>> 4.0.11

        IoT Adapter >>> 0.3.1

        Werde, wie von Dir vorgeschlagen, beim IoT Adapter mal ein Github Issue anlegen.

        Gruß

        Roland

        1 Antwort Letzte Antwort
        0
        • apollon77A Offline
          apollon77A Offline
          apollon77
          schrieb am zuletzt editiert von
          #4

          Ja, der Fakt das die Session offen bleibt im Default war so.

          Bitte mal 0.4.0 vom Github testen. Dort bleibt die Session jetzt nur offen wenn vorher ein "öffne ioBroker" gesagt wurde, sonst geht die Session zu. Es sei denn man nutzt die neuen Möglichkeiten um es zu Kontrollieren :-))

          Siehe https://github.com/ioBroker/ioBroker.iot#custom-skill

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          1 Antwort Letzte Antwort
          0
          • RoE19xxR Offline
            RoE19xxR Offline
            RoE19xx
            schrieb am zuletzt editiert von
            #5

            So, habe mal 0.4.0 vom IoT Adapter installiert.

            Spannend was sich da nun alles getan hat. Das ergibt nun ganz neue Möglichkeiten :mrgreen:

            Auf jeden Fall wurde das Problem behoben!

            Die neuen Möglichkeiten muss ich mir nun erst genauer anschauen.

            Vielen Dank für alles!

            Eine Frage noch, weil ich darüber gestolpert bin.

            Es gibt einen HelperState der im Github wie folgt beschrieben ist:

            smart.lastRoom: Room name (if exists) for which last command was executed.

            Der wird bei mir nicht befüllt. Woher kommt dieser Wert, wenn er denn befüllt wird bzw. worauf bezieht sich das "if exist".

            Gruß

            Roland

            1 Antwort Letzte Antwort
            0
            • apollon77A Offline
              apollon77A Offline
              apollon77
              schrieb am zuletzt editiert von
              #6

              @RoE19xx:

              Es gibt einen HelperState der im Github wie folgt beschrieben ist:

              smart.lastRoom: Room name (if exists) for which last command was executed.

              Der wird bei mir nicht befüllt. Woher kommt dieser Wert, wenn er denn befüllt wird bzw. worauf bezieht sich das "if exist". `

              Also wenn Du bei den Smart-Device einstellungen direkt im Objekt noch room bzw func setzt dann wird das gefüllt. Es wird wohl aber scheinbar nicht automatisch vom Objekt übernommen wie es mir scheint.

              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
              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

              310

              Online

              32.7k

              Benutzer

              82.5k

              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