Handling assistant no_response events
This commit is contained in:
parent
4f75b765b1
commit
c1caa182be
2 changed files with 9 additions and 1 deletions
|
@ -12,7 +12,8 @@ from google.assistant.library.file_helpers import existing_file
|
|||
|
||||
from platypush.backend import Backend
|
||||
from platypush.message.event.assistant import \
|
||||
ConversationStartEvent, ConversationEndEvent, ConversationTimeoutEvent, SpeechRecognizedEvent
|
||||
ConversationStartEvent, ConversationEndEvent, ConversationTimeoutEvent, \
|
||||
NoResponseEvent, SpeechRecognizedEvent
|
||||
|
||||
class AssistantGoogleBackend(Backend):
|
||||
""" Class for the Google Assistant backend. It creates and event source
|
||||
|
@ -48,6 +49,8 @@ class AssistantGoogleBackend(Backend):
|
|||
self.bus.post(ConversationEndEvent())
|
||||
elif event.type == EventType.ON_CONVERSATION_TURN_TIMEOUT:
|
||||
self.bus.post(ConversationTimeoutEvent())
|
||||
elif event.type == EventType.ON_NO_RESPONSE:
|
||||
self.bus.post(NoResponseEvent())
|
||||
elif event.type == EventType.ON_RECOGNIZING_SPEECH_FINISHED:
|
||||
phrase = event.args['text'].lower().strip()
|
||||
logging.info('Speech recognized: {}'.format(phrase))
|
||||
|
|
|
@ -34,6 +34,11 @@ class ConversationTimeoutEvent(ConversationEndEvent):
|
|||
super().__init__(*args, **kwargs)
|
||||
|
||||
|
||||
class NoResponseEvent(ConversationEndEvent):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
|
||||
class SpeechRecognizedEvent(AssistantEvent):
|
||||
def __init__(self, phrase, *args, **kwargs):
|
||||
super().__init__(phrase=phrase, *args, **kwargs)
|
||||
|
|
Loading…
Reference in a new issue