【问题标题】:Adaptive Card Expire After Specific Time自适应卡在特定时间后过期
【发布时间】:2020-09-04 02:11:46
【问题描述】:

我们已将 NodeJs 机器人应用程序与机器人框架集成,以便与 Microsoft 团队中的机器人交互。

根据用户输入,我们分别发送自适应卡片。目前用户可以在今天获得自适应卡,并且可以在当天晚些时候或几天后更新卡。

有什么方法可以让卡在特定时间后失效,从而使卡失效。

谢谢

【问题讨论】:

标签: node.js microsoft-teams adaptive-cards


【解决方案1】:

我知道你可以如何做到这一点,但仅供参考,我以前没有这样做过,所以不能保证它会奏效。基本上,您可以将更新 消息(如讨论的here)与发送(或在本例中为“更新”)主动消息相结合 - 请参阅更多here。

由于这是与用户的现有对话,因此您可以从用户发送的任何现有消息中访问,以获取启动主动对话所需的参数(您需要 serviceurl、conversationid、tenantid 等)。请注意,您可以从您的机器人外部发送主动消息(代码可以托管在其他地方,并且不需要实际存在于您的机器人中,即使对用户而言,它看起来好像发送了主动消息 来自你的机器人)。我提到这一点是因为你可以让这个“过期卡”消息在你的机器人的一个单独的进程中存在。

【讨论】:

  • 在你上面看到我的答案:)
【解决方案2】:

如果您仍在寻找答案,我最近尝试了这种方法:

在卡片的响应数据中,我设置了到期日期,所以现在当用户提交卡片时,您可以验证响应中的数据,然后相应地更新卡片。

我不得不使用这种方法,因为我们拥有非常高的用户群,并且主动为所有用户更新卡需要更长的时间。

缺点:卡片将保持活动状态,除非并且直到用户对其采取某些操作。

【讨论】:

    【解决方案3】:

    首先,不,这不是已经在任何地方实现的东西,您完全必须自己构建它。

    这样做的一种方法是:

    1. 您需要存储您发送的所有卡片的活动/消息 ID。如果您有 ID,您可以随时返回并更新消息(即更新您的卡)
    2. 话虽如此,我的建议是:
      • 向用户发送卡片并存储id
      • 将 ID 存储在一起 创建日期和到期日期在您的某处
      • 有一些计划的进程来扫描过期的卡
      • 如果卡已过期,请使用新卡更新消息“对不起,此卡已过期”

    我们为我们的 MS Teams Bot 做到了这一点,并且它以这种方式运行良好。

    【讨论】:

      猜你喜欢
      • 2020-04-15
      • 1970-01-01
      • 1970-01-01
      • 2020-08-22
      • 1970-01-01
      • 1970-01-01
      • 2015-08-25
      • 2020-12-08
      • 2017-07-07
      相关资源
      最近更新 更多