ดัชนี
- EmbeddedAssistant(อินเทอร์เฟซ)
- AudioInConfig(ข้อความ)
- AudioInConfig.Encoding(enum)
- AudioOut(ข้อความ)
- AudioOutConfig(ข้อความ)
- AudioOutConfig.Encoding(enum)
- ConverseConfig(ข้อความ)
- ConverseRequest(ข้อความ)
- ConverseResponse(ข้อความ)
- ConverseResponse.EventType(enum)
- ConverseResult(ข้อความ)
- ConverseResult.MicrophoneMode(enum)
- ConverseState(ข้อความ)
EmbeddedAssistant
บริการที่ใช้งาน Google Assistant API
| Converse | |
|---|---|
| 
 เริ่มหรือสนทนาต่อด้วยบริการผู้ช่วยที่ฝังไว้ การโทรแต่ละครั้งจะดำเนินการไป-กลับ 1 รอบ โดยจะส่งคำขอแบบเสียงไปยังบริการและรับสายตอบกลับ ใช้การสตรีมแบบ 2 ทิศทางเพื่อรับผลลัพธ์ เช่น เหตุการณ์  การสนทนาคือการเชื่อมต่อ gRPC อย่างน้อย 1 รายการ โดยแต่ละรายการประกอบด้วยคำขอและการตอบกลับที่สตรีมหลายรายการ ตัวอย่างเช่น ผู้ใช้พูดว่าเพิ่มลงในรายการช็อปปิ้งของฉัน และ Assistant ตอบกลับว่าคุณต้องการเพิ่มอะไร ลำดับของคำขอและการตอบกลับที่สตรีมในข้อความ gRPC แรกอาจเป็นดังนี้ 
 จากนั้นผู้ใช้พูดว่าเบเกิล และผู้ช่วยตอบว่าโอเค ฉันเพิ่มเบเกิลลงในรายการช็อปปิ้งแล้ว ระบบจะส่งข้อมูลนี้เป็นการเรียกใช้การเชื่อมต่อ gRPC ไปยังเมธอด  
 แม้ว่าจะไม่มีการรับประกันการเรียงลำดับคำตอบที่แน่นอน แต่ข้อความ ConverseResponse.audio_out ที่เรียงตามลำดับจะมีเสียงในส่วนต่างๆ ตามลำดับเสมอ 
 | |
AudioInConfig
ระบุวิธีประมวลผลข้อมูล audio_in ที่จะมีการระบุในคำขอที่ตามมา โปรดดูการตั้งค่าที่แนะนำในแนวทางปฏิบัติแนะนำเกี่ยวกับ gRPC API ของ Google Assistant
| ช่อง | |
|---|---|
| encoding | 
                    จำเป็น การเข้ารหัสข้อมูลเสียงที่ส่งในข้อความ  | 
| sample_rate_hertz | 
 
                    จำเป็น อัตราการสุ่มตัวอย่าง (หน่วยเป็นเฮิรตซ์) ของข้อมูลเสียงที่ส่งในข้อความ  | 
การเข้ารหัส
การเข้ารหัสเสียงของข้อมูลที่ส่งในข้อความเสียง เสียงต้องเป็นแบบช่องเดียว (โมโน) ภาษาที่รองรับคือ "en-US"
| Enum | |
|---|---|
| ENCODING_UNSPECIFIED | ไม่ได้ระบุ จะให้ผลลัพธ์เป็น google.rpc.Code.INVALID_ARGUMENT | 
| LINEAR16 | ตัวอย่าง Endian แบบมีเครื่องหมาย 16 บิตที่ไม่มีการบีบอัด (PCM เชิงเส้น) การเข้ารหัสนี้จะไม่มีส่วนหัว แต่ระบุเฉพาะไบต์ของเสียงแบบ RAW เท่านั้น | 
| FLAC | FLAC(ตัวแปลงสัญญาณเสียงแบบ Free Lossless) คือการเข้ารหัสที่แนะนำเนื่องจากเป็นแบบไม่สูญเสียรายละเอียด การจดจำจึงจะไม่ได้รับผลกระทบ และใช้แบนด์วิดท์ประมาณครึ่งหนึ่งของLINEAR16เท่านั้น การเข้ารหัสนี้รวมถึงส่วนหัวของสตรีมFLACตามด้วยข้อมูลเสียง โดยจะรองรับตัวอย่าง 16 บิตและ 24 บิต แต่ก็ไม่รองรับบางฟิลด์ในSTREAMINFO | 
AudioOut
เสียงที่มีคําตอบของ Assistant สําหรับคําถาม ได้รับข้อความ "ConverseResponse" ที่เรียงกันตามลำดับของข้อมูลเสียง
| ช่อง | |
|---|---|
| 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 เป็นอย่างมากในขณะที่ใช้อัตราบิตเดียวกัน ระบบจะเข้ารหัสอัตราการสุ่มตัวอย่างในเพย์โหลด | 
ConverseConfig
ระบุวิธีประมวลผลข้อความ ConverseRequest
| ช่อง | |
|---|---|
| audio_in_config | ต้องระบุ ระบุวิธีประมวลผลเสียงขาเข้าที่ตามมา | 
| audio_out_config | ต้องระบุ ระบุวิธีจัดรูปแบบเสียงที่จะแสดง | 
| converse_state | ต้องระบุ แสดงสถานะปัจจุบันของกล่องโต้ตอบ | 
ConverseRequest
ข้อความระดับบนสุดที่ลูกค้าส่ง โดยไคลเอ็นต์จะต้องส่งข้อความอย่างน้อย 2 ข้อความ ซึ่งโดยทั่วไปจะConverseRequest เป็นจำนวนมาก ข้อความแรกต้องมีข้อความ config และต้องไม่มีข้อมูล audio_in ข้อความที่ตามมาทั้งหมดต้องมีข้อมูล audio_in และต้องไม่มีข้อความ config
| ช่อง | ||
|---|---|---|
| ฟิลด์การรวม converse_requestต้องระบุ 1 ช่องเหล่านี้ในแต่ละConverseRequestconverse_requestต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น | ||
| config | 
                    ข้อความ  | |
| audio_in | 
 
                    ข้อมูลเสียงที่จะจดจำ ระบบจะส่งข้อมูลเสียงเป็นกลุ่มตามลําดับในข้อความ  | |
ConverseResponse
ข้อความระดับบนสุดที่ลูกค้าได้รับ ระบบจะสตรีมชุดข้อความ ConverseResponse อย่างน้อย 1 ข้อความกลับไปยังไคลเอ็นต์
| ช่อง | ||
|---|---|---|
| ฟิลด์การรวม converse_responseระบบจะป้อนข้อมูลในช่องใดช่องหนึ่งเหล่านี้อยู่เสมอในConverseResponseแต่ละรายการconverse_responseต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น | ||
| error | 
                    เอาต์พุตเท่านั้น หากมีการตั้งค่า ระบบจะแสดงข้อความ  | |
| event_type | เอาต์พุตเท่านั้น ระบุประเภทของเหตุการณ์ | |
| audio_out | Export-only เสียงที่มีคําตอบของ Assistant สําหรับคําถาม | |
| result | Export-only ผลลัพธ์เชิงความหมายสำหรับคำค้นหาที่ผู้ใช้พูด | |
EventType
ระบุประเภทของเหตุการณ์
| Enum | |
|---|---|
| EVENT_TYPE_UNSPECIFIED | ไม่ได้ระบุเหตุการณ์ | 
| END_OF_UTTERANCE | เหตุการณ์นี้แสดงว่าเซิร์ฟเวอร์ตรวจพบเสียงพูดของผู้ใช้สิ้นสุดลงและคาดว่าจะไม่มีเสียงพูดเพิ่มเติม ดังนั้น เซิร์ฟเวอร์จะไม่ประมวลผลเสียงเพิ่มเติม (แม้ว่าอาจมีผลลัพธ์เพิ่มเติมในภายหลัง) ไคลเอ็นต์ควรหยุดส่งข้อมูลเสียงเพิ่มเติม ปิดการเชื่อมต่อ gRPC ครึ่งหนึ่ง และรอผลลัพธ์เพิ่มเติมจนกว่าเซิร์ฟเวอร์จะปิดการเชื่อมต่อ gRPC | 
ConverseResult
ผลลัพธ์เชิงความหมายสำหรับคำค้นหาที่ผู้ใช้พูด
| ช่อง | |
|---|---|
| spoken_request_text | 
 เอาต์พุตเท่านั้น ข้อความถอดเสียงที่ระบบรู้จักของสิ่งที่ผู้ใช้พูด | 
| spoken_response_text | 
 Export-only ข้อความตอบกลับที่ Assistant พูด ซึ่งจะแสดงผลสำหรับการดำเนินการ IFTTT เท่านั้น | 
| conversation_state | 
 
                    ข้อมูลสถานะเอาต์พุตเท่านั้นสำหรับ  | 
| microphone_mode | 
                    เอาต์พุตเท่านั้น ระบุโหมดของไมโครโฟนหลังจากประมวลผล  | 
| volume_percentage | 
 
                    ระดับเสียงเท่านั้น อัปเดตระดับเสียงแล้ว ค่าจะเป็น 0 หรือไม่ใส่ (หมายความว่าไม่มีการเปลี่ยนแปลง) เว้นแต่คำสั่งเสียง เช่น "เพิ่มระดับเสียง" หรือ "ตั้งระดับเสียง 4" ซึ่งในกรณีนี้ ค่าจะอยู่ระหว่าง 1 ถึง 100 (ตรงกับระดับเสียงใหม่ 1% ถึง 100%) โดยปกติแล้ว ลูกค้าควรใช้ระดับเสียงนี้เมื่อเล่นข้อมูล  | 
MicrophoneMode
สถานะที่เป็นไปได้ของไมโครโฟนหลังจาก RPC Converse เสร็จสมบูรณ์
| Enum | |
|---|---|
| MICROPHONE_MODE_UNSPECIFIED | ไม่ได้ระบุโหมด | 
| CLOSE_MICROPHONE | บริการไม่ต้องการคําถามต่อเนื่องจากผู้ใช้ ไมโครโฟนควรปิดอยู่จนกว่าผู้ใช้จะเปิดใช้งานอีกครั้ง | 
| DIALOG_FOLLOW_ON | บริการคาดว่าจะมีคำถามจากผู้ใช้ต่อเนื่อง ไมโครโฟนควรเปิดอีกครั้งเมื่อ AudioOutเล่นจบ (ด้วยการเริ่มเรียกConverseRPC ใหม่เพื่อส่งเสียงใหม่) | 
ConverseState
ให้ข้อมูลเกี่ยวกับสถานะของกล่องโต้ตอบปัจจุบัน
| ช่อง | |
|---|---|
| conversation_state | 
 
                    ต้องระบุ ค่า  | 
