猿问

当用户关闭或按下 Botframework V4 上的 Web 视图中的按钮时,对话框会自动继续

我在 azure 中部署了一个 Web 应用程序,该应用程序在 Messenger Webview 中打开。我制作了一个空文本提示,供用户单击以便用户在关闭 Webview 时能够继续。然而,用户有时会忘记单击该按钮。我读过这个文档,但我无法做到这一点,因为我最好看实际的示例和代码。当用户关闭或按下 Web 视图中的按钮时,对话框如何自动继续?谢谢。

Web 视图是一组问题,用户的答案保存在 Cosmos DB 中,当用户关闭 Web 视图时,机器人会访问他们在 Cosmos DB 中的分数并计算他们的分数。

这是我当前的代码。

private static async Task<DialogTurnResult> ThirdStepAsync(WaterfallStepContext stepContext, CancellationToken cancellationToken = default(CancellationToken))

{

    Activity reply = stepContext.Context.Activity.CreateReply();

    reply.ChannelData = JObject.FromObject(

        new

        {

            attachment = new

            {

                type = "template",

                payload = new

                {

                    template_type = "generic",

                    elements = new[]

                    {

                          new

                          {

                                title = "<title>",

                                buttons = new object[]

                                {

                                new

                                   {

                                        type = "web_url",

                                        title = "<title>",

                                        url = webAppUrl,

                                        messenger_extensions="true",

                                        webview_height_ratio = "tall",

                                   },

                                new

                                   {

                                        type = "postback",

                                        title = "Done ✔️",

                                        payload = "Done ✔️",

                                   },

                                },

                          },

                    },

                },

            },

        });


守着一只汪
浏览 106回答 1
1回答

梵蒂冈之花

由于您甚至不知道您正在尝试创建哪种类型的 Web 应用程序,或者您正在使用什么语言编写 Web 应用程序,或者您计划如何托管 Web 应用程序,因此您的第一步就是弄清楚所有这些。如果您需要该过程的任何部分的帮助,那么您需要提出一个关于它的新的非常具体的问题,并包括您迄今为止尝试过的内容以及所有相关代码。当您在 Facebook Web 视图中打开 Web 应用程序时,您需要确保 Web 应用程序具有向机器人发送活动所需的所有信息(我一直将其称为主动消息,但这些通常指的是机器人) -给用户的消息)。所需的凭据应该已内置到 Web 应用程序中,因此您需要发送到 Web 应用程序端点的唯一内容是用户 ID,以便 Web 应用程序可以在活动中传递它,并且机器人可以识别哪个对话该活动涉及。向机器人发送活动的传统方法是使用 Direct Line,但您可能会想出一种方法,只需向机器人的端点发送 HTTP 请求,甚至使用 Facebook 应用程序的回调 URL 即可。完全没有必要让 LUIS 参与其中。仅当您不知道用户会说什么时,才应使用 LUIS 来解释来自用户的消息。每当您控制发送到机器人的消息时,使用 LUIS 就没有任何意义。请记住,有超过 15 种活动类型,并且您的活动不必是“消息”活动。您可以通过多种方式识别活动并在机器人中做出相应响应。我建议使用事件活动。根据我对您的熟练程度的了解,您可能需要进行大量研究才能完成您想要完成的任务。
随时随地看视频慕课网APP
我要回答