如何使用" imBack"设置按钮使用ms bot builder键入Slack通道

时间:2017-06-04 20:15:09

标签: c# botframework slack-api

我使用ms botbuilder开发了一些机器人,使用" imBack"按钮没有问题。键入Skype,FB,电报和网络聊天。 然而,试图让它在Slack上工作我发现(并且似乎没有记录)你需要在APP管理面板中额外配置交互式消息。以下是关于此问题的问题:

  1. 这是唯一的方法吗?
  2. 如果是这样的真正原因是什么,所有其他渠道的一切都运作良好。
  3. 有没有办法以编程方式设置它,因为它对于机器人的分发真的很糟糕吗?
  4. 即使我在管理面板中设置端点看起来它的请求几乎与ms builder的工作方式兼容(它会发送一些GET,我们需要发布相关信息)
  5. 代码示例:

    ...
    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);
    ...
    

2 个答案:

答案 0 :(得分:1)

您可以尝试的两件事可能是解决方案

  1. 您可能已经这样做了,但是您是否在松弛的api仪表板中激活了交互式消息?
  2. 您需要从应用程序的Slack api站点的oauth部分获取令牌(验证令牌)。您需要在https://slack.botframework.com/Dev/?botId= {yourBotID}
  3. 中添加其他信息

答案 1 :(得分:0)

实际上,当在Slack中启用交互式消息时,所有需要完成的操作都会在请求URL中放入https://slack.botframework.com/api/Actions,不确定它是早先在Ms bot框架面板上记录的,但现在是。问题已解决。