gpt4 book ai didi

c# - Microsoft Bot Framework DirectLine 无法访问对话

转载 作者:行者123 更新时间:2023-11-30 12:40:50 26 4
gpt4 key购买 nike

我正在尝试使用 Microsoft Bot Framework DirectLine API 读取消息并将消息添加到其他用户和我的机器人之间的现有对话中。从我读过的内容来看,我相信这在使用 master-secret 时应该是可能的,但它对我不起作用。我正在使用 WebAPI 尝试访问我现有的两个对话(在 Facebook 和 Skype 上),如下所示:

    [HttpPost]
[Route("remind")]
public string Remind()
{
var secret = System.Configuration.ConfigurationManager.AppSettings["secret"];

var uri = new Uri("https://directline.botframework.com/");
var creds = new DirectLineClientCredentials(secret);

DirectLineClient client = new DirectLineClient(uri, creds);
Conversations convs = new Conversations(client);

var conversationIDs = new string[] { "0000000000000000-0000000000000000", "00:0123456789abcdefghijklmnopqrstuvwxyz0123456789-A-_0123456798ABCDEF" }; // Existing Facebook & Skype conversations

// Send a message to each conversation:
foreach (var conversationID in conversationIDs)
{
Message message = new Message(conversationId: conversationID, fromProperty: "My Bot", text: "Hey dude, remember that thing!");
Console.WriteLine(message.Text);
convs.PostMessage(conversationID, message); // FAILS - This executes but doesn't do anything.
}

// Try reading the messages from a conversation (just to test if it's working):
string waterMark = null;
var set = convs.GetMessages(conversationIDs[0], waterMark); // FAILS - This fails with a 404 not found.
waterMark = set.Watermark;

return "Done :-)";
}

静默调用 PostMessage() 失败,GetMessages() 返回 404。我似乎在做正确的事,该机器人是实时的,并且在 Facebook 和 Skype 中与 DirectLine API 分开工作得很好。它仅在我使用 DirectLine API 创建新对话时有效,然后我可以访问其消息并向其发布新消息。

这个问题有点帮助,但并没有告诉我如何解决它: Difficulty accessing messages in an existing conversation in Microsoft Bot Framework

如有任何帮助,我们将不胜感激。

谢谢

最佳答案

出于安全原因,您不能使用 DirectLine 监视来自另一个对话的消息。对于您描述的场景(升级为人类),有多种不同的方法可以解决这个问题。一种是让您的机器人经纪人在帐户之间进行对话(即 Facebook 最终用户 <-> 您的机器人 <-> Facebook 支持人员)。每个人都在与机器人交谈,机器人将消息传递给其他用户。 (也可以是 Facebook 用户 <-> 你的机器人 <-> Skype 用户)你的机器人必须存储最后 n 条消息以提供上下文。或者,我看到人们使用位于远端的直线建立他们自己的客户支持聊天界面。希望这有帮助

关于c# - Microsoft Bot Framework DirectLine 无法访问对话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40565838/

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