google.assistant.library.
-
lớp
google.assistant.library.
Assistant
(thông tin đăng nhập, device_model_id)¶ Ứng dụng của Thư viện Trợ lý Google.
Cung cấp chức năng điều khiển cơ bản và xử lý vòng đời cho Trợ lý Google. Cách tốt nhất là sử dụng Trợ lý
ContextManager
:with Assistant(credentials, device_model_id) as assistant:
Điều này cho phép quá trình triển khai gốc cơ bản xử lý đúng cách việc quản lý bộ nhớ.
Sau khi
start()
được gọi, Trợ lý sẽ tạo một luồng Sự kiện chuyển tiếp nhiều trạng thái mà Trợ lý hiện đang ở, ví dụ: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}
Xem
EventType
để biết chi tiết trên mọi sự kiện và đối số của chúng.Bảng chú giải
Từ kích hoạt: Cụm từ mà Trợ lý lắng nghe khi không bị tắt tiếng:
"OK Google" OR "Hey Google"
Lượt: Một yêu cầu của người dùng, sau đó là câu trả lời của Trợ lý.
Cuộc trò chuyện: Một hoặc nhiều lượt rẽ dẫn đến kết quả cuối cùng mong muốn từ Trợ lý:
"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!"
Các thông số: - credentials (google.oauth2.credentials.Credentials) – Thông tin xác thực Google OAuth2 của người dùng.
- device_model_id (str) – device_model_id đã được đăng ký cho dự án của bạn với Google. Giá trị này không được là một chuỗi trống.
Mức tăng: ValueError
– Nếudevice_model_id
được để là Không có hoặc để trống.-
device_id
¶ Trả về mã thiết bị do Trợ lý tạo.
Giá trị này nhận dạng thiết bị của bạn với máy chủ khi sử dụng dịch vụ chẳng hạn như Google Device Actions (Thao tác trên thiết bị). Thuộc tính này chỉ được điền SAU Đã gọi
start()
.Trả về: Mã thiết bị một lần start()
có được gọi, nếu không thì là chuỗi trống.Loại dữ liệu trả về: str
-
send_text_query
(truy vấn)¶ Gửi |query| đến Trợ lý như thể người dùng đã nói.
Điều này sẽ hoạt động giống như người dùng nói cụm từ kích hoạt và thực hiện một truy vấn HOẶC nói câu trả lời cho một truy vấn tiếp theo.
Các thông số: query (str) – Cụm từ tìm kiếm bằng văn bản cần gửi đến Trợ lý.
-
set_mic_mute
(is_muted)¶ Ngăn Trợ lý nghe cụm từ kích hoạt.
Cho phép tắt Trợ lý để lắng nghe cụm từ kích hoạt. Nút này cung cấp chức năng tương tự như nút chế độ riêng tư ở mặt sau của Google Home.
Phương thức này không hoạt động nếu Trợ lý chưa được khởi động.
Các thông số: is_muted (bool) – True ngăn Trợ lý lắng nghe và False ngăn Trợ lý lắng nghe cho phép ứng dụng khởi động lại.
-
start
()¶ Khởi động Trợ lý, bao gồm cả việc nghe một cụm từ kích hoạt.
Sau khi
start()
được gọi, Trợ lý sẽ bắt đầu xử lý dữ liệu từ nguồn âm thanh ALSA "mặc định", nghe cụm từ kích hoạt. Thao tác này cũng sẽ khởi động các dịch vụ khác do Trợ lý cung cấp, chẳng hạn như bộ hẹn giờ/chuông báo. Phương thức này chỉ có thể được gọi một lần. Một lần đã gọi, Trợ lý sẽ tiếp tục chạy cho đến__exit__
sẽ được gọi.Trả về: Hàng đợi sự kiện thông báo về các thay đổi đối với trạng thái của Trợ lý. Loại dữ liệu trả về: google.assistant.event.IterableEventQueue
-
start_conversation
()¶ Bắt đầu một cuộc trò chuyện mới với Trợ lý theo cách thủ công.
Bắt đầu cả việc ghi lại lời nói của người dùng và gửi lời nói đó đến Google, tương tự như những gì xảy ra khi Trợ lý nghe thấy cụm từ kích hoạt.
Phương thức này không hoạt động nếu Trợ lý chưa khởi động hoặc đã đã tắt tiếng.
-
stop_conversation
()¶ Dừng mọi cuộc trò chuyện đang diễn ra với Trợ lý.
Trợ lý có thể đang nghe truy vấn của người dùng HOẶC đang trả lời. Nếu không có cuộc trò chuyện nào đang diễn ra, đây là cuộc trò chuyện không hoạt động.
-
class
google.assistant.library.event.
AlertEvent
(event_type, args, **_)¶ Mở rộng sự kiện để thêm tính năng phân tích cú pháp "alert_type".
-
lớp
google.assistant.library.event.
AlertType
¶ Loại cảnh báo.
Dùng với
ON_ALERT_STARTED
vàON_ALERT_FINISHED
sự kiện.-
ALARM
= 0¶ Sự kiện được đặt theo thời gian tuyệt đối, chẳng hạn như "3 giờ sáng thứ Hai"
-
TIMER
= 1¶ Một sự kiện được đặt cho thời gian tương đối, chẳng hạn như "30 giây từ bây giờ"
-
-
lớp
google.assistant.library.event.
DeviceActionEvent
(event_type, args, **kwargs)¶ Mở rộng Sự kiện để thêm thuộc tính "actions".
-
actions
¶ Trình tạo các lệnh để thực thi cho thiết bị hiện tại.
-
-
class
google.assistant.library.event.
Event
(event_type, args, **_)¶ Một sự kiện do Trợ lý tạo.
-
type
¶ EventType – Loại sự kiện đã được tạo.
-
args
¶ dict – Các cặp khoá/giá trị đối số liên kết với sự kiện này.
-
static
New
(event_type, args, **kwargs)¶ Tạo sự kiện mới bằng cách sử dụng lớp Sự kiện chuyên biệt khi cần.
Các thông số: - event_type (int) – Mã số tương ứng với một sự kiện trong google.assistant.event.EventType.
- args (dict) – Cặp giá trị/khoá đối số liên kết với sự kiện này.
- kwargs (dict) – Các cặp khoá/giá trị đối số không bắt buộc dành riêng cho một chuyên môn của lớp Sự kiện cho một EventType.
-
-
lớp
google.assistant.library.event.
EventType
¶ Loại sự kiện.
-
ON_ALERT_FINISHED
= 11¶ Cho biết cảnh báo của
alert_type
đã kết thúc phát âm thanh.Các thông số: alert_type (AlertType) – Mã của Enum đại diện cho loại cảnh báo vừa kết thúc.
-
ON_ALERT_STARTED
= 10¶ Cho biết cảnh báo đã bắt đầu phát ra âm thanh.
Cảnh báo này sẽ tiếp tục cho đến khi nhận được
ON_ALERT_FINISHED
có cùngalert_type
. Chỉ được có một cảnh báo hoạt động tại một thời điểm bất kỳ.Các thông số: alert_type (AlertType) – Mã Enum đại diện cho của loại cảnh báo này.
-
ON_ASSISTANT_ERROR
= 12¶ Cho biết liệu thư viện Trợ lý có gặp lỗi hay không.
Các thông số: is_fatal (bool) – Nếu là True, Trợ lý sẽ không thể khôi phục và cần được khởi động lại.
-
ON_CONVERSATION_TURN_FINISHED
= 9¶ Trợ lý đã chạy xong chặng hiện tại.
Điều này bao gồm cả việc xử lý truy vấn của người dùng và nói toàn bộ phản hồi, nếu có.
Các thông số: with_follow_on_turn (bool) – Nếu True, Trợ lý sẽ mong đợi tương tác tiếp theo từ người dùng. Micrô sẽ được mở lại để cho phép người dùng trả lời câu hỏi tiếp theo.
-
ON_CONVERSATION_TURN_STARTED
= 1¶ Cho biết một ngã rẽ mới đã bắt đầu.
Trợ lý hiện đang nghe, chờ truy vấn của người dùng. Điều này có thể là do nghe thấy cụm từ kích hoạt hoặc
start_conversation()
được gọi trên Trợ lý.
-
ON_CONVERSATION_TURN_TIMEOUT
= 2¶ Trợ lý đã hết thời gian chờ một truy vấn rõ ràng.
Nguyên nhân có thể là do cụm từ kích hoạt bị kích hoạt nhầm hoặc Trợ lý không hiểu được người dùng nói gì.
-
ON_DEVICE_ACTION
= 14¶ Cho biết rằng yêu cầu Hành động trên thiết bị đã được gửi đến thiết bị.
Lệnh này được gửi đi nếu bất kỳ Ngữ pháp thiết bị nào được kích hoạt cho đặc điểm được thiết bị hỗ trợ. Loại sự kiện này có một thuộc tính "actions" đặc biệt sẽ trả về một trình lặp hoặc lệnh Hành động trên thiết bị và các tham số liên kết với chúng (nếu có).
Các thông số: dict – Gói dữ liệu JSON đã giải mã của yêu cầu Hành động trên thiết bị.
-
ON_END_OF_UTTERANCE
= 3¶ Trợ lý đã ngừng nghe cụm từ tìm kiếm của người dùng.
Có thể Trợ lý chưa hiểu xong người dùng nói gì, nhưng thiết bị đã ngừng nghe để thu thập thêm dữ liệu âm thanh.
-
ON_MEDIA_STATE_ERROR
= 20¶ Cho biết đã xảy ra lỗi khi phát bản nhạc.
Trình phát nội dung nghe nhìn tích hợp sẽ cố gắng chuyển sang bản nhạc tiếp theo hoặc quay lại
ON_MEDIA_STATE_IDLE
nếu không còn gì để phát.
-
ON_MEDIA_STATE_IDLE
= 16¶ Cho biết không có nội dung nào đang phát và không có nội dung nào được đưa vào hàng đợi để phát.
Sự kiện này được truyền từ trình phát nội dung đa phương tiện tích hợp sẵn của Thư viện Trợ lý Google cho tin tức/podcast khi khởi động và bất cứ khi nào trình phát chuyển sang trạng thái rảnh do người dùng dừng hoặc tạm dừng nội dung nghe nhìn và luồng đã hết thời gian chờ.
-
ON_MEDIA_TRACK_LOAD
= 17¶ Cho biết một bản nhạc đang tải nhưng chưa bắt đầu phát.
Lệnh này có thể được gửi đi nhiều lần nếu siêu dữ liệu mới được tải một cách không đồng bộ. Sau đó, sự kiện
ON_MEDIA_TRACK_PLAY
thường xuất hiệnCác thông số: - siêu dữ liệu (dict) –
Siêu dữ liệu của bản nhạc đã tải. Không phải trường nào cũng được điền vào thời điểm này – nếu một trường không xác định thì trường này sẽ không được đưa vào. Các trường siêu dữ liệu bao gồm:
album(str): Tên của album chứa bản nhạc đó. album_art(str): URL của ảnh bìa đĩa nhạc. nghệ sĩ(str): Nghệ sĩ đã tạo bản nhạc này. Duration_ms(double): Thời lượng của bản nhạc này tính bằng mili giây. title(str): Tiêu đề của bản nhạc. - track_type (MediaTrackType) – Loại kênh đã tải.
- siêu dữ liệu (dict) –
-
ON_MEDIA_TRACK_PLAY
= 18¶ Cho biết một bản nhạc hiện đang phát âm thanh.
Lệnh này chỉ kích hoạt khi chúng ta chuyển giao từ trạng thái này sang trạng thái khác, chẳng hạn như từ
ON_MEDIA_TRACK_LOAD
hoặcON_MEDIA_TRACK_STOP
Các thông số: - siêu dữ liệu (dict) –
Siêu dữ liệu của bản nhạc đang phát. Nếu một trường không xác định nó sẽ không được bao gồm. Các trường siêu dữ liệu bao gồm:
album(str): Tên của album chứa bản nhạc đó. album_art(str): URL của ảnh bìa đĩa nhạc. nghệ sĩ(str): Nghệ sĩ đã tạo bản nhạc này. Duration_ms(double): Thời lượng của bản nhạc này tính bằng mili giây. title(str): Tiêu đề của bản nhạc. - position_ms (double) – Vị trí hiện tại trong một bản nhạc đang phát tính theo mili giây kể từ đầu. Nếu "metadata.duration_ms" không xác định (được đặt thành 0), trường này sẽ không được đặt.
- track_type (MediaTrackType) – Loại bản nhạc đang phát.
- siêu dữ liệu (dict) –
-
ON_MEDIA_TRACK_STOP
= 19¶ Cho biết một bản nhạc đang phát trước đó đã bị dừng.
Điều này thường là do người dùng tạm dừng; bản nhạc có thể trở lại
ON_MEDIA_TRACK_PLAY
nếu là được người dùng tiếp tục.Các thông số: - metadata (dict) –
Siêu dữ liệu của bản nhạc bị dừng. Nếu một trường không xác định nó sẽ không được bao gồm. Các trường siêu dữ liệu bao gồm:
album(str): Tên của đĩa nhạc chứa bản nhạc. album_art(str): URL của ảnh bìa đĩa nhạc. artist(str): Nghệ sĩ đã tạo bản nhạc này. duration_ms(double): Thời lượng của bản nhạc này tính bằng mili giây. title(str): Tên của bản nhạc. - position_ms (2) – Vị trí hiện tại trong bản nhạc đã dừng trong mili giây kể từ đầu. Nếu "metadata.duration_ms" không xác định (được đặt thành 0), trường này sẽ không được đặt.
- track_type (MediaTrackType) – Loại kênh đã dừng.
- metadata (dict) –
-
ON_MUTED_CHANGED
= 13¶ Cho biết Trợ lý có đang lắng nghe hay không.
start()
sẽ luôn tạo mộtON_MUTED_CHANGED
để báo cáo giá trị ban đầu.Các thông số: is_muted (bool) – Nếu là True thì Trợ lý hiện không nghe từ kích hoạt và sẽ không phản hồi truy vấn của người dùng.
-
ON_NO_RESPONSE
= 8¶ Trợ lý đã hoàn tất lượt của mình nhưng không có gì để nói.
-
ON_RECOGNIZING_SPEECH_FINISHED
= 5¶ Trợ lý đã xác định lời nói được nhận dạng cuối cùng.
Các thông số: text (str) – Nội dung diễn giải văn bản cuối cùng của cụm từ tìm kiếm của người dùng.
-
ON_RENDER_RESPONSE
= 15¶ Cho biết Trợ lý có văn bản đầu ra để kết xuất cho một phản hồi.
Các thông số: - type (RenderResponseType) – Loại phản hồi cần hiển thị.
- text (str) – Chuỗi cần hiển thị cho RenderResponseType.TEXT.
-
ON_RESPONDING_FINISHED
= 7¶ Trợ lý đã hoàn tất việc phản hồi bằng giọng nói.
-
ON_RESPONDING_STARTED
= 6¶ Trợ lý đang bắt đầu phản hồi bằng giọng nói.
Trợ lý sẽ phản hồi cho đến
ON_RESPONDING_FINISHED
đã được nhận.Các thông số: is_error_response (bool) – True có nghĩa là đang phát lỗi TTS cục bộ, nếu không, Trợ lý sẽ phản hồi bằng phản hồi của máy chủ.
-
ON_START_FINISHED
= 0¶ Thư viện Trợ lý đã khởi động xong.
-
-
lớp
google.assistant.library.event.
IterableEventQueue
(timeout=3600)¶ Mở rộng hàng đợi.Hàng đợi để thêm giao diện
__iter__
.
-
class
google.assistant.library.event.
MediaStateChangeEvent
(event_type, args, **_)¶ Mở rộng Sự kiện để thêm phân tích cú pháp "trạng thái".
-
lớp
google.assistant.library.event.
MediaTrackType
¶ Các loại kênh cho sự kiện ON_MEDIA_TRACK_X.
Được dùng với
ON_MEDIA_TRACK_LOAD
,ON_MEDIA_TRACK_PLAY
! &ON_MEDIA_TRACK_STOP
-
CONTENT
= 2¶ Nội dung thực tế của một mục (tin tức/podcast).
-
TTS
= 1¶ Phần giới thiệu TTS hoặc đoạn quảng cáo xen kẽ có liên quan đến một mục.
-
-
class
google.assistant.library.event.
RenderResponseEvent
(event_type, args, **_)¶ Mở rộng Sự kiện để thêm tính năng phân tích cú pháp "response_type".
-
lớp
google.assistant.library.event.
RenderResponseType
¶ Các loại nội dung sẽ hiển thị.
Được dùng với
ON_RENDER_RESPONSE