Facebook Messenger API:如何在消息中打破行

时间:2016-06-29 13:06:23

标签: facebook facebook-graph-api facebook-messenger

在Facebook Messenger聊天中,我们可以通过按&#34; SHIFT + ENTER&#34;来打破一条线 那么如何通过Facebook Graph API(Messenger API)打破界线 我在一些答案中看到,图谱API接受<center></center>而不是<br>,其API的其他部分似乎接受\r\n

目前是否有任何方式发送换行符以及是否有文件记录?

9 个答案:

答案 0 :(得分:15)

结果Line break in Facebook status update via Graph API可能会给你你想要的东西:

使用\ u000A

对我而言,它解决了我与Facebook SendApi的Facebook Messenger Bot类似的问题。

答案 1 :(得分:10)

如果您使用的是php,则应使用chr(10)。其工作方式与'\n''<br>'类似。您也可以使用<center></center>。它为我工作。

答案 2 :(得分:3)

我不是100%确定你用什么语言来构建你的机器人,但是如果你使用PHP那么\ n需要用双引号字符串包装,例如

  $message = "Message \n with a line break";

使用单引号(')将无效。

如果使用PHP,更好的解决方案是使用PHP_EOL常量

您用于构建机器人的任何语言都可能有类似的怪癖

答案 3 :(得分:3)

我试图在用户触摸我的Messenger机器人中的Get Started之前显示欢迎文本中的换行符。我发现&#34; \ n&#34;只在移动版的Messenger中工作过。目前它还没有在网上工作。假设在某个时候会得到修复,因为Facebook在本周的博客文章中显示了换行符(2016年12月9日)https://messengerblog.com/bots/messenger-platform-1-2-link-ads-to-messenger-enhanced-mobile-websites-payments-and-more

答案 4 :(得分:2)

虽然没有记录,但我认为&#34; \ r \ n&#34;会工作。 图形api将json响应返回为&#34; \ r \ n&#34;对于有换行符的消息或帖子。

答案 5 :(得分:1)

使用特定语言的行分隔符。

Java System.lineseprator 

php PHP_EOL 

Python os.linesep 

Nodejs os.EOL 

当我们在字符串中使用特殊字符时,JSON转换将其理解为字符串的一部分。

答案 6 :(得分:1)

在Python \\n中,该行按预期中断。

答案 7 :(得分:1)

我必须使用\ n \ n才能使换行起作用。

例如

"Sorry, We don't have any information ragarding this.\n\nSay 'Hi' to startover"

在Facebook Messenger中显示以下内容

Sorry, We don't have any information ragarding this.
Say 'Hi' to startover

答案 8 :(得分:0)

转换&#34; \ n&#34;在你的文字中&#34; \ n&#34; =&GT;它工作...... 使用Php这是我的代码:(已测试)

$_text = str_replace(array("\r\n", "\r", "\n"), "\\n", $_text);