c# - 如何在 C# 中调用 google.apis.dialogflow.v2

标签 c# google-api dialogflow-es

我是 Google API 的新手。我想知道如何在 C# 中调用 Google Dialogflow API 以从输入文本中获取意图。但是我找不到任何使用 C# 调用 Dialogflow 的示例。

请提供一些从 C# 调用 Dialogflow 的示例。

最佳答案

如果我正确理解你的问题,你想从 C# 应用程序中调用 DialogFlow API(而不是编写从 DialogFlow 调用的实现端点)。如果是这种情况,这里是进行该调用的示例:

using Google.Cloud.Dialogflow.V2;

...
...

var query = new QueryInput
{
    Text = new TextInput
    {
        Text = "Something you want to ask a DF agent",
        LanguageCode = "en-us"
    }
};

var sessionId = "SomeUniqueId";
var agent = "MyAgentName";
var creds = GoogleCredential.FromJson("{ json google credentials file)");
var channel = new Grpc.Core.Channel(SessionsClient.DefaultEndpoint.Host, 
              creds.ToChannelCredentials());

var client = SessionsClient.Create(channel);

var dialogFlow = client.DetectIntent(
    new SessionName(agent, sessionId),
    query
);
channel.ShutdownAsync();

在早期版本的 DialogFlowAPI 中,我在尝试重新部署 channel.ShutDownAsync() 似乎可以解决的 Web API 项目时遇到了文件锁定问题。我认为这已在最近的版本中得到修复。

这是我使用过的最简单的 DF 请求版本。在这篇文章中有一个更复杂的版本,它传入了一个输入上下文: Making DialogFlow v2 DetectIntent Calls w/ C# (including input context)

关于c# - 如何在 C# 中调用 google.apis.dialogflow.v2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50636149/

相关文章:

c# - 什么是防止多次执行同一迁移的 Entity Framework 机制?

c# - 为什么在 MonoDevelop 中 ShowDialog 会崩溃?

javascript - 如何删除谷歌图表底部的零

dialogflow-es - 使用 Api.ai 从 Google Actions 请求用户位置

c# - 正则表达式以匹配多个字符串并向后看

c# - 读取混合(即文本和二进制)数据的最佳方式是什么?

ios - Google Nearby Messages API 破坏了应用程序图标

javascript - Google Api获取access_token请求返回invalid_request

actions-on-google - 是否可以向 google home 应用程序发送丰富的响应?

node.js - 使用 Api.ai Nodejs Angular socket.io 的聊天机器人