索引
- EmbeddedAssistant(インターフェース)
- AudioInConfig(メッセージ)
- AudioInConfig.Encoding(列挙型)
- AudioOut(メッセージ)
- AudioOutConfig(メッセージ)
- AudioOutConfig.Encoding(列挙型)
- ConverseConfig(メッセージ)
- ConverseRequest(メッセージ)
- ConverseResponse(メッセージ)
- ConverseResponse.EventType(列挙型)
- ConverseResult(メッセージ)
- ConverseResult.MicrophoneMode(列挙型)
- ConverseState(メッセージ)
EmbeddedAssistant
Google Assistant API を実装するサービス。
| Converse | |
|---|---|
| 
 埋め込みアシスタント サービスとの会話を開始または継続します。呼び出しごとにメッセージが 1 回往復します。すなわち、音声リクエストがサービスに送信され、音声レスポンスが受信されます。双方向ストリーミングを使用して、音声を送信しながら  会話は 1 つまたは複数の gRPC 接続であり、それぞれの接続が複数のストリーミング リクエストとレスポンスで構成されます。たとえば、ユーザーが「ショッピング リストに追加して」と言うと、アシスタントが「何を追加しますか?」と答えます。最初の gRPC メッセージのストリーミング リクエストとレスポンスの順序は次のとおりです。 
 次に、ユーザーが「ベーグル」と言うと、アシスタントは「わかりました。ベーグルをショッピング リストに追加しました」と答えます。これは、 
 レスポンスが正確にこの順序で届くことは保証されませんが、連続した ConverseResponse.audio_out メッセージには常に連続した音声部分が含まれます。 
 | |
AudioInConfig
後続のリクエストで提供される audio_in データの処理方法を指定します。推奨設定については、Google Assistant gRPC API のベスト プラクティスをご覧ください。
| フィールド | |
|---|---|
| encoding | 
                    必須。すべての  | 
| sample_rate_hertz | 
 
                    必須。すべての  | 
エンコード
音声メッセージで送信されるデータの音声エンコード。音声は 1 チャンネル(モノラル)である必要があります。サポートされている言語は「en-US」のみです。
| 列挙型 | |
|---|---|
| ENCODING_UNSPECIFIED | 指定なし。結果 google.rpc.Code.INVALID_ARGUMENTを返します。 | 
| LINEAR16 | 非圧縮 16 ビット符号付きリトル エンディアンのサンプル(Linear PCM)。このエンコードにはヘッダーは含まれず、生の音声バイトのみが含まれます。 | 
| FLAC | FLAC(Free Lossless Audio Codec)は、ロスレスであり、認識が損なわれないため、LINEAR16の約半分の帯域幅しか必要としないため、推奨されるエンコードです。このエンコードにはFLACストリーム ヘッダーが含まれ、その後に音声データが続きます。16 ビットと 24 ビットのサンプルをサポートしていますが、STREAMINFOのすべてのフィールドがサポートされているわけではありません。 | 
AudioOut
クエリに対するアシスタントのレスポンスを含む音声。音声データのシーケンシャル チャンクは、連続した ConverseResponse メッセージで受信されます。
| フィールド | |
|---|---|
| audio_data | 
 
                    出力のみ。クエリに対するアシスタントのレスポンスを含む音声データ。音声データの連続したチャンクは、連続した  | 
AudioOutConfig
サーバーが audio_out メッセージを返す際に使用する形式を指定します。
| フィールド | |
|---|---|
| encoding | 
                    必須。すべての  | 
| sample_rate_hertz | 
 
                    必須。 | 
| volume_percentage | 
 必須。デバイスの音声出力の現在の音量設定。有効な値は 1 ~ 100(1% ~ 100% に対応)です。 | 
エンコード
音声メッセージで返されるデータの音声エンコード。すべてのエンコードは、下記の例外を除き、ヘッダーのない生の音声バイトです。
| 列挙型 | |
|---|---|
| ENCODING_UNSPECIFIED | 指定なし。結果 google.rpc.Code.INVALID_ARGUMENTを返します。 | 
| LINEAR16 | 非圧縮 16 ビット符号付きリトル エンディアンのサンプル(Linear PCM)。 | 
| MP3 | MP3 音声エンコード。サンプリング レートはペイロードでエンコードされます。 | 
| OPUS_IN_OGG | ogg コンテナでラップされた Opus エンコード形式の音声。結果は、Android や Chrome などのブラウザでネイティブに再生できるファイルになります。ビットレートが同じ場合、エンコードの品質は MP3 よりもかなり高くなります。サンプリング レートはペイロードでエンコードされます。 | 
ConverseConfig
ConverseRequest メッセージの処理方法を指定します。
| フィールド | |
|---|---|
| audio_in_config | 必須。後続の受信音声の処理方法を指定します。 | 
| audio_out_config | 必須。返される音声の形式を指定します。 | 
| converse_state | 必須。現在のダイアログの状態を表します。 | 
ConverseRequest
クライアントから送信される最上位レベル メッセージ。クライアントは、少なくとも 2 つ、通常は多数の ConverseRequest メッセージを送信する必要があります。最初のメッセージには必ず config メッセージが含まれ、audio_in データが含まれることはありません。後続のすべてのメッセージには必ず audio_in データが含まれ、config メッセージが含まれることはありません。
| フィールド | ||
|---|---|---|
| 共用体フィールド converse_request。各ConverseRequestで、これらのフィールドのいずれか 1 つのみを指定する必要があります。converse_requestは次のいずれかになります。 | ||
| config | 
                     | |
| audio_in | 
 
                    認識する音声データ。音声データの連続したチャンクは、連続した  | |
ConverseResponse
クライアントが受信する最上位レベル メッセージ。一連の ConverseResponse メッセージがストリーミングされ、クライアントに返されます。
| フィールド | ||
|---|---|---|
| 共用体フィールド converse_response。各ConverseResponseには、これらのフィールドのいずれか 1 つのみが入力されます。converse_responseは次のいずれかになります。 | ||
| error | 
                    出力のみ。設定された場合、オペレーションのエラーを指定する  | |
| event_type | 出力のみ。イベントのタイプを示します。 | |
| audio_out | 出力のみ。クエリに対するアシスタントのレスポンスを含む音声。 | |
| result | 出力のみ。ユーザーが発話したクエリのセマンティック結果。 | |
EventType
イベントの種類を示します。
| 列挙型 | |
|---|---|
| EVENT_TYPE_UNSPECIFIED | イベントは指定されていません。 | 
| END_OF_UTTERANCE | このイベントは、サーバーがユーザーの発話の終わりを検出し、これ以上発話が続くことはないと推測したことを示します。したがって、サーバーは以降の音声を処理しません(ただし、後で追加の結果を返すことがあります)。クライアントは以降の音声データの送信を停止し、gRPC 接続を半分閉じて、サーバーが gRPC 接続を閉じるまで追加の結果を待機する必要があります。 | 
ConverseResult
ユーザーの音声クエリのセマンティック結果。
| フィールド | |
|---|---|
| spoken_request_text | 
 出力のみ。ユーザーの発話の認識された音声文字変換。 | 
| spoken_response_text | 
 出力のみ。アシスタントの音声レスポンスのテキスト。IFTTT アクションの場合にのみ返されます。 | 
| conversation_state | 
 
                    出力のみ。後続の  | 
| microphone_mode | 
                    出力のみ。この  | 
| volume_percentage | 
 
                    出力のみ。更新された音量レベル。「音量を上げて」や「音量を 4 に設定して」などの音声コマンドが認識された場合、値は 1~100 になります(新しい音量レベル 1% から 100% に対応します)。それ以外の場合、値は 0 に設定されるか、省略されます(変更なしを意味します)。通常、クライアントは  | 
MicrophoneMode
Converse RPC が完了した後のマイクの状態。
| 列挙型 | |
|---|---|
| MICROPHONE_MODE_UNSPECIFIED | モードが指定されていません。 | 
| CLOSE_MICROPHONE | サービスはユーザーから続きの質問は来ないと推測しました。ユーザーが再びマイクを作動させるまで、マイクはオフのままになります。 | 
| DIALOG_FOLLOW_ON | サービスはユーザーから続きの質問が来ると推測しました。 AudioOutの再生が完了したら(新しい音声を送信するための新しいConverseRPC 呼び出しを開始して)マイクを再度開く必要があります。 | 
ConverseState
現在の対話の状態に関する情報を提供します。
| フィールド | |
|---|---|
| conversation_state | 
 
                    必須。以前の  | 
