gpt4 book ai didi

c# - 如何结束对话?

转载 作者:太空狗 更新时间:2023-10-30 01:30:43 29 4
gpt4 key购买 nike

我使用 Bot Framework 创建了一个机器人,我正在使用 conversationID 来维护我的后端对话引擎的状态。我在结束对话的文档中找不到。在某些时候,用户必须能够向对话发出“结束或退出”信号,以便他们下次开始对话时,它会获得一个新的 conversationID。我认为这应该是一项简单的任务。我正在使用默认的 echo 模板,只是用我的类的方法替换了字母数行,该方法返回要发送回用户的文本。

最佳答案

现在有一个 ActivityTypes.EndOfConversation(这已经在 sdk 中)。

这是一种使用方法:v3

public static async Task EndConversation(this IBotToUser botToUser, string code = EndOfConversationCodes.CompletedSuccessfully, CancellationToken cancellationToken = default(CancellationToken))
{
var message = botToUser.MakeMessage();
message.Type = ActivityTypes.EndOfConversation;
message.AsEndOfConversationActivity().Code = code;

await botToUser.PostAsync(message, cancellationToken);
}

这也应该在未来的版本中:GitHub Pull Request


第四版

public static async Task EndConversation(this ITurnContext turnContext, string code = EndOfConversationCodes.CompletedSuccessfully, CancellationToken cancellationToken = default(CancellationToken))
{
var endOfConversation = Activity.CreateEndOfConversationActivity();
endOfConversation.Code = code;
await turnContext.SendActivityAsync(endOfConversation, cancellationToken);
}

关于c# - 如何结束对话?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43657463/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com