【问题标题】:Google assistant gRPC call hung谷歌助手 gRPC 通话挂起
【发布时间】:2017-06-04 12:31:59
【问题描述】:

当对“embeddedassistant.googleapis.com”进行 GRPC 调用时,服务器没有回复。当我检查 Google API Web 界面时,我看到在 google 服务器端收到了请求。 我使用正确的配置设置了请求(当我设置错误的配置时,我确实从服务器收到错误消息)。我在这里有什么遗漏吗?

  std::string Converse(const std::string& user) {

   AudioInConfig audio_in_config;
   audio_in_config.set_encoding(google::assistant::embedded::v1alpha1::AudioInConfig_Encoding_FLAC);
   audio_in_config.set_sample_rate_hertz(16000);

   AudioOutConfig audio_out_config;
   audio_out_config.set_encoding(google::assistant::embedded::v1alpha1::AudioOutConfig_Encoding_MP3);
   audio_out_config.set_sample_rate_hertz(16000);
   audio_out_config.set_volume_percentage(50);

   ConverseState converse_state;
   const char * conversation_state = "a";
   converse_state.set_conversation_state(conversation_state);

   ConverseConfig config;
   config.set_allocated_audio_in_config(&audio_in_config);
   config.set_allocated_audio_out_config(&audio_out_config);
   config.set_allocated_converse_state(&converse_state);

   ConverseRequest request;
   request.set_allocated_config(&config);

   ConverseResponse reply;

   ClientContext context;

   auto status = stub_->Converse(&context, request, &reply);

   config.release_audio_in_config();
   config.release_audio_out_config();
   config.release_converse_state();
   request.release_config();
   // Act upon its status.
   if (status.ok()) {
     return reply.result().conversation_state();
   } else {
     std::cout << "Error: " << status.error_code() << ": " << status.error_message()
            << std::endl;
     return "RPC failed";
   }
   return "";
 }

【问题讨论】:

标签: grpc google-assistant-sdk


【解决方案1】:

为什么你将 conversation_state 设置为“a”。它应该以字节为单位或为空。您还需要根据情况发送捕获的音频数据。您可以通过在代码中包含 C++ 中的 ALSA 声音 API 来做到这一点。

之前的 ConverseResponse 中返回的 conversation_state 值。如果没有先前的 ConverseResponse,则省略(不设置字段)。如果之前有 ConverseResponse,请不要省略此字段;这样做将结束该对话(并且这个新请求将开始一个新对话)。

你可以从这里看到:- https://developers.google.com/assistant/sdk/reference/rpc/google.assistant.embedded.v1alpha1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-21
    • 2022-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多