【问题标题】:Bot - How to return a newline from Bot to both skype preview and skype web appBot - 如何将换行符从 Bot 返回到 Skype 预览和 Skype Web 应用程序
【发布时间】:2016-07-28 05:02:15
【问题描述】:

我有一个 Bot 应用程序,它使用 \n\n 向 Skype 预览 Windows 10 应用程序返回一个换行符。但是,当我在 web 应用程序 https://web.skype.com/en/?ecsoverride=developer 中显示消息时,它不尊重换行符并将其表示为一个正在进行的字符串。

我在这里的帮助中没有看到:https://docs.botframework.com/en-us/csharp/builder/sdkreference/activities.html ...无论客户端是什么,如何表示换行符 - 是否有一些换行符可用于将从我的机器人接收消息的任何客户端?如果我添加类似
的内容,它会在我的 Skype Windows 10 应用程序中显示为该文本而不是换行符 - 我正在寻找适用于任何客户端的换行符。

有什么想法吗?

【问题讨论】:

  • \n\n 在我的 Skype 网络应用中仍然有效

标签: newline botframework


【解决方案1】:

发送多行回复或发送多个回复以使其看起来多行

https://github.com/Microsoft/BotBuilder/issues/33

【讨论】:

    【解决方案2】:

    插入 HTML 换行符 <br/> 有效!

    【讨论】:

      【解决方案3】:

      \r\n 添加到正在发送的字符串中对许多客户来说效果很好。

      【讨论】:

        【解决方案4】:

        我使用带有"zero width non-joiner" unicode 字符的两个新行。
        => \n\n\u200C
        我在 Facebook、Skype、Webchat、Emulator 中成功测试了它。

        如果你想要空行,它也可以!

        【讨论】:

          【解决方案5】:

          3.5 版本更新 放入字符串\n\n 会创建一个新段落。像下面这样:

          "Paragraph1_text/n/nParagraph2_text" 结果

          Paragraph1_text
          Paragraph2_text
          

          旧版本

          我发现放两个空格 + 换行符可以解决问题(C#代码):

          return $"some text:  {Environment.NewLine}text from new paragraph" 
          

          或者

          return $"some text: \ntext from new paragraph" 
          

          结果是

          some text:
          text from new paragraph 
          

          这适用于:Microsoft Bot Framework 模拟器和 Skype 聊天

          【讨论】:

          • 似乎在最新版本中不起作用,还有其他想法吗?
          • 是的,好像他们修好了。我刚刚验证过:“段落 \n\n 新段落”确实有效,我会更新答案
          【解决方案6】:

          \n\u200C<br> 的组合有效。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2019-11-12
            • 2016-12-02
            • 1970-01-01
            • 2016-09-26
            • 2015-06-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多