it-swarm.com.ru

API Facebook Messenger: как разбить строку в сообщении

В чате Facebook Messenger мы можем разбить строку, нажав «SHIFT + ENTER».
Итак, как разбить строку с помощью Facebook Graph API (Messenger API).
В нескольких ответах я видел, что Graph API принимает <center></center> вместо <br>, а некоторые другие части их API, похоже, принимают \r\n

Есть ли в настоящее время какой-либо способ отправки разрыва строки, и если есть, где это задокументировано?

17
voxter

Если вы используете php, вы должны использовать chr(10). Он работает как '\n' или '<br>'. Также вы можете использовать <center></center>. Это работает для меня.

10
Kumar Rakesh

Получается разрыв строки в обновлении статуса Facebook через Graph API может дать вам то, что вы ищете:

Используйте\u000A

Для меня это решило мою похожую проблему с Facebook SendApi для бота Facebook Messenger. 

15
tyrex

Я не уверен на 100%, какой язык вы используете для создания своего бота, но если вы используете PHP, тогда\n нужно заключить в строки двойных кавычек, например

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

использование одинарных кавычек (') не сработает.

Хотя лучшим решением при использовании PHP было бы использование константы PHP_EOL

Какой бы язык вы ни использовали для создания своего бота, он может иметь схожие особенности

3
TommyBs

Я пытался разорвать строку в тексте приветствия, который появляется, прежде чем пользователи коснутся Начать работу в моем боте Messenger. Я обнаружил, что "\ n" работает, но ТОЛЬКО в мобильной версии Messenger. В данный момент это не работает в сети. Предполагая, что это будет исправлено в какой-то момент, потому что Facebook показывает разрывы строк в своем блоге на этой неделе (9/12/2016) https://messengerblog.com/bots/messenger-platform-1-2-link-ads- на-мессенджер-улучшенные-мобильные-сайты-платежи и многое другое

3
ScottWasserman

Хотя это не задокументировано, но я полагаю, что "\ r\n" будет работать . Graph api возвращает ответ json как "\ r\n" для сообщений или сообщений, имеющих разрыв строки.

2
DhruvPathak

Мне пришлось использовать\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
1
Patrick Sierak

В Python \\n разрывает строку, как и ожидалось.

1
Marcin Rapacz

Используйте языковые разделители строк.

Java System.lineseprator 

php PHP_EOL 

Python os.linesep 

Nodejs os.EOL 

Когда мы используем специальный символ в строке, преобразование JSON понимает его как часть строки. 

1
vinay mavi

Преобразуйте "\ n" в вашем тексте в "\ n" => это работает ... С Php это мой код: (проверено) 

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