问题标签 [proactive]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
40 浏览

node.js - 使用 Azure Web App Bot 向以前未知的用户发送私人消息

我想在 Microsoft Teams 中使用 Web App Bot 构建一个通知系统,它应该向我们的员工发送通知。它也应该适用于以前从未接触过我的机器人的用户。

来自 Micrsoft的示例显示了主动消息的概念,但如果我理解正确,它总是需要用户开始初始对话。

有没有办法在没有这个初始对话的情况下联系用户?也许使用 Azure Active Directory?

0 投票
0 回答
160 浏览

c# - Botframework V4:发送主动消息时更改对话框

我一直在使用 V4 botframework SDK 构建机器人,我们已经为各种目的创建了多个对话框。我们的其中一个对话框用于捕获用于在 CRM 环境中创建会议记录的数据。现在,我们希望在会议结束日期过后向使用此对话框的用户发送主动消息。

作为概念证明,我创建了一个控制台应用程序,该应用程序创建主动消息并使用用户之前使用的相同通道将此消息发送给用户。这似乎可行,但由于用户仍在我们的一个对话框中,因此用户无法响应此主动消息。我想发送一条主动消息,为用户启动一个新对话。

目前,这是我的代码:

0 投票
1 回答
173 浏览

botframework - 主动中断

我正在使用 Azure 函数向客户端发送主动消息。发送主动消息时如何“重置”对话。

在机器人中,可能会提示用户输入某些内容(例如一天中的时间)。在他们响应之前,可能会向他们发送主动消息。在这种情况下,我想重置/取消之前的对话并重新开始。

我已经能够使用 CancelAllDialogsAsync 重置对话框,这对于用户驱动的消息非常有效。

我正在使用 ConnectorClient 发送我的主动消息,它绕过框架,直接发送到客户端,因此永远不会点击我的中间件来重置对话框。

如何将主动消息发送到框架(我可以从机器人发送响应没问题)

0 投票
1 回答
69 浏览

c# - 如何在不使用按钮响应消息的情况下继续对话

我使用 PromptCustomDialog 发送消息。如果一个人在一段时间内无法回答问题,如何发送下一条消息?我将不胜感激这些例子。

0 投票
0 回答
204 浏览

c# - ContinueConversationAsync 401 身份验证问题,而直接对话工作正常

我正在尝试创建一个与示例中的主动机器人相同风格的机器人。我有一个机器人启动并运行,它能够成功地继续向本地其他频道发送消息,但是当我将它部署到天蓝色时,所有 ContinueConversationAsync 调用都会给出 401,这很奇怪,因为我可以与机器人进行正常对话,只要因为我不尝试与其他对话进行交流。

错误是:

我在本地测试时让机器人正常运行。

只有当我将设置部署到 azure 时,才会收到此错误。

所以这是一个身份验证问题,但我无法调试它,因为使用 ngrok+emulator 或网络聊天的直接通信成功工作,直到我尝试发送到其他频道之一。

对话继续功能

继续对话的代码。

使用 blob 存储或内存存储以及默认序列化程序从存储中检索对话。

我希望机器人继续保存旧的对话,但我得到了 401 错误。

完整的堆栈跟踪

0 投票
1 回答
68 浏览

alexa - Can anyone help me with the structure of array of localized attributes in the proactive events API when there are more than one localized attributes?

I was playing around with the proactive events but got stuck at the localizedattribute thing. So I was using media content available schema and it has two localizedattribute, and I can't find an example on how to use two of them at once. Any idea? So basically, this works :

But not this because it has two localizedattributes:

0 投票
1 回答
561 浏览

facebook - Microsoft Bot Framework v4:机器人重启后 Facebook Messenger 主动消息未经授权

我在 C# 中使用 microsoft framework v4 SDK 编写了一个机器人。该机器人部署在 Azure 中,并连接到网络聊天、直线和 Facebook Messenger 渠道。该机器人适用于所有人。

用户可以订阅以主动接收更新。为此,我使用存储的 ConversationReference 来发送主动消息。同样,这一切都很好,除非重新启动 bot wepApp导致:-

如果我从 facebook messenger 向机器人发送另一条消息,那么即使对于较旧的存储 ConversationReferences,主动消息也会再次开始工作。

最初我根据示例使用 MemoryStorage,但我将其更改为将 Azure Blob 存储用于会话状态和用户状态。这没什么区别。就好像它必须在内存中存储一​​个 facebook auth 令牌,所以如果应用程序重新启动,令牌就会丢失,直到用户从 messenger 发送另一条消息。

有什么办法可以解决这个问题,因为如果它无法处理机器人 webApp 重启,它会使订阅的主动更新变得毫无意义?

非常感谢

0 投票
2 回答
649 浏览

javascript - 如何使用 Azure Functions 向使用各种渠道的用户发送主动通知/广播消息?

我需要通过 Microsoft Bot V4 在特定时间向用户发送主动通知。我不完全确定如何进行此操作。

目前,我正在尝试使用 Azure Function 向用户发送主动消息,但是我不确定使用什么来连接 bot 服务和 azure 函数。我查看了 Direct Line,但对我来说并不清楚。

目前,我能想到的最好的方法是使用 Azure Function 和 Direct Line 向用户发送主动通知。

我通过邮递员测试了 Directline API,但它没有用。它说未找到会话 ID。

JSON 发布

消息发送后,它应该给我ID。

编辑:

我设法理解了我与 Direct Line 的问题。它不允许我将消息发送到不同的频道,例如网络聊天或 Skype 上的机器人。是否有任何其他选项可以在 Skype 上向我的用户发送消息?

0 投票
2 回答
265 浏览

c# - 当他/她的帐户被锁定时向用户发送短信通知消息,我该如何在 C# 中做到这一点

Bot Info SDK:C# 活动通道:SMS (Twilio) Bot 版本:v4.4.3

问题描述:我希望能够通过 SMS 消息发送主动消息。当用户的帐户被锁定时,我有那个人的电话号码,我想发送一条通知消息,例如“您的帐户被锁定,请做点什么”。这可能吗?我查看了有关主动消息的文档,即通过“活动”获取“ConversationReference”,我不知道电话号码,我可以创建一个“ConversationReference”对象,以及如何通过通知告诉机器人电话号码控制器。

谢谢你。

0 投票
1 回答
441 浏览

botframework - Bot Framework 主动消息将 Id 传递到对话状态

我有一个 SMS / Twilio 频道,用于向用户发送主动消息。为了发送主动消息,我调用了一个传入MySpecialId的 API 方法,该方法稍后在对话中使用。

我想将此 MySpecialId 保存到对话中,但此时我有 MySpecialId,对话还不存在,而且我没有 turnContext,所以我还不能真正保存它。

有没有办法将此 ID 从我的 API 方法传递到 BotCallback?我创建了一个快速示例。(这是我使用的原始示例https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/csharp_dotnetcore/16.proactive-messages

谢谢