我目前正在开发.net mvc 5应用程序,我希望为使用Api.ai制作的代理添加集成。我也使用SignalR来确保客户端和服务器之间的异步通信。问题是,我不断失去对话的上下文,参数丢失,机器人不断要求它们。
我的SignalR中心代码:
public class SupportHub : Hub
{
ApiAiUtility ai = new ApiAiUtility();
public void Send(string message)
{
var response = ai.Ai.TextRequest(message);
if (response.Result.GetStringParameter("subject") != "" &&
response.Result.GetStringParameter("description") != "")
{
//TODO: Add code to handle adding the ticket to database
}
Clients.All.echoBack(response.Result.Contexts);
}
我怀疑该枢纽没有与Api.ai保持联系。
答案 0 :(得分:0)
我通过改变这一行解决了这个问题:
ApiAiUtility ai = new ApiAiUtility();
到此:
static ApiAiUtility ai = new ApiAiUtility();