Indeks
EmbeddedAssistant(interfejs)AudioInConfig(komunikat)AudioInConfig.Encoding(wyliczenie)AudioOut(komunikat)AudioOutConfig(komunikat)AudioOutConfig.Encoding(wyliczenie)ConverseConfig(komunikat)ConverseRequest(komunikat)ConverseResponse(komunikat)ConverseResponse.EventType(wyliczenie)ConverseResult(komunikat)ConverseResult.MicrophoneMode(wyliczenie)ConverseState(komunikat)
EmbeddedAssistant
Usługa, która korzysta z interfejsu Google Assistant API.
| Converse | |
|---|---|
| 
                   
 Rozpoczyna lub kontynuuje rozmowę za pomocą wbudowanej usługi asystenta. Każde połączenie jest wysyłane w obie strony, wysyłane do usługi żądanie dźwiękowe i odbierane w odpowiedzi audio. Używa dwukierunkowego przesyłania strumieniowego do odbierania wyników, np. zdarzenia  Rozmowa to co najmniej jedno połączenie gRPC, z których każde składa się z kilku przesyłanych strumieniowo żądań i odpowiedzi. Na przykład użytkownik powie Dodaj do mojej listy zakupów, a Asystent odpowie Co chcesz dodać?. Sekwencja przesyłanych strumieniowo żądań i odpowiedzi w pierwszym komunikacie gRPC mogłaby wyglądać tak: 
 Użytkownik mówi bajgle, a asystent odpowiada OK, dodałem bajgle do listy zakupów. Jest ono wysyłane jako kolejne wywołanie połączenia gRPC do metody  
 Chociaż dokładna kolejność odpowiedzi nie jest gwarantowana, kolejne komunikaty ConverseResponse.audio_out zawsze zawierają sekwencyjne fragmenty dźwięku. 
  | 
              |
AudioInConfig
Określa, jak przetwarzać dane audio_in przekazywane w kolejnych żądaniach. Zalecane ustawienia znajdziesz w artykule o sprawdzonych metodach dotyczących interfejsu gRPC API Asystenta Google.
| Pola | |
|---|---|
encoding | 
                
                  
                   
                    Wymagane kodowanie danych dźwiękowych wysyłanych we wszystkich wiadomościach typu   | 
              
sample_rate_hertz | 
                
                   
 
                    Wymagane – częstotliwość próbkowania (w hercach) danych dźwiękowych wysłanych we wszystkich wiadomościach typu   | 
              
Kodowanie
Kodowanie dźwięku danych wysłanych w wiadomości głosowej. Dźwięk musi być jednokanałowy (mono). Jedyny obsługiwany język to „en-US”.
| Wartości w polu enum | |
|---|---|
ENCODING_UNSPECIFIED | 
                Nie określono. Zwrócony wynik to google.rpc.Code.INVALID_ARGUMENT. | 
              
LINEAR16 | 
                Nieskompresowane, podpisane 16-bitowe próbki little-endian (Linear PCM). Kodowanie nie obejmuje nagłówka, a jedynie nieprzetworzone bajty audio. | 
FLAC | 
                Zalecane jest kodowanie FLAC (Free Lossless Audio Codec), ponieważ jest ono bezstratne, dzięki czemu rozpoznawanie nie jest zagrożone i wymaga tylko około połowy przepustowości LINEAR16. To kodowanie obejmuje nagłówek strumienia FLAC, po którym następuje dane audio. Obsługuje on 16- i 24-bitowe próbki, ale nie wszystkie pola w STREAMINFO są obsługiwane. | 
              
AudioOut
Nagranie z odpowiedzią asystenta na pytanie. Kolejne fragmenty danych dźwiękowych są odbierane w sekwencji komunikatów ConverseResponse.
| Pola | |
|---|---|
audio_data | 
                
                   
 
                    Tylko dane wyjściowe – dane dźwiękowe zawierające odpowiedź asystenta na zapytanie. Kolejne fragmenty danych dźwiękowych są odbierane w sekwencji komunikatów   | 
              
AudioOutConfig
Określa format, który ma być używany przez serwer przy zwracaniu wiadomości audio_out.
| Pola | |
|---|---|
encoding | 
                
                  
                   
                    Wymagane kodowanie danych dźwiękowych, które mają być zwracane we wszystkich wiadomościach typu   | 
              
sample_rate_hertz | 
                
                   
 
                    Wymagane: częstotliwość próbkowania danych audio zwracanych w wiadomościach (  | 
              
volume_percentage | 
                
                   
 Wymagane: bieżące ustawienie głośności wyjścia audio urządzenia. Prawidłowe wartości to od 1 do 100 (odpowiadające 1%–100%).  | 
              
Kodowanie
Kodowanie dźwięku danych zwróconych w wiadomości głosowej. Wszystkie kodowanie są nieprzetworzonymi bajtami audio bez nagłówka, z wyjątkiem sytuacji opisanych poniżej.
| Wartości w polu enum | |
|---|---|
ENCODING_UNSPECIFIED | 
                Nie określono. Zwrócony wynik to google.rpc.Code.INVALID_ARGUMENT. | 
              
LINEAR16 | 
                Nieskompresowane, podpisane 16-bitowe próbki little-endian (Linear PCM). | 
MP3 | 
                Kodowanie audio MP3. Częstotliwość próbkowania jest kodowana w ładunku. | 
OPUS_IN_OGG | 
                Dźwięk w kodowaniu opus zapakowany w kontenerze Ogg. Powstanie plik, który można natywnie odtwarzać na Androidzie i w niektórych przeglądarkach (np. Chrome). Jakość kodowania jest znacznie wyższa niż jakość MP3 przy tej samej szybkości transmisji bitów. Częstotliwość próbkowania jest kodowana w ładunku. | 
ConverseConfig
Określa sposób przetwarzania wiadomości ConverseRequest.
| Pola | |
|---|---|
audio_in_config | 
                
                  
                   Wymagane – określa sposób przetwarzania następnego dźwięku przychodzącego.  | 
              
audio_out_config | 
                
                  
                   Wymagane – określa sposób formatowania dźwięku, który ma być zwracany.  | 
              
converse_state | 
                
                  
                   Wymagane Reprezentuje bieżący stan okna.  | 
              
ConverseRequest
Wiadomość najwyższego poziomu wysłana przez klienta. Klienci muszą wysłać co najmniej dwie (zwykle dużą liczbę wiadomości) wiadomości ConverseRequest. Pierwsza wiadomość musi zawierać wiadomość config i nie może zawierać danych audio_in. Wszystkie kolejne wiadomości muszą zawierać dane audio_in i nie mogą zawierać wiadomości config.
| Pola | ||
|---|---|---|
Pole sumy converse_request. W każdym polu ConverseRequest musisz podać dokładnie jedno z tych pól. converse_request może mieć tylko jedną z tych wartości: | 
              ||
config | 
                
                  
                   
                    Komunikat   | 
              |
audio_in | 
                
                   
 
                    Dane dźwiękowe do rozpoznania. Kolejne fragmenty danych dźwiękowych są wysyłane w formie kolejnych komunikatów w trybie   | 
              |
ConverseResponse
Wiadomość najwyższego poziomu odebrana przez klienta. Seria co najmniej jednej wiadomości w usłudze ConverseResponse jest przesyłana z powrotem do klienta.
| Pola | ||
|---|---|---|
Pole sumy converse_response. W każdym polu ConverseResponse pojawi się tylko 1 z tych pól. converse_response może mieć tylko jedną z tych wartości: | 
              ||
error | 
                
                  
                   
                    Tylko dane wyjściowe Jeśli zasada jest ustawiona, zwraca komunikat   | 
              |
event_type | 
                
                  
                   Tylko dane wyjściowe Wskazuje typ zdarzenia.  | 
              |
audio_out | 
                
                  
                   Tylko dane wyjściowe – dźwięk zawierający odpowiedź asystenta na zapytanie.  | 
              |
result | 
                
                  
                   Tylko dane wyjściowe – semantyczny wynik zapytania wypowiedzianego przez użytkownika.  | 
              |
EventType
Wskazuje typ zdarzenia.
| Wartości w polu enum | |
|---|---|
EVENT_TYPE_UNSPECIFIED | 
                Nie określono zdarzenia. | 
END_OF_UTTERANCE | 
                To zdarzenie oznacza, że serwer wykrył koniec wypowiedzi użytkownika i nie oczekuje żadnej dodatkowej mowy. Dlatego serwer nie przetwarza dodatkowego dźwięku (chociaż może później zwracać dodatkowe wyniki). Klient powinien przestać wysyłać dodatkowe dane audio, zamknąć do połowy połączenie gRPC i poczekać na dodatkowe wyniki, aż serwer zamknie połączenie gRPC. | 
ConverseResult
Wynik semantyczny zapytania wypowiedzianego przez użytkownika.
| Pola | |
|---|---|
spoken_request_text | 
                
                   
 Tylko dane wyjściowe – rozpoznawana transkrypcja wypowiedzi użytkownika.  | 
              
spoken_response_text | 
                
                   
 Tylko dane wyjściowe – tekst odpowiedzi Asystenta. Zwracana jest tylko w przypadku działania IFTTT.  | 
              
conversation_state | 
                
                   
 
                    Tylko dane wyjściowe – informacje o stanie dla kolejnych zdarzeń typu   | 
              
microphone_mode | 
                
                  
                   
                    Tylko dane wyjściowe – określa tryb mikrofonu po przetworzeniu tego wywołania RPC   | 
              
volume_percentage | 
                
                   
 
                    Tylko na wyjściu Zaktualizowano poziom głośności. Wartość może być równa 0 lub pomijana (co oznacza brak zmian), chyba że rozpoznano polecenie głosowe, np. „Zwiększ głośność” lub „Ustaw poziom głośności 4”. W takim przypadku wartość mieści się w zakresie od 1 do 100 (odpowiada nowemu poziomowi głośności od 1% do 100%). Zazwyczaj klient powinien używać tego poziomu głośności podczas odtwarzania danych   | 
              
MicrophoneMode
Możliwe stany mikrofonu po zakończeniu RPC Converse.
| Wartości w polu enum | |
|---|---|
MICROPHONE_MODE_UNSPECIFIED | 
                Nie określono trybu. | 
CLOSE_MICROPHONE | 
                Usługa nie oczekuje od użytkownika kolejnego pytania. Mikrofon powinien pozostać wyłączony, dopóki użytkownik go ponownie nie aktywuje. | 
DIALOG_FOLLOW_ON | 
                Usługa oczekuje od użytkownika kolejnego pytania. Mikrofon powinien zostać ponownie włączony po zakończeniu odtwarzania elementu AudioOut (przez rozpoczęcie nowego wywołania RPC Converse w celu wysłania nowego dźwięku). | 
              
ConverseState
Zawiera informacje o bieżącym stanie okna dialogowego.
| Pola | |
|---|---|
conversation_state | 
                
                   
 
                    Wymagane – wartość   |