Google嵌入式助手服务在包含text_config时给出了有关缺少的错误提示

时间:2018-10-29 23:01:05

标签: google-assistant-sdk

我正在尝试使用嵌入式Google Assistant服务(https://developers.google.com/assistant/sdk/reference/rpc/google.assistant.embedded.v1alpha2)从我正在Rust中编写的应用程序中发送一些文本查询。由于没有正式的客户端库,而且我无法获得我尝试使用过的任何一个GRPC库,因此我将AssistRequest原型直接发布到https://embeddedassistant.googleapis.com/ $ rpc / google.assistant.embedded.v1alpha2 .EmbeddedAssistant / Assist。获取适当的OAuth令牌并注册设备ID后,我将发送如下原型:

config {
  text_query: "what's the time"
  audio_out_config {
    encoding: MP3
    sample_rate_hertz: 16000
  }
  screen_out_config {
    screen_mode: PLAYING
  }
  dialog_state_in {
    language_code: "en-US"
  }
  device_config {
    device_id: "my_device_id"
    device_model_id: "<my model id>"
  }
}

(已填写有效的device_id和device_model_id)。但是,我总是得到400,但有错误

  

“无效的\'AssistConfig \':必须提供audio_in_configtext_query。”

在清楚填写text_query的情况下,为什么会出现此错误?如果尝试设置audio_in_config,则会收到相同的错误。

1 个答案:

答案 0 :(得分:0)

回答了我自己的问题,原来我需要将请求包装在StreamBody proto中,并将序列化的AssistRequest放在 message 字段中。虽然我看不到任何地方都没有记录!