ดัชนี
- 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 ช่องเหล่านี้ในแต่ละAssistRequesttypeต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น | ||
| 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เล่นจบ (ด้วยการเริ่มเรียกAssistRPC ใหม่เพื่อส่งเสียงใหม่) | 
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 คือค่าที่ส่งเพื่อแจ้งว่าไม่ได้ตั้งค่า  | 
