แพ็กเกจ google.assistant.library
-
class
google.assistant.library.
Assistant
(credentials, device_model_id)¶ ไคลเอ็นต์สําหรับไลบรารี Google Assistant
ให้ฟังก์ชันการควบคุมพื้นฐานและการจัดการวงจรชีวิตของ Google Assistant แนวทางปฏิบัติแนะนำคือให้ใช้ Assistant เป็น
ContextManager
with Assistant(credentials, device_model_id) as assistant:
ซึ่งช่วยให้การติดตั้งใช้งานโฆษณาเนทีฟที่เกี่ยวข้อง จัดการหน่วยความจำ
เมื่อเรียก
start()
แล้ว Assistant จะสร้างสตรีมเหตุการณ์ที่ส่งต่อสถานะต่างๆ ของ Assistant ในขณะนั้น เช่น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
เกี่ยวกับเหตุการณ์ทั้งหมดและอาร์กิวเมนต์อภิธานศัพท์:
คำสั่งให้ดำเนินการ: วลีที่ Assistant จะคอยฟังเมื่อไม่ได้ปิดเสียง
"OK Google" OR "Hey Google"
Turn: คำขอของผู้ใช้รายการเดียวตามด้วยการตอบกลับจาก Assistant
การสนทนา: การสนทนาอย่างน้อย 1 ครั้งที่ส่งผลให้ได้ผลลัพธ์ที่ต้องการจาก Assistant
"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) – device_model_id ที่ลงทะเบียนไว้สำหรับโปรเจ็กต์ของคุณกับ Google ค่านี้ต้องไม่ใช่สตริงว่าง
เพิ่ม ValueError
– หากมีการป้อนdevice_model_id
เป็น "ไม่มี" หรือเว้นว่างไว้-
device_id
¶ แสดงรหัสอุปกรณ์ที่ Assistant สร้างขึ้น
ค่านี้จะระบุอุปกรณ์ของคุณไปยังเซิร์ฟเวอร์เมื่อใช้บริการ เช่น Google Device Actions พร็อพเพอร์ตี้นี้เติมข้อมูล "หลังจาก" เท่านั้น โทรหา
start()
แล้วค่าที่ส่งคืน: รหัสอุปกรณ์ 1 ครั้ง start()
มี อาจถูกเรียก สตริงว่างเปล่าประเภทการแสดงผล str
-
send_text_query
(query)¶ ส่ง |query| ไปยัง Assistant เหมือนกับที่ผู้ใช้พูด
ซึ่งจะมีลักษณะการทำงานเหมือนกับที่ผู้ใช้พูดคำสั่งให้ดำเนินการ และทำให้ คำค้นหา หรือพูดคำตอบสำหรับคำค้นหาที่ตามมา
พารามิเตอร์ ได้แก่ query (str) – ข้อความค้นหาที่จะส่งไปยัง Assistant
-
set_mic_mute
(is_muted)¶ หยุด Assistant ไม่ให้ฟังคำสั่งให้ดำเนินการ
อนุญาตให้ปิดใช้ Assistant ไม่ให้คอยฟังคำสั่งให้ดำเนินการ ซึ่งจะมีฟังก์ชันการทำงานคล้ายกับปุ่มความเป็นส่วนตัวที่ด้านหลังของ Google Home
วิธีนี้ไม่ต้องดำเนินการใดๆ หากยังไม่ได้เริ่มต้นใช้งาน Assistant
พารามิเตอร์ ได้แก่ is_muted (bool) – True จะหยุดไม่ให้ Assistant ฟังเสียง และ False จะอนุญาตให้เริ่มฟังอีกครั้ง
-
start
()¶ เริ่มใช้ Assistant ซึ่งรวมถึงการฟังคำสั่งให้ดำเนินการ
เมื่อ
start()
มีมูลค่า ที่เรียกว่า Assistant จะเริ่มประมวลผลข้อมูลจาก แหล่งที่มาของเสียง ALSA "เริ่มต้น" กำลังฟังคำสั่งให้ดำเนินการ ช่วงเวลานี้ จะเริ่มบริการอื่นๆ จาก Assistant ด้วย เช่น เป็นตัวจับเวลา/นาฬิกาปลุก เรียกเมธอดนี้ได้เพียงครั้งเดียวเท่านั้น เมื่อเรียกแล้ว Assistant จะทำงานต่อไปจนกว่าจะมีการเรียก__exit__
ค่าที่ส่งคืน: คิวเหตุการณ์ที่แจ้งการเปลี่ยนแปลงสถานะของ Assistant ประเภทการแสดงผล: google.assistant.event.IterableEventQueue
-
start_conversation
()¶ เริ่มการสนทนาใหม่กับ Assistant ด้วยตนเอง
เริ่มทั้งการบันทึกคำพูดของผู้ใช้และส่งไปยัง Google ซึ่งคล้ายกับสิ่งที่เกิดขึ้นเมื่อ Assistant ได้ยินคําสั่งให้ดำเนินการ
วิธีนี้จะไม่มีการดำเนินการใดๆ หาก Assistant ไม่ได้เริ่มต้นใช้งานหรือ ปิดเสียงอยู่
-
stop_conversation
()¶ หยุดการสนทนากับ Assistant ที่กำลังดำเนินอยู่
Assistant อาจฟังคำถามของผู้ใช้หรือตอบสนองอยู่ก็ได้ ถ้า ไม่มีการสนทนาที่ใช้งานอยู่ นี่เป็นการดำเนินการที่ไม่มีการดำเนินการ
-
คลาส
google.assistant.library.event.
AlertEvent
(event_type, args, **_)¶ ขยายเหตุการณ์เพื่อเพิ่มการแยกวิเคราะห์ "alert_type"
-
class
google.assistant.library.event.
AlertType
¶ ประเภทการแจ้งเตือน
ใช้กับเหตุการณ์
ON_ALERT_STARTED
และON_ALERT_FINISHED
-
ALARM
= 0¶ กิจกรรมที่ตั้งไว้สำหรับเวลาสัมบูรณ์ เช่น "ตี 3 วันจันทร์"
-
TIMER
= 1¶ ชุดเหตุการณ์สำหรับเวลาที่เกี่ยวข้อง เช่น "30 วินาทีจากนี้"
-
-
class
google.assistant.library.event.
DeviceActionEvent
(event_type, args, **kwargs)¶ ขยายเหตุการณ์เพื่อเพิ่มพร็อพเพอร์ตี้ "actions"
-
actions
¶ ตัวสร้างคำสั่งที่จะดำเนินการสำหรับอุปกรณ์ปัจจุบัน
-
-
class
google.assistant.library.event.
Event
(event_type, args, **_)¶ เหตุการณ์ที่สร้างโดย Assistant
-
type
¶ EventType – ประเภทเหตุการณ์ที่สร้างขึ้น
-
args
¶ dict – คู่คีย์/ค่าอาร์กิวเมนต์ที่เชื่อมโยงกับเหตุการณ์นี้
-
static
New
(event_type, args, **kwargs)¶ สร้างเหตุการณ์ใหม่โดยใช้คลาสเหตุการณ์เฉพาะทางเมื่อจําเป็น
พารามิเตอร์ ได้แก่ - event_type (int) – รหัสตัวเลขที่สอดคล้องกับเหตุการณ์ใน google.assistant.event.EventType
- args (dict) – คู่คีย์/ค่าอาร์กิวเมนต์ที่เชื่อมโยงกับเหตุการณ์นี้
- kwargs (dict) – คู่คีย์/ค่าอาร์กิวเมนต์ที่ไม่บังคับซึ่งเจาะจงสำหรับคลาสเหตุการณ์ที่เชี่ยวชาญด้าน EventType
-
-
class
google.assistant.library.event.
EventType
¶ ประเภทเหตุการณ์
-
ON_ALERT_FINISHED
= 11¶ บ่งบอกว่าเสียงแจ้งเตือนของ
alert_type
สิ้นสุดแล้วพารามิเตอร์ ได้แก่ alert_type (AlertType) – รหัสของ Enum ที่แสดงถึงประเภท ที่เพิ่งจบไป
-
ON_ALERT_STARTED
= 10¶ บ่งบอกว่าการแจ้งเตือนเริ่มดังขึ้นแล้ว
การแจ้งเตือนนี้จะดำเนินต่อไปจนถึง
ON_ALERT_FINISHED
ที่ได้รับalert_type
เดียวกัน ควรมีการแจ้งเตือนที่ใช้งานอยู่เพียงรายการเดียวเท่านั้นในช่วงเวลาหนึ่งพารามิเตอร์ ได้แก่ alert_type (AlertType) – รหัสของ Enum แทนค่าปัจจุบัน การส่งเสียงแจ้งเตือน
-
ON_ASSISTANT_ERROR
= 12¶ ระบุว่าไลบรารี Assistant พบข้อผิดพลาดหรือไม่
พารามิเตอร์ ได้แก่ is_fatal (bool) - หากเป็น "จริง" Assistant จะกู้คืนไม่ได้ และควรเริ่มต้นใหม่
-
ON_CONVERSATION_TURN_FINISHED
= 9¶ Assistant จบการเลี้ยวปัจจุบันแล้ว
ซึ่งรวมถึงทั้งการประมวลผลคําค้นหาของผู้ใช้และการพูดคําตอบแบบเต็ม หากมี
พารามิเตอร์ ได้แก่ with_follow_on_turn (bool) – หากเป็น True แสดงว่า Assistant คาดหวังว่าผู้ใช้จะโต้ตอบกลับ ไมโครโฟนจะเปิดขึ้นอีกครั้งเพื่อให้ผู้ใช้ตอบคำถามต่อได้
-
ON_CONVERSATION_TURN_STARTED
= 1¶ บ่งบอกว่าเริ่มเลี้ยวใหม่แล้ว
Assistant กำลังฟังอยู่ กำลังรอผู้ใช้ คำถาม ซึ่งอาจเป็นผลมาจากการได้ยินคำสั่งให้ดำเนินการ หรือ
start_conversation()
กำลังโทรหาใน Assistant
-
ON_CONVERSATION_TURN_TIMEOUT
= 2¶ Assistant หมดเวลาขณะรอคําค้นหาที่เข้าใจได้
ซึ่งอาจเกิดจากการเกิดข้อผิดพลาดของคำสั่งให้ดำเนินการหรือ Assistant อาจ ไม่เข้าใจสิ่งที่ผู้ใช้พูด
-
ON_DEVICE_ACTION
= 14¶ บ่งบอกว่ามีการส่งคําขอการดำเนินการกับอุปกรณ์ไปยังอุปกรณ์
ระบบจะส่งข้อมูลนี้ไปหากมีการทริกเกอร์ไวยากรณ์ของอุปกรณ์สำหรับฟังก์ชัน ลักษณะ ที่อุปกรณ์รองรับ ประเภทเหตุการณ์นี้มี "การดำเนินการ" พิเศษ ซึ่งจะแสดงผลคำสั่ง Iterator หรือ Device Action และ พารามิเตอร์ที่เกี่ยวข้อง (หากมี)
พารามิเตอร์ ได้แก่ dict – เพย์โหลด JSON ที่ถอดรหัสของคำขอการดำเนินการของอุปกรณ์
-
ON_END_OF_UTTERANCE
= 3¶ Assistant หยุดฟังคำถามของผู้ใช้แล้ว
Assistant อาจยังคิดไม่ออกว่าผู้ใช้พูดอะไร อุปกรณ์หยุดฟังข้อมูลเสียงเพิ่มเติม
-
ON_MEDIA_STATE_ERROR
= 20¶ บ่งบอกว่าเกิดข้อผิดพลาดในการเล่นแทร็ก
มีเดียเพลเยอร์ในตัวจะพยายามข้ามไปยังแทร็กถัดไปหรือกลับไปที่
ON_MEDIA_STATE_IDLE
หากไม่มีแทร็กใดเหลือให้เล่น
-
ON_MEDIA_STATE_IDLE
= 16¶ บ่งบอกว่าไม่มีรายการที่กำลังเล่นและไม่มีรายการใดอยู่ในคิวรอเล่น
เหตุการณ์นี้ออกอากาศจากโปรแกรมเล่นสื่อในตัวของคลัง Google Assistant สําหรับข่าว/พอดแคสต์เมื่อเริ่มต้นใช้งาน และเมื่อใดก็ตามที่โปรแกรมเล่นไม่มีการใช้งานเนื่องจากผู้ใช้หยุดสื่อหรือหยุดชั่วคราวและสตรีมหมดเวลา
-
ON_MEDIA_TRACK_LOAD
= 17¶ บ่งบอกว่าแทร็กกำลังโหลดแต่ยังไม่ได้เริ่มเล่น
ซึ่งอาจส่งหลายครั้งหากมีการโหลดข้อมูลเมตาใหม่แบบไม่พร้อมกัน โดยทั่วไปจะตามด้วยเหตุการณ์
ON_MEDIA_TRACK_PLAY
พารามิเตอร์ ได้แก่ - metadata (dict)
ข้อมูลเมตาสำหรับแทร็กที่โหลด ระบบอาจไม่ได้กรอกข้อมูลในบางช่องภายในเวลานี้ หากไม่ทราบข้อมูลในช่องใด ระบบจะไม่รวมช่องนั้น ช่องข้อมูลเมตามีดังนี้
อัลบั้ม(str): ชื่ออัลบั้มที่มีแทร็ก Albums_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¶ บ่งบอกว่าขณะนี้ Assistant กำลังฟังอยู่หรือไม่
start()
จะเสมอ สร้างON_MUTED_CHANGED
เพื่อรายงานค่าเริ่มต้นพารามิเตอร์ ได้แก่ is_muted (bool) – หากเป็น True แสดงว่า Assistant ไม่ได้กำลังฟังคำสั่งให้ดำเนินการและจะไม่ตอบสนองต่อคําค้นหาของผู้ใช้
-
ON_NO_RESPONSE
= 8¶ Assistant พูดจนจบรอบแล้ว แต่ไม่มีอะไรจะพูด
-
ON_RECOGNIZING_SPEECH_FINISHED
= 5¶ Assistant ระบุคำพูดที่จดจำได้สุดท้ายแล้ว
พารามิเตอร์ ได้แก่ text (str) – การตีความข้อความขั้นสุดท้ายของข้อความค้นหาของผู้ใช้
-
ON_RENDER_RESPONSE
= 15¶ บ่งบอกว่า Assistant มีเอาต์พุตข้อความให้แสดงผลสำหรับคำตอบ
พารามิเตอร์ ได้แก่ - type (RenderResponseType) - ประเภทการตอบกลับที่ต้องการแสดงผล
- text (str) – สตริงที่จะแสดงผลสำหรับ RenderResponseType.TEXT
-
ON_RESPONDING_FINISHED
= 7¶ Assistant ตอบกลับด้วยเสียงเสร็จแล้ว
-
ON_RESPONDING_STARTED
= 6¶ Assistant เริ่มโต้ตอบด้วยเสียง
Assistant จะตอบกลับจนกว่าจะได้รับการตอบกลับ
ON_RESPONDING_FINISHED
พารามิเตอร์ ได้แก่ is_error_response (bool) – จริงหมายถึงกำลังเล่น TTS ข้อผิดพลาดในเครื่องอยู่ ไม่เช่นนั้น Assistant จะตอบกลับด้วยการตอบกลับของเซิร์ฟเวอร์
-
ON_START_FINISHED
= 0¶ คลัง Assistant เริ่มเสร็จแล้ว
-
-
คลาส
google.assistant.library.event.
IterableEventQueue
(timeout=3600)¶ ขยายคิว คิวเพื่อเพิ่มอินเทอร์เฟซ
__iter__
-
คลาส
google.assistant.library.event.
MediaStateChangeEvent
(event_type, args, **_)¶ ขยายเหตุการณ์เพื่อเพิ่มการแยกวิเคราะห์ "สถานะ"
-
ชั้นเรียน
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 หรือแทร็กคั่นระหว่างหน้าที่เกี่ยวข้องกับรายการ
-
-
คลาส
google.assistant.library.event.
RenderResponseEvent
(event_type, args, **_)¶ ขยายเหตุการณ์เพื่อเพิ่มการแยกวิเคราะห์ "response_type"
-
class
google.assistant.library.event.
RenderResponseType
¶ ประเภทเนื้อหาที่จะแสดงผล
ใช้กับ
ON_RENDER_RESPONSE