+ Antworten
Seite 9 von 13 ErsteErste ... 7 8 9 10 11 ... LetzteLetzte
Ergebnis 81 bis 90 von 122
  1. #81
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,517

    Zitat Zitat von DrFrank Beitrag anzeigen
    Ich finde die verschachtelten Case-Anweisungen, wie sie hier vorgeschlagen werden, ja generell OK, aber man erzeugt damit aber ziemlich mehr redundanten Code.
    Das ist ja nur auf die schnelle reinkopiert damit das vielleicht verständlich ist. Redundanten Code kann Du ja einfach in eine Funktion packen und diese aufrufen. Und Du musst ja nix verschachten Du kannst auch einfach mit einer if Anweisung arbeiten. Der Übersichtlichkeit ist das halt geschachtelt du kannst aber auch so was machen wie

    PHP-Code:
    if(($roomname == "flur" || $roomname == "diele") && ($device == "licht" || $device == "lampe" || $device == "beleuchtung" || $device == "led") && ($action == "an"))
    {
    // Einschaltbefehl


  2. #82
    Registriert seit
    Jan 2013
    Beiträge
    30

    Standard Alexa macht das Licht an! Aber...

    Erstmal auch von mir ein dickes Dankeschön an patami für die Module. Hab es damit hinbekommen dass Alexa mir eine Lampe an und aus schaltet. Fühl mich grad wie ein Fünfjähriger mit nem neuen Spielzeug.

    Ja, aber, mit der Verfeinerung hab ich noch so meine Sorgen.

    Config sieht so aus:
    Es gibt einen intent "MakeTest" mit den slots: action und rooms

    Custom Slots sind wie folgt definiert:
    action: an | aus | einschalten | ausschalten
    rooms: schlafzimmer | bad | wohnzimmer | flur

    Utterances:
    MakeTest licht {action} im {rooms}
    MakeTest das licht {action} im {rooms}

    in IPS gibt es die passende Instanz die auch fleissig Daten empfängt, aber es kommt nicht das an was soll:
    Auf den Satz: "Alexa, frag ... licht ausschalten im bad" bekomme ich die slots wie folgt ins IPS:

    - Slots: {"action":"licht ausschalten","rooms":"bad"}

    Tja, warum auch immer, landet das "licht" mit im slot action. Klingt erstmal nicht schlimm, aber das führt natürlich dazu, das weitere Intents nicht erkannt werden und die Auswertung in IPS etwas schwieriger wird.

    Für mein Verständnis sollte doch nur das übergeben werden, was als custom slot definiert ist, aber das "licht " gehört da nicht dazu.

    Weiß hier jemand Rat?

    Danke schonmal.

    Grüße
    user

  3. #83
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,517

    Zitat Zitat von user813 Beitrag anzeigen
    Tja, warum auch immer, landet das "licht" mit im slot action. Klingt erstmal nicht schlimm, aber das führt natürlich dazu, das weitere Intents nicht erkannt werden und die Auswertung in IPS etwas schwieriger wird.
    Was steht denn im Service Simulator was Amazon an Intents sendet?

  4. #84
    Registriert seit
    Jan 2013
    Beiträge
    30

    Eigentlich genau das, was im intent ankommt:

    Code:
    ...
        "intent": {
          "name": "MakeTest",
          "slots": {
            "rooms": {
              "name": "rooms",
              "value": "bad"
            },
            "action": {
              "name": "action",
              "value": "licht ausschalten"
            }
          }
        }
      },
      "version": "1.0"
    }
    Es wird also schon von Amazon so an IPS gesendet.
    Weiß auch nicht wieso amazon das nicht richtig auswertet nach Vorgabe der utterance.

    Grüße
    user

  5. #85
    Registriert seit
    Jan 2013
    Beiträge
    30

    Sehr kurios, hab jetzt den custom slot type komplett gelöscht und neu angelegt, jetzt wird das richtig übergeben. Man könnte kurz denken jetzt funktioniert es, ABER:

    amazon ist es augenscheinlich egal was im custom slot definiert ist denn:

    "licht blabla im ofen" ergibt:
    Code:
        "slots": {
            "rooms": {
              "name": "rooms",
              "value": "ofen"
            },
            "action": {
              "name": "action",
              "value": "blabla"
    obwohl die slots so definert sind:

    Code:
    rooms: schlafzimmer | bad | wohnzimmer | flur
    action: einschalten | ausschalten
    Ist das normal? Wozu definiere ich denn den custom slot, wenn dann doch wieder irgendwas in IPS landet was das Skript dort natürlich wieder nicht kennt.

    Ist das bei Euch auch so?

    Grüße
    user

  6. #86
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,517

    Du hast bei rooms nach deinen Angaben gar kein Ofen als Slot definiert da kann das Amazon auch nicht erkennen.

  7. #87
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,517

    Schau Dir mal z.B. den How-To Skill näher an und dessen zugehörige Utterances, da siehst Du wie genau Utterances aufgebaut sein sollten, diese müssen sehr genau formuliert werden.

  8. #88
    Registriert seit
    Oct 2015
    Beiträge
    152

    Zitat Zitat von user813 Beitrag anzeigen
    Sehr kurios, hab jetzt den custom slot type komplett gelöscht und neu angelegt, jetzt wird das richtig übergeben. Man könnte kurz denken jetzt funktioniert es, ABER:

    amazon ist es augenscheinlich egal was im custom slot definiert ist denn:

    "licht blabla im ofen" ergibt:
    Code:
        "slots": {
            "rooms": {
              "name": "rooms",
              "value": "ofen"
            },
            "action": {
              "name": "action",
              "value": "blabla"
    obwohl die slots so definert sind:

    Code:
    rooms: schlafzimmer | bad | wohnzimmer | flur
    action: einschalten | ausschalten
    Ist das normal? Wozu definiere ich denn den custom slot, wenn dann doch wieder irgendwas in IPS landet was das Skript dort natürlich wieder nicht kennt.

    Ist das bei Euch auch so?

    Grüße
    user
    ja, das kommt schon vor. es passiert auch, dass man "lampen" definiert und "lampe" ankommt. das ist schon doof. aber dafür kann man die sätze in den sample utterances auch leicht abwandeln (es ist normalerweise egal ab man "die lampe" oder "eine lampe" sagt z.B.). nachteil ist, dass man das im intent abfangen muss.

    aber etwas in der art

    PHP-Code:
    switch (strtolower(@slots['action'])) {
        case 
    'lampe':
        case 
    'lampen':
        case 
    'eine lampe':
        case 
    'die lampen'
    löst das problem teilweise. man muss dann halt den switch case bei bedarf erweitern.

    aber ja, es kommt auch mal "blabla" an. aber dafür gibt es im switch case ja den fall default, wo man dann "diese lampe kenne ich nicht" zurückgeben kann

    meine erfahrung ist, dass amazon es umso besser erkennt, umso mehr utterances angegeben sind. insgesamt ist das schon kurios, aber man bekommt das durch testen und optimierungen ganz gut in den griff. ist halt ein bisschen arbeit.

    man könnte als utterances auch das definieren:

    schalte die lampe im {room} {action}
    schalte die lampen im {room} {action}
    schalte eine lampe im {room} {action}
    schalte das licht im {room} {action}
    schalte die beleuchtung im {room} {action}

    sowas funktioniert dann bei mir ganz gut.

    sobald ich hier mal (am wochenende hoffentlich) mehr zeit habe, erweitere ich die beispiele.
    Geändert von patami (24.02.17 um 07:17 Uhr)

  9. #89
    Registriert seit
    Oct 2015
    Beiträge
    152

    Hallo Leute,

    Ich habe soeben Version 3.1 des Custom Skill Moduls im master Branch released.

    Die wesentlichen Änderungen sind:
    - Unterstützung für AMAZON.RepeatIntent, um vorherige Antworten erneut vorzulesen.
    - Erweiterung der Demo um AMAZON.StopIntent und AMAZON.RepeatIntent.
    - Komplette Umstrukturierung der Dokumentation.
    - Kleinere Verbesserungen. Bugfixes waren glücklicherweise nicht nötig

    Hier findet ihr mehr Infos:
    - Deutsche Dokumentation
    - Demo Konfiguration
    - Dokumentation der Module und Funktionen
    - Häufige Fragen und Antworten

    Zukünftig findet ihr eine Übersicht der Änderungen immer in den Release Notes.

    Feedback ist gerne willkommen
    Geändert von patami (25.02.17 um 18:00 Uhr)

  10. #90
    Registriert seit
    May 2005
    Beiträge
    173

    Wahnsinn - Klasse Arbeit - Danke !!!

Ähnliche Themen

  1. Amazon Echo Skill & Modul
    Von DaveRichter im Forum Amazon Alexa
    Antworten: 1268
    Letzter Beitrag: 11.07.20, 12:51
  2. Amazon CUSTOM Skill
    Von MikeLima im Forum PHP-Module
    Antworten: 10
    Letzter Beitrag: 28.12.16, 12:34
  3. Wird es einen Smart Home Skill für Alexa geben?
    Von sschnake im Forum Allgemeine Diskussion
    Antworten: 3
    Letzter Beitrag: 10.11.16, 19:40
  4. Custom Slider
    Von traxanos im Forum Allgemeine Diskussion
    Antworten: 4
    Letzter Beitrag: 30.09.15, 13:36

Stichworte