ดัชนี
EmbeddedAssistant
(อินเทอร์เฟซ)AssistConfig
(ข้อความ)AssistRequest
(ข้อความ)AssistResponse
(ข้อความ)AssistResponse.EventType
(enum)AudioInConfig
(ข้อความ)AudioInConfig.Encoding
(enum)AudioOut
(ข้อความ)AudioOutConfig
(ข้อความ)AudioOutConfig.Encoding
(enum)DebugConfig
(ข้อความ)DebugInfo
(ข้อความ)DeviceAction
(ข้อความ)DeviceConfig
(ข้อความ)DeviceLocation
(ข้อความ)DialogStateIn
(ข้อความ)DialogStateOut
(ข้อความ)DialogStateOut.MicrophoneMode
(enum)ScreenOut
(ข้อความ)ScreenOut.Format
(enum)ScreenOutConfig
(ข้อความ)ScreenOutConfig.ScreenMode
(enum)SpeechRecognitionResult
(ข้อความ)
EmbeddedAssistant
บริการที่ใช้งาน Google Assistant API
แอสซิสต์ | |
---|---|
เริ่มสนทนาหรือสนทนาต่อด้วยบริการ Assistant ที่ฝังไว้ การโทรแต่ละครั้งจะดำเนินการไป-กลับ 1 รอบ โดยจะส่งคำขอแบบเสียงไปยังบริการและรับสายตอบกลับ ใช้การสตรีมแบบ 2 ทิศทางเพื่อรับผลลัพธ์ เช่น เหตุการณ์ การสนทนาคือการเชื่อมต่อ gRPC อย่างน้อย 1 รายการ โดยแต่ละรายการประกอบด้วยคำขอและการตอบกลับที่สตรีมหลายรายการ ตัวอย่างเช่น ผู้ใช้พูดว่าเพิ่มลงในรายการช็อปปิ้งของฉัน แล้ว Assistant ตอบว่าคุณต้องการเพิ่มอะไร ลำดับของคำขอและการตอบกลับที่สตรีมในข้อความ gRPC แรกอาจเป็นดังนี้
จากนั้นผู้ใช้พูดว่าเบเกิล แล้ว Assistant ตอบว่าโอเค ฉันเพิ่มเบเกิลลงในรายการช็อปปิ้งแล้ว ระบบจะส่งข้อมูลนี้เป็นการเรียกใช้การเชื่อมต่อ gRPC ไปยังเมธอด
แม้จะไม่มีการรับประกันการเรียงลำดับคำตอบที่แน่นอน แต่ข้อความตามลำดับของ
|
AssistConfig
ระบุวิธีประมวลผลข้อความ AssistRequest
ช่อง | ||
---|---|---|
audio_out_config |
ต้องระบุ ระบุวิธีจัดรูปแบบเสียงที่จะแสดง |
|
screen_out_config |
ไม่บังคับ ระบุรูปแบบที่ต้องการใช้เมื่อเซิร์ฟเวอร์แสดงการตอบกลับหน้าจอแบบภาพ |
|
dialog_state_in |
ต้องระบุ แสดงสถานะปัจจุบันของกล่องโต้ตอบ |
|
device_config |
การกำหนดค่าอุปกรณ์ที่ระบุอุปกรณ์ที่เฉพาะเจาะจงอย่างไม่ซ้ำกัน |
|
debug_config |
ไม่บังคับ พารามิเตอร์การแก้ไขข้อบกพร่องสำหรับ RPC ทั้ง |
|
ฟิลด์การรวม
|
||
audio_in_config |
ระบุวิธีประมวลผลเสียงขาเข้าที่ตามมา ต้องระบุหากจะระบุ |
|
text_query |
การป้อนข้อความที่จะส่งไปให้ Assistant อาจป้อนข้อมูลจากอินเทอร์เฟซข้อความหากอินพุตเสียงไม่พร้อมใช้งาน |
AssistRequest
ข้อความระดับบนสุดที่ลูกค้าส่ง โดยไคลเอ็นต์จะต้องส่งข้อความอย่างน้อย 2 ข้อความ ซึ่งโดยทั่วไปจะAssistRequest
เป็นจำนวนมาก ข้อความแรกต้องมีข้อความ config
และต้องไม่มีข้อมูล audio_in
ข้อความที่ตามมาทั้งหมดต้องมีข้อมูล audio_in
และต้องไม่มีข้อความ config
ช่อง | ||
---|---|---|
ฟิลด์การรวม type ต้องระบุ 1 ช่องเหล่านี้ในแต่ละ AssistRequest type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น |
||
config |
ข้อความ |
|
audio_in |
ข้อมูลเสียงที่จะจดจำ ระบบจะส่งข้อมูลเสียงเป็นกลุ่มตามลําดับในข้อความ |
AssistResponse
ข้อความระดับบนสุดที่ลูกค้าได้รับ ระบบจะสตรีมชุดข้อความ AssistResponse
อย่างน้อย 1 ข้อความกลับไปยังไคลเอ็นต์
ช่อง | |
---|---|
event_type |
เอาต์พุตเท่านั้น ระบุประเภทของเหตุการณ์ |
audio_out |
Export-only เสียงที่มีคําตอบของ Assistant ต่อคําถาม |
screen_out |
เอาต์พุตเท่านั้น มีการตอบสนองที่เป็นภาพของ Assistant ต่อคำค้นหา |
device_action |
เอาต์พุตเท่านั้น มีการดำเนินการที่ทริกเกอร์โดยการค้นหาที่มีเพย์โหลดและการแยกวิเคราะห์เชิงความหมายที่เหมาะสม |
speech_results[] |
เอาต์พุตเท่านั้น รายการที่ซ้ำนี้มีผลการรู้จำคำพูดตั้งแต่ 0 รายการขึ้นไป ซึ่งสอดคล้องกับส่วนต่อเนื่องกันของเสียงที่กำลังประมวลผลอยู่ โดยเริ่มจากส่วนที่สอดคล้องกับเสียงแรกสุด (และส่วนที่เสถียรที่สุด) กับส่วนที่เกี่ยวข้องกับเสียงล่าสุด สามารถต่อสตริงเข้าด้วยกันเพื่อดูการตอบกลับที่อยู่ระหว่างดำเนินการทั้งหมด เมื่อการรู้จำคำพูดเสร็จสมบูรณ์ รายการนี้จะมี 1 รายการที่มี |
dialog_state_out |
เอาต์พุตเท่านั้น มีเอาต์พุตที่เกี่ยวข้องกับคำค้นหาของผู้ใช้ |
debug_info |
เอาต์พุตเท่านั้น ข้อมูลการแก้ไขข้อบกพร่องสำหรับนักพัฒนาซอฟต์แวร์ แสดงผลเมื่อตั้งค่าคำขอ |
EventType
ระบุประเภทของเหตุการณ์
Enum | |
---|---|
EVENT_TYPE_UNSPECIFIED |
ไม่ได้ระบุเหตุการณ์ |
END_OF_UTTERANCE |
เหตุการณ์นี้แสดงว่าเซิร์ฟเวอร์ตรวจพบเสียงพูดของผู้ใช้สิ้นสุดลงและคาดว่าจะไม่มีเสียงพูดเพิ่มเติม ดังนั้น เซิร์ฟเวอร์จะไม่ประมวลผลเสียงเพิ่มเติม (แม้ว่าอาจมีผลลัพธ์เพิ่มเติมในภายหลัง) ไคลเอ็นต์ควรหยุดส่งข้อมูลเสียงเพิ่มเติม ปิดการเชื่อมต่อ gRPC ครึ่งหนึ่ง และรอผลลัพธ์เพิ่มเติมจนกว่าเซิร์ฟเวอร์จะปิดการเชื่อมต่อ gRPC |
AudioInConfig
ระบุวิธีประมวลผลข้อมูล audio_in
ที่จะมีการระบุในคำขอที่ตามมา โปรดดูการตั้งค่าที่แนะนำในแนวทางปฏิบัติแนะนำสำหรับ Google Assistant SDK
ช่อง | |
---|---|
encoding |
จำเป็น การเข้ารหัสข้อมูลเสียงที่ส่งในข้อความ |
sample_rate_hertz |
จำเป็น อัตราการสุ่มตัวอย่าง (หน่วยเป็นเฮิรตซ์) ของข้อมูลเสียงที่ส่งในข้อความ |
การเข้ารหัส
การเข้ารหัสเสียงของข้อมูลที่ส่งในข้อความเสียง เสียงต้องเป็นแบบช่องเดียว (โมโน)
Enum | |
---|---|
ENCODING_UNSPECIFIED |
ไม่ได้ระบุ จะให้ผลลัพธ์เป็น google.rpc.Code.INVALID_ARGUMENT |
LINEAR16 |
ตัวอย่าง Endian แบบมีเครื่องหมาย 16 บิตที่ไม่มีการบีบอัด (PCM เชิงเส้น) การเข้ารหัสนี้จะไม่มีส่วนหัว แต่ระบุเฉพาะไบต์ของเสียงแบบ RAW เท่านั้น |
FLAC |
FLAC (ตัวแปลงสัญญาณเสียงแบบ Free Lossless) คือการเข้ารหัสที่แนะนำเนื่องจากเป็นแบบไม่สูญเสียรายละเอียด การจดจำจึงจะไม่ได้รับผลกระทบ และใช้แบนด์วิดท์ประมาณครึ่งหนึ่งของ LINEAR16 เท่านั้น การเข้ารหัสนี้รวมถึงส่วนหัวของสตรีม FLAC ตามด้วยข้อมูลเสียง โดยจะรองรับตัวอย่าง 16 บิตและ 24 บิต แต่ก็ไม่รองรับบางฟิลด์ใน STREAMINFO |
AudioOut
เสียงที่มีคําตอบของ Assistant สําหรับคําถาม ได้รับข้อความ "AssistResponse
" ที่เรียงกันตามลำดับของข้อมูลเสียง
ช่อง | |
---|---|
audio_data |
Export-only ข้อมูลเสียงที่มีคําตอบของ Assistant ต่อคําถาม ได้รับข้อความ " |
AudioOutConfig
ระบุรูปแบบที่ต้องการให้เซิร์ฟเวอร์ใช้เมื่อแสดงผลข้อความ audio_out
ช่อง | |
---|---|
encoding |
จำเป็น การเข้ารหัสข้อมูลเสียงที่จะแสดงในข้อความ |
sample_rate_hertz |
จำเป็น อัตราตัวอย่างเป็นเฮิรตซ์ของข้อมูลเสียงที่แสดงใน |
volume_percentage |
จำเป็น การตั้งค่าระดับเสียงปัจจุบันของเอาต์พุตเสียงของอุปกรณ์ ค่าที่ใช้ได้คือ 1 ถึง 100 (ตรงกับ 1% ถึง 100%) |
การเข้ารหัส
การเข้ารหัสเสียงของข้อมูลที่แสดงในข้อความเสียง การเข้ารหัสทั้งหมดเป็นไบต์เสียงดิบที่ไม่มีส่วนหัว ยกเว้นตามที่ระบุไว้ด้านล่าง
Enum | |
---|---|
ENCODING_UNSPECIFIED |
ไม่ได้ระบุ จะให้ผลลัพธ์เป็น google.rpc.Code.INVALID_ARGUMENT |
LINEAR16 |
ตัวอย่าง Endian แบบมีเครื่องหมาย 16 บิตที่ไม่มีการบีบอัด (PCM เชิงเส้น) |
MP3 |
การเข้ารหัสเสียง MP3 ระบบจะเข้ารหัสอัตราการสุ่มตัวอย่างในเพย์โหลด |
OPUS_IN_OGG |
ระบบเสียงที่เข้ารหัส Opus ในที่เก็บ Ogg ผลที่ได้ที่ได้ก็จะเป็นไฟล์ที่สามารถเล่นได้ในเครื่อง Android และในบางเบราว์เซอร์ (เช่น Chrome) การเข้ารหัสมีคุณภาพสูงกว่า MP3 เป็นอย่างมากในขณะที่ใช้อัตราบิตเดียวกัน ระบบจะเข้ารหัสอัตราการสุ่มตัวอย่างในเพย์โหลด |
DebugConfig
การแก้ไขข้อบกพร่องของพารามิเตอร์สำหรับคำขอปัจจุบัน
ช่อง | |
---|---|
return_debug_info |
เมื่อตั้งค่าช่องนี้เป็น "จริง" ระบบอาจเติมข้อมูลในช่อง |
DebugInfo
ข้อมูลการแก้ไขข้อบกพร่องสำหรับนักพัฒนาซอฟต์แวร์ แสดงผลเมื่อตั้งค่าคำขอ return_debug_info
เป็น "จริง" เท่านั้น
ช่อง | |
---|---|
aog_agent_to_assistant_json |
การตอบกลับ JSON ต้นฉบับจาก Agent สำหรับ Action-on-Google ไปยังเซิร์ฟเวอร์ Google โปรดดู AppResponse ระบบจะป้อนข้อมูลก็ต่อเมื่อผู้ส่งคำขอเป็นเจ้าของโปรเจ็กต์ AoG และโปรเจ็กต์ AoG อยู่ในโหมดแสดงตัวอย่างเท่านั้น |
DeviceAction
การตอบสนองจะย้อนกลับไปยังอุปกรณ์หากผู้ใช้ได้เรียกใช้การดำเนินการของอุปกรณ์ ตัวอย่างเช่น อุปกรณ์ที่รองรับการค้นหา Turn on the light จะได้รับ DeviceAction
ที่มีเพย์โหลด JSON พร้อมความหมายของคำขอ
ช่อง | |
---|---|
device_request_json |
JSON ที่มีการตอบกลับคำสั่งของอุปกรณ์ที่สร้างขึ้นจากไวยากรณ์ "การทำงานของอุปกรณ์" ที่ทริกเกอร์ รูปแบบนี้จะกําหนดโดย Intent |
DeviceConfig
จำเป็น ช่องที่ระบุอุปกรณ์ให้กับ Assistant
และดู:
ช่อง | |
---|---|
device_id |
จำเป็น ตัวระบุที่ไม่ซ้ำกันสำหรับอุปกรณ์ รหัสต้องมีความยาวไม่เกิน 128 อักขระ เช่น DBCDW098234 ต้องตรงกับ device_id ที่ส่งคืนจากการลงทะเบียนอุปกรณ์ device_id นี้ใช้ในการจับคู่กับอุปกรณ์ที่ลงทะเบียนไว้ของผู้ใช้เพื่อค้นหาลักษณะและความสามารถที่รองรับของอุปกรณ์นี้ ข้อมูลนี้ไม่ควรเปลี่ยนแปลงในการรีบูตอุปกรณ์ อย่างไรก็ตาม คุณไม่ควรบันทึกในการรีเซ็ตเป็นค่าเริ่มต้น |
device_model_id |
จำเป็น ตัวระบุที่ไม่ซ้ำกันสำหรับรุ่นอุปกรณ์ การรวมกันของ device_model_id และ device_id ต้องเชื่อมโยงกับการลงทะเบียนอุปกรณ์ก่อนหน้านี้ก่อน |
DeviceLocation
แหล่งที่มาของตำแหน่งมี 3 แหล่ง โดยใช้ลำดับความสำคัญดังนี้
DeviceLocation
นี้ซึ่งใช้สำหรับอุปกรณ์เคลื่อนที่ที่มี GPS เป็นหลัก- ตำแหน่งที่ผู้ใช้ระบุระหว่างการตั้งค่าอุปกรณ์ ตำแหน่งนี้เป็นตำแหน่งต่อผู้ใช้ 1 รายต่ออุปกรณ์ ระบบจะใช้ตำแหน่งนี้หากไม่ได้ระบุ
DeviceLocation
- สถานที่ตั้งที่สรุปตามที่อยู่ IP ซึ่งจะใช้เฉพาะเมื่อไม่มีการระบุเงื่อนไขใดๆ ข้างต้นเท่านั้น
ช่อง | |
---|---|
coordinates |
ละติจูดและลองจิจูดของอุปกรณ์ |
DialogStateIn
ให้ข้อมูลเกี่ยวกับสถานะของกล่องโต้ตอบปัจจุบัน
ช่อง | |
---|---|
conversation_state |
ต้องระบุ ช่องนี้ต้องตั้งค่าเป็นค่า |
language_code |
ต้องระบุภาษาของคำขอในไวยากรณ์ IETF BCP 47 (เช่น "en-US") โปรดดูข้อมูลเพิ่มเติมที่การสนับสนุนภาษา หากคุณเลือกภาษาสำหรับ |
device_location |
ไม่บังคับ ตําแหน่งของอุปกรณ์ที่เริ่มการค้นหา |
is_new_conversation |
ไม่บังคับ หากเป็น "จริง" เซิร์ฟเวอร์จะถือว่าคำขอนั้นเป็นการสนทนาใหม่ และไม่ใช้สถานะจากคำขอก่อนหน้า ตั้งค่าช่องนี้เป็นจริงเมื่อควรเริ่มต้นการสนทนาใหม่ เช่น หลังจากรีบูตอุปกรณ์ หรือหลังจากหมดเวลาไปมากนับจากการค้นหาก่อนหน้า |
DialogStateOut
สถานะกล่องโต้ตอบที่เกิดจากการค้นหาของผู้ใช้ ผู้รับอาจได้รับข้อความเหล่านี้หลายครั้ง
ช่อง | |
---|---|
supplemental_display_text |
เอาต์พุตเท่านั้น ข้อความแสดงเสริมจาก Assistant ซึ่งอาจเหมือนกับเสียงพูดที่พูดใน |
conversation_state |
ข้อมูลสถานะเอาต์พุตเท่านั้นสำหรับ RPC |
microphone_mode |
เอาต์พุตเท่านั้น ระบุโหมดของไมโครโฟนหลังจากประมวลผล |
volume_percentage |
ระดับเสียงเท่านั้น อัปเดตระดับเสียงแล้ว ค่าจะเป็น 0 หรือไม่ใส่ (หมายความว่าไม่มีการเปลี่ยนแปลง) เว้นแต่ระบบจะจดจำคำสั่งเสียง เช่น เพิ่มระดับเสียงหรือตั้งระดับเสียง 4 ซึ่งในกรณีนี้ ค่าจะอยู่ระหว่าง 1 ถึง 100 (ตรงกับระดับเสียงใหม่ 1% ถึง 100%) โดยปกติแล้ว ลูกค้าควรใช้ระดับเสียงนี้เมื่อเล่นข้อมูล |
MicrophoneMode
สถานะที่เป็นไปได้ของไมโครโฟนหลังจาก RPC Assist
เสร็จสมบูรณ์
Enum | |
---|---|
MICROPHONE_MODE_UNSPECIFIED |
ไม่ได้ระบุโหมด |
CLOSE_MICROPHONE |
บริการไม่ต้องการคําถามต่อเนื่องจากผู้ใช้ ไมโครโฟนควรปิดอยู่จนกว่าผู้ใช้จะเปิดใช้งานอีกครั้ง |
DIALOG_FOLLOW_ON |
บริการคาดว่าจะมีคำถามจากผู้ใช้ต่อเนื่อง ไมโครโฟนควรเปิดอีกครั้งเมื่อ AudioOut เล่นจบ (ด้วยการเริ่มเรียก Assist RPC ใหม่เพื่อส่งเสียงใหม่) |
ScreenOut
เอาต์พุตภาพของ Assistant ที่ตอบสนองต่อคำค้นหา เปิดใช้โดย screen_out_config
ช่อง | |
---|---|
format |
เอาต์พุตเท่านั้น รูปแบบของข้อมูลหน้าจอที่ให้ไว้ |
data |
เอาต์พุตเท่านั้น ข้อมูลหน้าจอดิบที่จะแสดงเป็นผลลัพธ์ของคำค้นหา Assistant |
รูปแบบ
รูปแบบที่เป็นไปได้ของข้อมูลบนหน้าจอ
Enum | |
---|---|
FORMAT_UNSPECIFIED |
ไม่ได้ระบุรูปแบบ |
HTML |
ข้อมูลจะมีเลย์เอาต์ HTML5 ที่มีรูปแบบสมบูรณ์ซึ่งเข้ารหัสเป็น UTF-8 เช่น <html><body><div>...</div></body></html> ซึ่งมีจุดประสงค์เพื่อแสดงผลพร้อมกับเสียงตอบ โปรดทราบว่าควรรวม DOCTYPE HTML5 ไว้ในข้อมูล HTML จริง |
ScreenOutConfig
ระบุรูปแบบที่ต้องการให้เซิร์ฟเวอร์ใช้เมื่อแสดงผลการตอบกลับ screen_out
ช่อง | |
---|---|
screen_mode |
โหมดหน้าจอปัจจุบันของอุปกรณ์ในขณะออกคำค้นหา |
ScreenMode
โหมดที่เป็นไปได้สำหรับเอาต์พุตหน้าจอภาพในอุปกรณ์
Enum | |
---|---|
SCREEN_MODE_UNSPECIFIED |
ไม่ได้ระบุโหมดวิดีโอ Assistant อาจตอบสนองเหมือนกับในโหมด OFF |
OFF |
หน้าจอปิดอยู่ (หรือตั้งค่าความสว่างหรือการตั้งค่าอื่นๆ ไว้เพื่อให้มองไม่เห็น) โดยปกติ Assistant จะไม่แสดงการตอบสนองบนหน้าจอในโหมดนี้ |
PLAYING |
โดยปกติ Assistant จะแสดงการตอบสนองบางส่วนของหน้าจอในโหมดนี้ |
SpeechRecognitionResult
การถอดเสียงเป็นคำโดยประมาณของวลีที่ผู้ใช้พูด ซึ่งอาจเป็นส่วนเดียวหรือการคาดเดาข้อความค้นหาของผู้ใช้อย่างเต็มรูปแบบ
ช่อง | |
---|---|
transcript |
เอาต์พุตเท่านั้น ข้อความข้อความถอดเสียงที่แสดงคำที่ผู้ใช้พูด |
stability |
เอาต์พุตเท่านั้น ค่าประมาณแนวโน้มที่ Assistant จะไม่เปลี่ยนแปลงการคาดเดาเกี่ยวกับผลลัพธ์นี้ ค่าอยู่ในช่วง 0.0 (ไม่เสถียรเลย) ไปจนถึง 1.0 (คงที่โดยสมบูรณ์และเป็นขั้นสุดท้าย) ค่าเริ่มต้น 0.0 คือค่าที่ส่งเพื่อแจ้งว่าไม่ได้ตั้งค่า |