通过 dotnet sdk 将 SessionID 传递给 api.ai
Pass SessionID to api.ai through dotnet sdk
这似乎是一个非常微不足道的问题,但我找不到通过 ApiAi.TextRequest 调用传递 SessionID 的方法
好的,事实证明它的 sdk 是以一种只能从客户端工作的方式构建的。 It generates the GUID internally:
public AIDataService(AIConfiguration config)
{
this.config = config;
if (string.IsNullOrEmpty(config.SessionId))
{
SessionId = Guid.NewGuid().ToString();
}
else
{
SessionId = config.SessionId;
}
}
所以我最后做的是将 SessionId 对象添加到 ApiRequest 对象:
[JsonProperty("sessionId")]
public string SessionId { get; set; }
显然您需要重构方法签名
这似乎是一个非常微不足道的问题,但我找不到通过 ApiAi.TextRequest 调用传递 SessionID 的方法
好的,事实证明它的 sdk 是以一种只能从客户端工作的方式构建的。 It generates the GUID internally:
public AIDataService(AIConfiguration config)
{
this.config = config;
if (string.IsNullOrEmpty(config.SessionId))
{
SessionId = Guid.NewGuid().ToString();
}
else
{
SessionId = config.SessionId;
}
}
所以我最后做的是将 SessionId 对象添加到 ApiRequest 对象:
[JsonProperty("sessionId")]
public string SessionId { get; set; }
显然您需要重构方法签名