寻找一种方法将 Typeform 结果文本从 FB Messenger WebView 传回聊天
Looking for a way to pass Typeform results text back from a FB Messenger WebView into the chat
我正在使用 FB Messenger 中的 Dialogflow 创建一个聊天机器人,它使用 Webview UI 将人们链接到 Typeform 测验。因此,他们 select 在 Messenger 聊天中进行测验,并在 window 中打开 Typeform,然后完成测验。我想从 Typeform 结果屏幕获取文本并将其重新注入 Messenger,以便用户可以查看他们的结果历史记录。
我一直在寻找一种方法来做到这一点,但我的 google-fu 被证明很弱。
所以你将无法从 webview 获取表单提交的结果,事实上如果你只是使用 webview 并显示 Typeform url 你不一定知道用户何时提交。
我认为我建议的第一件事是在网页上托管表单并使用 Embed SDK or Typeform Elements。主要原因是因为两者都提供了一个 onsubmit
生命周期,您至少可以知道用户何时提交表单,然后据此采取行动。还有更多内容,但我很快就会回来...
接下来您 want/need 要做的是能够根据用户提交的表单采取行动。您可以通过使用我们将在提交时触发的 Typeform API (which you'll know when to call/use because the previous step will inform you the user has submitted the form thanks to the onsubmit
callback), or have a server where you listen for a webhook 查询提交来做到这一点。
所以下一个step/concern就是知道如何查询一个用户的唯一提交。我推荐的方法是通过 URL 形式的 unique hidden field,您可以在上一段中查询或验证。如果您使用的是 Dialogflow,您可能有这样的意图,即指示用户在 webview 中形成调用您创建的 webhook(firebase?),然后为您存储在数据库中的会话创建一个唯一的 id,使用那个uid 作为您发送到 facebook messenger 的表单中的隐藏字段,然后您可以在通过 SDK 查询或通过 webhooks 收听时使用该 uid 作为标识符。
我正在使用 FB Messenger 中的 Dialogflow 创建一个聊天机器人,它使用 Webview UI 将人们链接到 Typeform 测验。因此,他们 select 在 Messenger 聊天中进行测验,并在 window 中打开 Typeform,然后完成测验。我想从 Typeform 结果屏幕获取文本并将其重新注入 Messenger,以便用户可以查看他们的结果历史记录。
我一直在寻找一种方法来做到这一点,但我的 google-fu 被证明很弱。
所以你将无法从 webview 获取表单提交的结果,事实上如果你只是使用 webview 并显示 Typeform url 你不一定知道用户何时提交。
我认为我建议的第一件事是在网页上托管表单并使用 Embed SDK or Typeform Elements。主要原因是因为两者都提供了一个 onsubmit
生命周期,您至少可以知道用户何时提交表单,然后据此采取行动。还有更多内容,但我很快就会回来...
接下来您 want/need 要做的是能够根据用户提交的表单采取行动。您可以通过使用我们将在提交时触发的 Typeform API (which you'll know when to call/use because the previous step will inform you the user has submitted the form thanks to the onsubmit
callback), or have a server where you listen for a webhook 查询提交来做到这一点。
所以下一个step/concern就是知道如何查询一个用户的唯一提交。我推荐的方法是通过 URL 形式的 unique hidden field,您可以在上一段中查询或验证。如果您使用的是 Dialogflow,您可能有这样的意图,即指示用户在 webview 中形成调用您创建的 webhook(firebase?),然后为您存储在数据库中的会话创建一个唯一的 id,使用那个uid 作为您发送到 facebook messenger 的表单中的隐藏字段,然后您可以在通过 SDK 查询或通过 webhooks 收听时使用该 uid 作为标识符。