我构建了一个机器人并且它运行良好,我正在使用 FormFlow 来完成调查问卷。我需要使用西类牙语的命令,但它只适用于英语(帮助、退出、重置...),模拟器除外。
使用模拟器并将区域设置更改为“es”正在工作:
当我输入“ayuda”时,会显示帮助。没关系。
在 Bot 个人资料页面中,该机器人以西类牙语发布(使用“es”):
该机器人发布在 Skype、Facebook Messenger、Slack 和 Telegram 中。
当我在 Android 中使用带有“Estados Unidos - Español”或“España - Español”语言的机器人并用西类牙语输入“ayuda”或其他命令时,机器人用“'Ayuda'不是[字段] 选项”消息,但是当输入是“帮助”时,它运行良好。
有什么我想念的吗?
最佳答案
我使用 ngrok 来查看 Emulator 和机器人之间交换的消息,使用 Locale 字段(使用 es、es-US、es-PA、es-ES 等)西类牙语的消息正在工作。
在此之后,我在 bot 中编写了一个小命令来获取语言环境,该字段永远返回一个空值(带有 es、en 等)。
最后,我在 Post 方法的 MessagesController 中设置了语言环境。
activity.Locale = "es-US";
机器人正在像我想要的那样用西类牙语工作。
这是最好的解决方案吗?
关于botframework - 如何使用 FormFlow 支持其他语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38939483/