索引
- EmbeddedAssistant(介面)
- AssistConfig(訊息)
- AssistRequest(訊息)
- AssistResponse(訊息)
- AssistResponse.EventType(列舉)
- AudioInConfig(訊息)
- AudioInConfig.Encoding(列舉)
- AudioOut(訊息)
- AudioOutConfig(訊息)
- AudioOutConfig.Encoding(列舉)
- DebugConfig(訊息)
- DebugInfo(訊息)
- DeviceAction(訊息)
- DeviceConfig(訊息)
- DeviceLocation(訊息)
- DialogStateIn(訊息)
- DialogStateOut(訊息)
- DialogStateOut.MicrophoneMode(列舉)
- ScreenOut(訊息)
- ScreenOut.Format(列舉)
- ScreenOutConfig(訊息)
- ScreenOutConfig.ScreenMode(列舉)
- SpeechRecognitionResult(訊息)
EmbeddedAssistant
執行 Google 助理 API 的服務。
| 助攻 | |
|---|---|
| 
 啟動或繼續與嵌入的 Google 助理服務對話。每個呼叫都會執行一次往返作業,將音訊要求傳送至服務,並接收音訊回應。在傳送音訊時,使用雙向串流接收結果 (例如  對話指的是一或多個 gRPC 連線,每個連線都包含數個串流的要求和回應。例如,使用者說「加入我的購物清單」,Google 助理回應「你想新增什麼?」。第一則 gRPC 訊息中的串流要求和回應序列可能是: 
 接著,使用者說「貝果」,Google 助理回應「好,我已經將貝果加入購物清單」。系統會將此呼叫當做另一個對  
 雖然我們無法保證回應的確切順序,但依序處理的  
 | |
AssistConfig
指定如何處理 AssistRequest 訊息。
| 欄位 | ||
|---|---|---|
| audio_out_config | 必要:指定要傳回音訊的格式。 | |
| screen_out_config | 選填:指定伺服器傳回視覺化畫面回應時要使用的格式。 | |
| dialog_state_in | 必要:代表目前的對話方塊狀態。 | |
| device_config | 可明確識別特定裝置的裝置設定。 | |
| debug_config | 
                    選填:整個  | |
| 聯集欄位  
 | ||
| audio_in_config | 
                    指定如何處理後續傳入的音訊。如果在後續要求中提供  | |
| text_query | 
 要傳送至 Google 助理的文字輸入內容。如果無法使用音訊輸入功能,可透過文字介面填入這項資訊。 | |
AssistRequest
用戶端傳送的頂層訊息。用戶端必須傳送至少兩則,且通常有多則 AssistRequest 訊息。第一則訊息必須包含 config 訊息,且不得包含 audio_in 資料。所有後續訊息都必須包含 audio_in 資料,且不得包含 config 訊息。
| 欄位 | ||
|---|---|---|
| 聯集欄位 type。每個AssistRequest中必須明確指定其中一個欄位。type只能採用下列其中一種設定: | ||
| config | 
                     | |
| audio_in | 
 
                    要辨識的音訊資料。後續的音訊資料區塊是用後續的  | |
AssistResponse
用戶端收到的頂層訊息。系統會將一或多則 AssistResponse 訊息以串流方式傳回給用戶端。
| 欄位 | |
|---|---|
| event_type | 「僅限輸出」:指出事件類型。 | 
| audio_out | 僅限輸出:含有 Google 助理對查詢回應的音訊。 | 
| screen_out | 僅限輸出:包含 Google 助理對查詢的視覺化回應。 | 
| device_action | 僅限輸出:包含查詢觸發的動作,其中包含適當的酬載和語意剖析。 | 
| speech_results[] | 
                    僅限輸出:這份重複清單包含 0 個或多個的語音辨識結果,對應到目前處理中音訊的連續部分,從最早的音訊 (以及最穩定的部分) 對應至最新音訊的部分。您可以串連這些字串,以查看完整的處理中回應。語音辨識完成後,這份清單會包含  | 
| dialog_state_out | 僅限輸出:包含與使用者查詢相關的輸出內容。 | 
| debug_info | 
                    僅限輸出:適用於開發人員的偵錯資訊。只有在要求將  | 
EventType
表示活動類型。
| 列舉 | |
|---|---|
| EVENT_TYPE_UNSPECIFIED | 未指定事件。 | 
| END_OF_UTTERANCE | 這個事件表示伺服器偵測到使用者語音內容已結束,並認為沒有任何其他語音內容。因此,伺服器不會處理任何其他音訊內容 (雖然後續可能傳回其他結果)。用戶端應停止傳送其他音訊資料、半關閉 gRPC 連線,並等待任何其他結果,直到伺服器關閉 gRPC 連線為止。 | 
AudioInConfig
指定如何處理後續要求中提供的 audio_in 資料。如需建議設定,請參閱 Google 助理 SDK 最佳做法。
| 欄位 | |
|---|---|
| encoding | 
                    必填:在所有  | 
| sample_rate_hertz | 
 
                    必填:在所有  | 
編碼
語音訊息傳送的資料音訊編碼。音訊必須為單一頻道 (單聲道)。
| 列舉 | |
|---|---|
| ENCODING_UNSPECIFIED | 未指定,將傳回 google.rpc.Code.INVALID_ARGUMENT結果。 | 
| LINEAR16 | 未壓縮的 16 位元已簽署 Little-Endian 樣本 (線性 PCM)。這個編碼不包含標頭,只有原始音訊位元組。 | 
| FLAC | 建議採用 FLAC(自由無損音訊轉碼器) 編碼,因為這種編碼不會失真 (因此不會受損,且只需約LINEAR16的一半頻寬)。這個編碼包括FLAC串流標頭和音訊資料。不過,可支援 16 位元和 24 位元樣本,但不支援STREAMINFO中的所有欄位。 | 
AudioOut
包含 Google 助理對查詢回應的音訊。後續的 AssistResponse 訊息會接收後續的音訊資料區塊。
| 欄位 | |
|---|---|
| audio_data | 
 
                    僅限輸出:包含 Google 助理對查詢的回應。後續的  | 
AudioOutConfig
指定伺服器傳回 audio_out 訊息時要使用的格式。
| 欄位 | |
|---|---|
| encoding | 
                    必要:在所有  | 
| sample_rate_hertz | 
 
                    必填: | 
| volume_percentage | 
 必填:裝置音訊輸出的目前音量設定。有效值為 1 到 100 (1% 等於 100%)。 | 
編碼
語音訊息傳回的資料音訊編碼。所有編碼都是不含標頭的原始音訊位元組,但下文說明除外。
| 列舉 | |
|---|---|
| ENCODING_UNSPECIFIED | 未指定,將傳回 google.rpc.Code.INVALID_ARGUMENT結果。 | 
| LINEAR16 | 未壓縮的 16 位元帶正負號的小端序樣本 (線性 PCM)。 | 
| MP3 | MP3 音訊編碼。取樣率會在酬載中編碼。 | 
| OPUS_IN_OGG | 包裝在 Ogg 容器中的 Opus 編碼音訊。產出結果將是可在 Android 和某些瀏覽器 (例如 Chrome) 中以原生方式播放的檔案。在使用相同位元率時,編碼的品質遠高於 MP3。取樣率會在酬載中編碼。 | 
DebugConfig
目前要求的偵錯參數。
| 欄位 | |
|---|---|
| return_debug_info | 
 
                    如果這個欄位設為 true,系統可能會在  | 
DebugInfo
給開發人員的偵錯資訊。只有在要求將 return_debug_info 設為 true 時才會傳回。
| 欄位 | |
|---|---|
| aog_agent_to_assistant_json | 
 Action-on-Google 代理程式傳送到 Google 伺服器的原始 JSON 回應。請參閱「AppResponse」。只有在要求建立者擁有 AoG 專案,且 AoG 專案處於預覽模式時,系統才會填入這項資訊。 | 
DeviceAction
如果使用者觸發了裝置動作,就會傳回裝置的回應。舉例來說,支援查詢「Turn on the light」的裝置會收到 DeviceAction,當中包含內含要求語意的 JSON 酬載。
| 欄位 | |
|---|---|
| device_request_json | 
 
                    包含觸發裝置動作文法的裝置指令回應的 JSON,格式由特定特徵的  | 
DeviceConfig
「必填」欄位,方便 Google 助理識別裝置。
另請參閱:
| 欄位 | |
|---|---|
| device_id | 
 必填:裝置的專屬 ID。ID 長度不得超過 128 個半形字元。例如:DBCDW098234。這個 ID 必須與裝置註冊時傳回的 device_id 相符。此 device_id 會比對使用者已註冊的裝置,以便查詢這部裝置支援的 traits。這項資訊不會在裝置重新啟動後變更。不過,請勿在恢復原廠設定後儲存此密碼。 | 
| device_model_id | 
 必填。裝置型號的專屬 ID。device_model_id 和 device_id 的組合必須與先前透過裝置註冊建立關聯。 | 
DeviceLocation
地點有三個來源,這些屬性會用於以下優先順序:
- 此 DeviceLocation,主要用於搭載 GPS 的行動裝置。
- 使用者在設定裝置時指定的位置;這是每位使用者在每部裝置中的指定位置。如未指定 DeviceLocation,系統會使用這個位置。
- 根據 IP 位址推測位置。只有在未指定上述項目時,才能使用這個屬性。
| 欄位 | |
|---|---|
| coordinates | 裝置的經緯度。 | 
DialogStateIn
提供目前對話方塊狀態的相關資訊。
| 欄位 | |
|---|---|
| conversation_state | 
 
                    必要:這個欄位必須一律設為在先前  | 
| language_code | 
 
                    必填:要求所使用的語言,並採用 IETF BCP 47 語法 (例如「en-US」)。詳情請參閱語言支援。如果您已透過手機的 Google 助理應用程式的「設定」選單為這個  | 
| device_location | 選填。查詢來源的裝置所在位置。 | 
| is_new_conversation | 
 選填。如果設為 true,伺服器會將要求視為新的對話,不會使用先前要求的狀態。當應重新啟動對話時 (例如裝置重新啟動,或在上次查詢經過經過大量時間後),請將這個欄位設為 true。 | 
DialogStateOut
使用者查詢產生的對話方塊狀態。可能會收到多則訊息。
| 欄位 | |
|---|---|
| supplemental_display_text | 
 
                    僅限輸出:由 Google 助理提供的補充顯示文字。這可能與  | 
| conversation_state | 
 
                    僅限輸出:後續  | 
| microphone_mode | 
                    「僅限輸出」:指定這個  | 
| volume_percentage | 
 
                    僅限輸出:已更新音量等級。這個值會是 0 或省略 (表示沒有變更),除非辨識出「調高音量」或「將音量調到 4」等語音指令。在在這種情況下,該值介於 1 到 100 之間 (新音量的目標等級為 1% 至 100%)。一般來說,用戶端在播放  | 
MicrophoneMode
Assist RPC 完成後的麥克風可能狀態。
| 列舉 | |
|---|---|
| MICROPHONE_MODE_UNSPECIFIED | 未指定模式。 | 
| CLOSE_MICROPHONE | 這項服務不會預期使用者會持續提出問題。麥克風應保持關閉狀態,直到使用者重新啟用為止。 | 
| DIALOG_FOLLOW_ON | 服務預期使用者會持續回答問題。當 AudioOut播放完畢時,麥克風應該會重新開啟 (方法是啟動新的AssistRPC 呼叫來傳送新音訊)。 | 
ScreenOut
Google 助理的視覺化輸出回應。由 screen_out_config 啟用。
| 欄位 | |
|---|---|
| format | 僅限輸出:所提供畫面資料的格式。 | 
| data | 
 僅限輸出:做為 Google 助理查詢結果顯示的原始畫面資料。 | 
形式
可能的螢幕資料格式。
| 列舉 | |
|---|---|
| FORMAT_UNSPECIFIED | 未指定格式。 | 
| HTML | 資料會包含採用 UTF-8 編碼的完整 HTML5 版面配置,例如 <html><body><div>...</div></body></html>。而是與音訊回應一起顯示。請注意,HTML5 doctype 應包含在實際的 HTML 資料中。 | 
ScreenOutConfig
指定伺服器傳回 screen_out 回應時要使用的格式。
| 欄位 | |
|---|---|
| screen_mode | 發出查詢時的裝置目前的螢幕模式。 | 
ScreenMode
裝置上螢幕輸出模式可能的模式。
| 列舉 | |
|---|---|
| SCREEN_MODE_UNSPECIFIED | 未指定影片模式。Google 助理可能會以 OFF模式回應。 | 
| OFF | 螢幕已關閉 (或是亮度或其他設定導致使用者看不到)。在這種模式下,Google 助理通常不會傳回螢幕回應。 | 
| PLAYING | Google 助理通常在此模式下傳回部分畫面回應。 | 
SpeechRecognitionResult
使用者所說詞組的預估語音轉錄。可以是單一區段,或是使用者語音查詢的完整猜測。
| 欄位 | |
|---|---|
| transcript | 
 僅限輸出的轉錄稿文字,代表使用者叫用的字詞。 | 
| stability | 
 
                    僅限輸出:Google 助理不會變更這項結果的猜測機率預估值。值的範圍介於 0.0 (完全不穩定) 到 1.0 (完全穩定和最終) 之間。預設的 0.0 是 sentinel 值,表示未設定  | 
