google.assistant.library 패키지에 해당됩니다.
-
class
google.assistant.library.
Assistant
(credentials, device_model_id)¶ Google 어시스턴트 라이브러리의 클라이언트입니다.
Google 어시스턴트의 기본 제어 기능과 수명 주기 처리를 제공합니다. 어시스턴트를
ContextManager
로 사용하는 것이 좋습니다.with Assistant(credentials, device_model_id) as assistant:
이렇게 하면 기본 네이티브 구현이 메모리 관리를 처리합니다
start()
가 호출되면 어시스턴트는 현재 어시스턴트가 있는 다양한 상태를 전달하는 이벤트 스트림을 생성합니다(예:ON_CONVERSATION_TURN_STARTED ON_END_OF_UTTERANCE ON_RECOGNIZING_SPEECH_FINISHED: {'text': 'what time is it'} ON_RESPONDING_STARTED: {'is_error_response': False} ON_RESPONDING_FINISHED ON_CONVERSATION_TURN_FINISHED: {'with_follow_on_turn': False}
모든 이벤트 및 인수에 관한 자세한 내용은
EventType
를 참고하세요.용어:
핫워드: 음소거되지 않을 때 어시스턴트가 듣는 문구입니다.
"OK Google" OR "Hey Google"
Turn: 단일 사용자 요청 후 어시스턴트의 응답입니다.
대화: 어시스턴트로부터 원하는 최종 결과를 얻는 하나 이상의 대화 단계입니다.
"What time is it?" -> "The time is 6:24 PM" OR "Set a timer" -> "Okay, for how long?" -> "5 minutes" -> "Sure, 5 minutes, starting now!"
매개변수: - credentials (google.oauth2.credentials.Credentials) – Google OAuth2 사용자 인증 정보
- device_model_id(str): Google에 프로젝트에 등록된 device_model_id입니다. 이 문자열은 비워둘 수 없습니다.
발생 오류: ValueError
:device_model_id
가 None이거나 비어 있는 경우입니다.-
device_id
¶ 어시스턴트에서 생성한 기기 ID를 반환합니다.
이 값은 서비스를 사용할 때 서버에서 기기를 식별합니다. Google Device Actions와 같은 기능을 사용할 수 있습니다 이 속성은 다음 날짜 이후에만 채워집니다.
start()
가 호출되었습니다.반환: start()
가 호출된 후의 기기 ID이며, 그렇지 않으면 빈 문자열입니다.반환 유형: str
-
send_text_query
(쿼리)¶ 마치 사용자가 말한 것처럼 어시스턴트에 |query|를 전송합니다.
이는 사용자가 핫워드를 말하고 질문을 하거나 후속 쿼리에 대한 답변을 말할 수 있습니다.
매개변수: query(str): 어시스턴트로 전송할 텍스트 쿼리입니다.
-
set_mic_mute
(is_muted)¶ 어시스턴트가 핫워드를 듣지 못하게 합니다.
어시스턴트가 핫워드를 리슨하지 못하도록 사용 중지할 수 있습니다. 이 기능은 Google Home 뒷면의 개인 정보 보호 버튼과 유사한 기능을 제공합니다.
이 메서드는 어시스턴트가 아직 시작되지 않은 경우 작동하지 않습니다.
매개변수: is_muted(불리언) – true이면 어시스턴트가 리슨을 중지하고 false이면 다시 시작할 수 있습니다.
-
start
()¶ 어시스턴트를 시작하며 핫워드 듣기가 포함됩니다.
start()
상태가 다음과 같으면 어시스턴트가 호출되면 어시스턴트는 핫워드를 듣는 '기본' ALSA 오디오 소스입니다. 이 어시스턴트에서 제공하는 다른 서비스도 시작합니다. 타이머/알람 등. 이 메서드는 한 번만 호출할 수 있습니다. 한 번 호출하면__exit__
까지 어시스턴트가 계속 실행됩니다. 알 수 있습니다.반환: 어시스턴트 상태 변경을 알리는 이벤트 큐입니다. 반환 유형: google.assistant.event.IterableEventQueue
-
start_conversation
()¶ 어시스턴트와 직접 새 대화를 시작합니다.
어시스턴트가 호출어를 들을 때와 마찬가지로 사용자의 음성 녹음과 Google에 전송을 모두 시작합니다.
어시스턴트가 시작되지 않았거나 음소거된 경우 이 메서드는 아무 작업도 하지 않습니다.
-
stop_conversation
()¶ 어시스턴트와의 활성 대화를 중지합니다.
어시스턴트는 사용자의 질문을 듣거나 응답할 수 있습니다. 활성 대화가 없는 경우 아무 일도 일어나지 않습니다.
-
google.assistant.library.event.
AlertEvent
(event_type, args, **_)¶ 'alert_type' 파싱을 추가하도록 이벤트를 확장합니다.
-
google.assistant.library.event.
AlertType
¶ 알림 유형
ON_ALERT_STARTED
및ON_ALERT_FINISHED
이벤트와 함께 사용됩니다.-
ALARM
= 0¶ '월요일 오전 3시'와 같이 절대 시간으로 설정된 이벤트
-
TIMER
= 1¶ '지금부터 30초 후'와 같은 상대 시간으로 설정된 이벤트
-
-
google.assistant.library.event.
DeviceActionEvent
(event_type, args, **kwargs)¶ 'actions' 속성을 추가하도록 Event를 확장합니다.
-
actions
¶ 현재 기기에서 실행할 명령어 생성기입니다.
-
-
google.assistant.library.event.
Event
(event_type, args, **_)¶ 어시스턴트에서 생성한 이벤트입니다.
-
type
¶ EventType: 생성된 이벤트 유형입니다.
-
args
¶ dict: 이 이벤트와 연결된 인수 키/값 쌍입니다.
-
정적
New
(event_type, args, **kwargs)¶ 필요한 경우 특수한 Event 클래스를 사용하여 새 이벤트를 만듭니다.
매개변수: - event_type(int): google.assistant.event.EventType의 이벤트에 해당하는 숫자 ID입니다.
- args (dict) – 이 이벤트와 연결된 인수 키-값 쌍입니다.
- kwargs (dict) – EventType에 대한 Event 클래스의 특수화입니다.
-
-
google.assistant.library.event.
EventType
¶ 이벤트 유형
-
ON_ALERT_FINISHED
= 11¶ alert_type
알림이 울리기를 완료했음을 나타냅니다.매개변수: alert_type(AlertType): 방금 완료된 알림 유형을 나타내는 enum의 ID입니다.
-
ON_ALERT_STARTED
= 10¶ 알림이 울리기 시작했음을 나타냅니다.
이 알림은 동일한
alert_type
가 포함된ON_ALERT_FINISHED
가 수신될 때까지 계속됩니다. 한 번에 하나의 알림만 활성화되어야 합니다.매개변수: alert_type(AlertType): 현재 울리는 알림 유형을 나타내는 enum의 ID입니다.
-
ON_ASSISTANT_ERROR
= 12¶ 어시스턴트 라이브러리에 오류가 발생했는지 여부를 나타냅니다.
매개변수: is_fatal (bool): True인 경우 어시스턴트가 복구할 수 없습니다. 다시 시작해야 합니다
-
ON_CONVERSATION_TURN_FINISHED
= 9¶ 어시스턴트가 현재 차례를 완료했습니다.
여기에는 사용자의 쿼리 처리와 전체 응답(있는 경우) 음성 출력이 모두 포함됩니다.
매개변수: with_follow_on_turn (bool) – True인 경우 어시스턴트는 후속 조치를 취합니다. 사용자가 후속 질문에 답변할 수 있도록 마이크가 다시 열립니다.
-
ON_CONVERSATION_TURN_STARTED
= 1¶ 새로운 차례가 시작되었음을 나타냅니다.
어시스턴트가 현재 듣고 있으며 사용자를 기다리는 중입니다. 쿼리합니다. 이는 호출어를 듣거나 어시스턴트에서
start_conversation()
이 호출된 결과일 수 있습니다.
-
ON_CONVERSATION_TURN_TIMEOUT
= 2¶ 구분 가능한 쿼리를 기다리는 중에 어시스턴트의 제한 시간이 초과되었습니다.
호워드가 잘못 트리거되었거나 어시스턴트가 사용자가 말한 내용을 이해하지 못한 것일 수 있습니다.
-
ON_DEVICE_ACTION
= 14¶ 기기 작업 요청이 기기에 전달되었음을 나타냅니다.
이 메서드는 특성 기기에서 지원됩니다. 이 이벤트 유형에는 특수한 '작업' 속성이 있습니다. 이 속성은 반복자 또는 기기 작업 명령어와 관련된 매개변수(해당하는 경우)를 반환합니다.
매개변수: dict: 기기 작업 요청의 디코딩된 JSON 페이로드입니다.
-
ON_END_OF_UTTERANCE
= 3¶ 어시스턴트가 사용자 쿼리 수신을 중지했습니다.
어시스턴트가 사용자가 말한 내용을 다 이해하지 못했을 수도 있지만 더 많은 오디오 데이터 수신이 중지되었습니다.
-
ON_MEDIA_STATE_ERROR
= 20¶ 트랙을 재생하는 중에 오류가 발생했음을 나타냅니다.
재생할 트랙이 더 이상 없으면 내장 미디어 플레이어는 다음 트랙으로 건너뛰거나
ON_MEDIA_STATE_IDLE
로 돌아가려고 시도합니다.
-
ON_MEDIA_STATE_IDLE
= 16¶ 재생 중인 항목이 없고 재생 대기열에 있는 항목도 없음을 나타냅니다.
이 이벤트는 시작 시 Google 어시스턴트 라이브러리의 뉴스/팟캐스트용 내장 미디어 플레이어에서 브로드캐스트되며, 사용자가 미디어를 중지하거나 일시중지하여 스트림이 시간 초과되어 플레이어가 유휴 상태가 될 때마다 브로드캐스트됩니다.
-
ON_MEDIA_TRACK_LOAD
= 17¶ 트랙이 로드 중이지만 재생이 시작되지 않았음을 나타냅니다.
새 메타데이터가 로드되면 여러 번 전달될 수 있습니다. 있습니다. 일반적으로
ON_MEDIA_TRACK_PLAY
이벤트가 뒤따릅니다.매개변수: - metadata(dict):
로드된 트랙의 메타데이터입니다. 이때까지 모든 필드가 채워지는 것은 아닙니다. 알 수 없는 필드는 포함되지 않습니다. 메타데이터 필드에는 다음이 포함됩니다.
album(str): 트랙이 속한 앨범의 이름입니다. album_art(str): 앨범 아트의 URL입니다. artist(str): 이 트랙을 만든 아티스트입니다. duration_ms(double): 이 트랙의 길이(밀리초)입니다. title(str): 트랙의 제목입니다. - track_type(MediaTrackType): 로드된 트랙 유형입니다.
- metadata(dict):
-
ON_MEDIA_TRACK_PLAY
= 18¶ 트랙이 현재 오디오를 출력 중임을 나타냅니다.
이는 한 상태에서 다른 상태로 전환될 때만 트리거됩니다(예:
ON_MEDIA_TRACK_LOAD
또는ON_MEDIA_TRACK_STOP
).매개변수: - metadata (dict) –
재생 트랙의 메타데이터입니다. 필드를 알 수 없는 경우 포함되지 않습니다 메타데이터 입력란에는 다음이 포함됩니다.
album(str): 트랙이 속한 앨범의 이름입니다. album_art(str): 앨범 아트의 URL입니다. artist(str): 이 트랙을 만든 아티스트입니다. duration_ms(double): 이 트랙의 길이(밀리초)입니다. title(str): 트랙의 제목입니다. - position_ms(double): 재생 중인 트랙의 현재 위치입니다(시작부터 밀리초 단위). 'metadata.duration_ms'가 알 수 없는 경우(0으로 설정됨) 이 필드는 설정되지 않습니다.
- track_type (MediaTrackType) – 재생 중인 트랙의 유형입니다.
- metadata (dict) –
-
ON_MEDIA_TRACK_STOP
= 19¶ 이전에 재생 중인 트랙이 중지되었음을 나타냅니다.
이는 일반적으로 사용자가 일시중지한 결과입니다. 트랙이 사용자가 다시 시작하면
ON_MEDIA_TRACK_PLAY
로 돌아갈 수 있습니다.매개변수: - metadata (dict) –
중지된 트랙의 메타데이터입니다. 알 수 없는 필드는 포함되지 않습니다. 메타데이터 입력란에는 다음이 포함됩니다.
album(str): 트랙이 속한 앨범의 이름입니다. album_art(str): 앨범 아트의 URL입니다. artist(str): 이 트랙을 만든 아티스트입니다. duration_ms(double): 이 트랙의 길이(밀리초)입니다. title(str): 트랙의 제목입니다. - position_ms (double) – 정지된 트랙의 현재 위치 밀리초 단위입니다. 'metadata.duration_ms'가 알 수 없는 경우(0으로 설정됨) 이 필드는 설정되지 않습니다.
- track_type(MediaTrackType): 중지된 트랙의 유형입니다.
- metadata (dict) –
-
ON_MUTED_CHANGED
= 13¶ 어시스턴트가 현재 듣고 있는지 여부를 나타냅니다.
start()
는 항상 초기 값을 보고하기 위해ON_MUTED_CHANGED
를 생성합니다.매개변수: is_muted(불리언): true인 경우 어시스턴트가 현재 핫워드를 리슨하고 있지 않으며 사용자 쿼리에 응답하지 않습니다.
-
ON_NO_RESPONSE
= 8¶ 어시스턴트가 차례를 완료했지만 할 말이 없습니다.
-
ON_RECOGNIZING_SPEECH_FINISHED
= 5¶ 어시스턴트가 최종 인식된 음성을 확인했습니다.
매개변수: text(str): 사용자 쿼리의 최종 텍스트 해석입니다.
-
ON_RENDER_RESPONSE
= 15¶ 어시스턴트에게 응답을 렌더링할 텍스트 출력이 있음을 나타냅니다.
매개변수: - type (RenderResponseType) – 렌더링할 응답 유형입니다.
- text(str): RenderResponseType.TEXT에 렌더링할 문자열입니다.
-
ON_RESPONDING_FINISHED
= 7¶ 어시스턴트가 음성으로 응답을 완료했습니다.
-
ON_RESPONDING_STARTED
= 6¶ 어시스턴트가 음성으로 응답하기 시작합니다.
ON_RESPONDING_FINISHED
가 수신될 때까지 어시스턴트가 응답합니다.매개변수: is_error_response (bool) – true는 로컬 오류 TTS가 재생되고 있음을 의미합니다. 그러지 않으면 어시스턴트가 서버 응답으로 응답합니다.
-
ON_START_FINISHED
= 0¶ 어시스턴트 라이브러리 시작이 완료되었습니다.
-
-
클래스
google.assistant.library.event.
IterableEventQueue
(timeout=3600)¶ queue.Queue를 확장하여
__iter__
인터페이스를 추가합니다.
-
class
google.assistant.library.event.
MediaStateChangeEvent
(event_type, args, **_)¶ Event를 확장하여 'state'의 파싱을 추가합니다.
-
클래스
google.assistant.library.event.
MediaTrackType
¶ ON_MEDIA_TRACK_X 이벤트의 트랙 유형입니다.
ON_MEDIA_TRACK_LOAD
,ON_MEDIA_TRACK_PLAY
,ON_MEDIA_TRACK_STOP
와 함께 사용-
CONTENT
= 2¶ 항목의 실제 콘텐츠(뉴스/팟캐스트)입니다.
-
TTS
= 1¶ 상품과 관련된 TTS 소개 또는 전면 광고 트랙입니다.
-
-
class
google.assistant.library.event.
RenderResponseEvent
(event_type, args, **_)¶ 'response_type' 파싱을 추가하도록 이벤트를 확장합니다.
-
google.assistant.library.event.
RenderResponseType
¶ 렌더링할 콘텐츠 유형입니다.
ON_RENDER_RESPONSE
와 함께 사용