C# 如何使用“设置按钮”;imBack“;使用ms bot builder键入松弛通道

C# 如何使用“设置按钮”;imBack“;使用ms bot builder键入松弛通道,c#,botframework,slack-api,C#,Botframework,Slack Api,我使用ms botbuilder开发了一些机器人程序,Skype、FB、电报和网络聊天上带有“imBack”类型的按钮没有问题。 然而,为了让它在Slack上工作,我发现(似乎它没有文档记录),您需要在应用程序管理面板中额外配置交互消息。下面是我关于这个问题的问题: 这真的是唯一的办法吗 如果是这样的话,那么真正的原因是什么,在所有其他渠道中,一切都正常 有没有一种方法可以通过编程来设置它,因为这对bot的分发非常不利 甚至当我在管理面板中设置端点时,它发出的请求与ms builder的工作方式

我使用ms botbuilder开发了一些机器人程序,Skype、FB、电报和网络聊天上带有“imBack”类型的按钮没有问题。 然而,为了让它在Slack上工作,我发现(似乎它没有文档记录),您需要在应用程序管理面板中额外配置交互消息。下面是我关于这个问题的问题:

  • 这真的是唯一的办法吗
  • 如果是这样的话,那么真正的原因是什么,在所有其他渠道中,一切都正常
  • 有没有一种方法可以通过编程来设置它,因为这对bot的分发非常不利
  • 甚至当我在管理面板中设置端点时,它发出的请求与ms builder的工作方式几乎不兼容(它会发送一些GET到我们需要的地方,并发布相关信息)
  • 代码示例:

    ...
    var reply = activity.CreateReply("hi, can i ask you few question?");
    
    reply.Attachments = new List<Attachment>(){};
    var buttonSelect = new CardAction
    {
        Value = $" /startCommand",
        Type = "imBack",
        Title = "ok, ask me"
    };
    
    var cardForButton = new ThumbnailCard { Buttons = new List<CardAction> { buttonSelect } };
    reply.Attachments.Add(cardForButton.ToAttachment());
    
    await connector.Conversations.CreateDirectConversationAsync(botaccount, userAccount, reply);
    ...
    
    。。。
    var reply=activity.CreateReply(“嗨,我能问你几个问题吗?”);
    reply.Attachments=newlist(){};
    var buttonSelect=新卡操作
    {
    值=$“/startCommand”,
    Type=“imBack”,
    Title=“好的,问我”
    };
    var cardForButton=new ThumbnailCard{Buttons=newlist{buttonSelect};
    reply.Attachments.Add(cardForButton.ToAttachment());
    等待connector.Conversations.CreateDirectConversationAsync(botaccount、userAccount、reply);
    ...
    
    您可以尝试两种可能的解决方案

  • 您可能已经激活了,但是您是否在SlackAPI仪表板中激活了交互式消息
  • 您需要从Slack api站点的oauth部分为您的应用程序获取一个令牌(验证令牌)。您需要将其与此处的其他信息{yourBotID}一起包括在内

  • 实际上,当在Slack中启用交互式消息时,所有需要做的事情都放在请求URL中,不确定之前是否在Ms bot框架面板上记录过,但现在已经记录了。问题已解决。

    是的,我配置了交互式消息(放入请求URL字段),但没有得到第二点。我找到了OAuth访问令牌,但我需要将其传递到哪里?在dev.botframework.com上,如果您已经添加了松弛通道,请单击编辑。在“提交您的凭据”部分,有一个验证令牌字段。我也有同样的问题。它呈现按钮,点击后,没有值发送回机器人。是的,它为我工作。谢谢但是,当我单击一个按钮时,两个按钮都会设置动画。知道为什么吗?@Snekithan你说的“无尾动物”到底是什么意思?你能展示吗?我是说鼠标点击动画。它返回正确的按钮点击值,但在所有按钮被点击时呈现。我认为这是slack客户端的问题,不要认为它与bot框架有关,你应该写信给slack支持。