2016-06-29 25 views
15

W czacie na Facebooku można przerwać linię, naciskając "SHIFT + ENTER".
Jak przełamać linię za pomocą interfejsu Facebook Graph API (Messenger API).
Widziałem w kilku odpowiedziach, że Graph API akceptuje <center></center> zamiast <br>, a niektóre inne części ich API zdają się akceptować \r\n.Facebook Messenger API: jak przerwać linię w wiadomości

Czy jest obecnie jakiś sposób wysłania linii i czy jest tam gdzie to dokumentuje?

+0

Ponieważ 'text' nieruchomość ma 320 Limit znaków i tak nie byłbym zaskoczony, gdyby nie zezwalał na publikowanie tekstu z podziałem wierszy. Może raczej podzielisz tekst na końcu linii, a potem wyślesz je jako pojedyncze wiadomości? – CBroe

Odpowiedz

9

Jeśli używasz php, powinieneś używać chr(10). Działa jak '\n' lub '<br>'. Możesz również użyć <center></center>. Działa dla mnie.

+0

te rzeczy nie działa dla mnie, ale moja druga odpowiedź działa – tyrex

+0

@ FMan .. k kochanie .. Ale działa dobrze dla mnie .. Jeśli twoja odpowiedź działa dobrze dla ciebie .. a potem ciesz się kodem ... jeśli chcesz więcej pomocy ode mnie .. proszę podaj mi swój kod. –

+1

Idealnie powinien używać PHP_EOL do tego – TommyBs

2

Chociaż nie jest to udokumentowane, ale przypuszczam, że "\ r \ n" działałoby. Aplikacja Graph api zwraca odpowiedź json jako "\ r \ n" dla wiadomości lub postów zawierających podział wiersza.

+0

nie działa dla mnie, ale moja powyższa odpowiedź działa – tyrex

3

nie jestem 100% pewien, jakiego języka używasz do budowy bota, ale jeśli używasz PHP następnie \ n musi być opakowane w podwójnych strun cytując np

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

za pomocą pojedynczego Cytaty (') nie będą działać.

Choć lepszym rozwiązaniem jeśli PHP byłoby użyć PHP_EOL stałą

Niezależnie od języka, którego używasz do budowania robotów mogą mieć podobne dziwactwa

3

Próbowałam się przełamać wiersz w tekst powitalny, który pojawia się, zanim użytkownicy dotkną przycisku Rozpocznij w moim komputerze Messenger Messenger. Znalazłem, że "\ n" działało, ale TYLKO w mobilnej wersji Messengera. W tej chwili nie działa on w sieci. Zakładając, że zostanie to naprawione w pewnym momencie, ponieważ Facebook pokazuje podział wiersza w swoim poście na blogu w tym tygodniu (9.12.2016) https://messengerblog.com/bots/messenger-platform-1-2-link-ads-to-messenger-enhanced-mobile-websites-payments-and-more

1

Używaj specyficznych dla języka separatorów linii.

Java System.lineseprator 

php PHP_EOL 

Python os.linesep 

Nodejs os.EOL 

Kiedy używamy znaku specjalnego w łańcuchu, to konwersja JSON rozumie go jako część łańcucha znaków.

0

Convert "\ n" w swoim tekście "\ n" => to działa ... PHP jest to mój kod: (testowane)

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