Ich verwende derzeit Fauxmo, um benutzerdefinierte Befehle an verschiedene Geräte zu senden, um sie ein- / auszuschalten (zum Beispiel habe ich einen WiFi-zu-IR-Konverter, um meinen Tuner und Fernseher zu steuern), und ich kann den Fernseher damit ein- / ausschalten.
Ich habe auch Kodi-Integrations-Setup, also kann ich sagen:
Alexa, Ask Kodi to set volume to 50%
Aber ich möchte sagen können:
Alexa, Set tuner volume to 50%
Alexa, Play Bluray
Dh ich möchte in der Lage sein, Geräte zu steuern, ohne dass dies Ask xxxx
im Rahmen meiner Anfrage erforderlich ist .
Idealerweise möchte ich dies ohne einen Cloud-basierten Dienst (z. B. SmartThings oder Wink) tun.
Ich mag die von fauxmo verwendete Lösung (Emulation eines vorhandenen UPNP-Dienstes), aber sie ist auf Ein / Aus (und 'Dimmen', wenn Sie den Hue-fähigen Patch verwenden) beschränkt und nicht wirklich flexibel genug.
quelle
Sie sollten dies jetzt mit Alexas namensfreier Interaktion tun können .
quelle
Wie Lynx bereits in seiner Antwort ausführlich ausführt, gibt es keine Möglichkeit, vollständig auf den Aufrufnamen zu verzichten, es sei denn, Sie adressieren die vordefinierten APIs. Die Frage nach meinem Können ist jedoch nicht die einzige Möglichkeit, den Aufrufnamen zu verwenden.
Die Entwicklerseiten bieten drei verschiedene Möglichkeiten, um Aufrufnamen mit einer Anfrage zu verwenden.
Dokumentation des Alexa-Aufrufnamens
Außerdem zeigt diese Seite , mit welchen anderen Wörtern Sie die Anfrage verbinden können, den Aufrufnamen und die verbindlichen Verbindungswörter. Wenn Sie also Ihre eigene Alexa-Fähigkeit erstellen, müssen Sie einen guten Aufrufnamen und eine gute Aufforderung verwenden, damit es natürlich klingt.
Noch besser, Ihr Echo sollte bereits darauf reagieren, indem Sie die Blu-ray mit Ihrer Kodi-Integration starten.
Obwohl Sie den Aufrufnamen außerhalb der vordefinierten APIs nicht entfernen können, können Sie den Sprachbefehl natürlicher gestalten und die umständliche Verwendung von ask ... überspringen .
quelle
Wenn Sie spezielle Wörter verwenden, die von Alexa nicht standardmäßig verwendet werden, ist dies tatsächlich möglich. Die Methode ist ohnehin recht knifflig.
Sie müssen nur vermeiden, für Ihre Anfrage an AWS vorbeizukommen! Unmöglich, sagst du? Ja, es ist möglich.
In Ihrer Amazon Alexa-App oder in der Amazon Alexa-Web- App melden Sie sich in Ihrem Amazon Alexa-Konto an und in -> Einstellungen -> Verlauf haben Sie eine Live-Seite mit allen Anfragen und Wörtern, die Sie Alexa mitteilen.
In diesem Moment können Sie einen Web-Parser verwenden, um das Wort auszusprechen und ein Skript auszulösen, wenn dies das gewünschte Wort ist, oder Sie können eine erstaunliche kleine Software für Windows verwenden, die nur Aktionen und Skripts auslösen kann.
Hier der Link der Software. Auf YouTube finden Sie Anleitungen zur Verwendung von AddTopad.
Wenn Sie Skripte starten möchten, müssen Sie lediglich einen Listener an einem Port auslösen und eine spezielle Anfrage nach einem Wort in der Software senden. Ich benutze es zu Hause und ich mag die Tatsache, dass ich keinen Aufrufnamen sagen muss.
Danach können Sie, wie gesagt, beliebige Wörter verwenden, auch offene Wörter. Es wird Ihr Skript auslösen, aber Sie werden ein "Entschuldigung, das weiß ich nicht" von Alexa hören.
Ich benutze es und es funktioniert perfekt!
quelle
Ist diese Amazon-Dokumentation also nicht wahr? https://developer.amazon.com/docs/custom-skills/understanding-how-users-invoke-custom-skills.html#invoking-a-skill-with-no-specific-request-no-intent
Dies scheint ziemlich direkt zu sagen, dass Sie "Alexa" plus den Aufrufnamen sagen können. Wie zum Beispiel "Alexa, Daily Horoscopes".
Diese Methode wird auch als Option 3 für benutzerdefinierte Fähigkeiten angezeigt : https://developer.amazon.com/docs/custom-skills/choose-the-invocation-name-for-a-custom-skill.html#invoking- Custom-Skills
quelle