Eine vollständige und aktuelle Referenz zu Zigbee2MQTT Topics ist hier zu finden.
Das Snips Protokoll wird neben anderen Implementationen mit MQTT Topics implementiert. Dazu gibt es zwei offizielle Referenz APIs. Einmal eine Allgemeine und eine speziell zum Dialog Manager. Unsere Übersicht enthält zwar alle Topics jedoch fehlt z.B. der Payload und weitere Informationen. Für einen groben Überblick ist unsere Übersicht über alle Topics jedoch gut geeignet. Um mehr Informationen zu erlangen wurde bei jedem Topic auf die offizielle Referenz verlinkt.
Publish
| Topic | Beschreibung |
|---|---|
| hermes/audioServer/SITE_ID/playBytes/REQUEST_ID | WAV Sound (komplett) zum Abspielen senden |
| hermes/audioServer/SITE_ID/playBytesStreaming/REQUEST_ID/CHUNK_NUMBER/IS_LAST_CHUNK | WAV Sound (Teil eines Streams) zum Abspielen senden |
Subscribe
| Topic | Beschreibung |
|---|---|
| hermes/audioServer/SITE_ID/playFinished | WAV Sound wurde abgespielt |
| hermes/audioServer/SITE_ID/streamFinished | WAV Stream wurde abgespielt |
| hermes/audioServer/SITE_ID/audioFrame | WAV Audio Frame wurde erfasst |
Publish
| Topic | Beschreibung |
|---|---|
| hermes/hotword/toggleOn | Wakeword Engine anschalten |
| hermes/hotword/toggleOff | Wakeword Engine ausschalten |
Subscribe
| Topic | Beschreibung |
|---|---|
| hermes/hotword/WAKEWORD_ID/detected | Das Wakeword wurde erkannt. Bei nur einem Wakeword ist die Wakeword ID default.Mit hermes/hotword/+/detected kann auf alle Wakewords gehört werden |
Publish
| Topic | Beschreibung |
|---|---|
| hermes/asr/toggleOn | ASR anschalten |
| hermes/asr/toggleOff | ASR ausschalten |
| hermes/asr/startListening | ASR mitteilen zuzuhören |
| hermes/asr/stopListening | ASR mitteilen nicht mehr zuzuhören |
Subscribe
| Topic | Beschreibung |
|---|---|
| hermes/asr/partialTextCaptured | Zwischenergebnis der ASR |
| hermes/asr/textCaptured | Endergebnis der ASR |
Publish
| Topic | Beschreibung |
|---|---|
| hermes/nlu/query | NLU Text senden (Normalerweise von der ASR ermittelt) |
| hermes/nlu/partialQuery | NLU fehlenden Teiltext eines Intents (z.B. Slot) senden |
Subscribe
| Topic | Beschreibung |
|---|---|
| hermes/nlu/intentParsed | Ergebnis der NLU (ermittelter Intent) |
| hermes/nlu/slotParsed | Ergebnis der NLU (ermittelter Slot) |
| hermes/nlu/intentNotRecognized | Es konnte kein Intent ermittelt werden |
| hermes/error/nlu | Über diesen Topic meldet die NLU verschiedene Fehler |
Publish
| Topic | Beschreibung |
|---|---|
| hermes/dialogueManager/startSession | Dialogsession starten |
| hermes/dialogueManager/continueSession | Dialog weiterführen falls z.B. weitere Nutzereingaben erforderlich sind. |
| hermes/dialogueManager/endSession | Dialog beenden. Gesendet wenn Intent abgearbeitet ist. |
| hermes/dialogueManager/configure | Dialog Manager auf eine Auswahl an Intents beschränken. |
| hermes/injection/perform | Entities injizieren. Erlaubt es ASR & NLU Models direkt auf dem Gerät zu erweitern. |
| hermes/injection/complete | Signalisieren, dass Entity injection fertig ist |
| hermes/injection/reset/perform | Injizierte Entities löschen und ASR & NLU neustarten |
| hermes/injection/reset/complete | Signalisieren, dass injizierte Entities gelöscht sind |
Subscribe
| Topic | Beschreibung |
|---|---|
| hermes/intent/INTENT_NAME | Intent wird ausgeführt |
| hermes/dialogueManager/intentNotRecognized | Intent wurde nicht erkannt |
| hermes/dialogueManager/sessionQueued | Sessionstart wurde angefragt obwohl eine Session aktiv ist. Session kommt in Warteschlange |
| hermes/dialogueManager/sessionStarted | Session wurde gestartet (Durch Wakeword oder manuell) |
| hermes/dialogueManager/sessionEnded | Session wurde beendet |
Publish
| Topic | Beschreibung |
|---|---|
| hermes/tts/say (low level) | TTS befehlen bestimmten Text zu sagen |
Subscribe
| Topic | Beschreibung |
|---|---|
| hermes/tts/sayFinished | TTS hat gesprochen. |