Дата последнего изменения: 21.10.2024
Сообщение можно форматировать, добавлять полужирный шрифт, перечеркивать и вставлять цитаты. В уроке приводятся команды пользователя, внешний вид и REST API для форматирования сообщений чата.
Если в чат отправить данное сообщение:
[B]полужирный[/B] текст [U]подчеркнутый[/U] текст [I]наклонный текст[/I] текст [S]перечеркнутый[/S] текст
То оно отобразится таким образом:
Форматирование с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "[B]полужирный[/B] текст [U]подчеркнутый[/U] текст [I]наклонный текст[/I] текст [S]перечеркнутый[/S] текст", ), $_REQUEST["auth"]);
Перенос строки осуществляется добавлением в текст символов:
[BR] # BR # (без пробелов) \n
Любой из этих кодов, сформирует перенос строки:
Перенос строки с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "Первая строка[BR]Вторая строка", ), $_REQUEST["auth"]);
Цитирование текста можно сделать двумя способами:
>>первая строка цитаты >>вторая строка цитаты ------------------------------------------------------ Дмитрий Власов [08.04.2016 13:06:49] Привет всем ------------------------------------------------------
Вид цитирования будет немного отличаться - во втором случае будет указан автор и время написания цитаты:
Цитирование с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => ">>первая строка цитаты >>вторая строка цитаты ------------------------------------------------------ Дмитрий Власов [08.04.2016 13:06:49] Привет всем ------------------------------------------------------", ), $_REQUEST["auth"]);
Любая ссылка в тексте автоматически станет кликабельной. Если по адресу ссылки есть «богатое форматирование», то ссылка автоматически его подхватит:
Ссылки с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "http://bitrix24.ru", ), $_REQUEST["auth"]);
Если в одном сообщении несколько ссылок, то «богатое форматирование» применится только к первой ссылке.
'URL_PREVIEW' => 'N'
при создании сообщения:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "http://bitrix24.ru", 'URL_PREVIEW' => 'N' ), $_REQUEST["auth"]);
Если вы отправите ссылку на картинку https://files.shelenkov.com/bitrix/images/mantis.jpg (окончание ссылки должно быть .png, .jpg, .gif), то она автоматически преобразуется в изображение:
Вы можете сформировать ссылку самостоятельно через код URL - [URL=http://bitrix24.ru]Ссылка на Битрикс24[/URL]
:
Формирование ссылки с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "[URL=http://bitrix24.ru]Ссылка на Битрикс24[/URL]", ), $_REQUEST["auth"]);
По аналогии с кодом URL, есть специальные коды на ссылки внутри мессенджера.
[USER=5]Марта[/USER]
- ссылка на пользователя.[CALL=84012334455]позвонить[/CALL]
- кнопка для осуществления звонка через Битрикс24.[CHAT=12]ссылка на чат[/CHAT]
- ссылка на чат.Форматирование специальных кодов с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "[USER=5]Марта[/USER] [CALL=84012334455]позвонить[/CALL] [CHAT=12]ссылка на чат[/CHAT]", ), $_REQUEST["auth"]);
Чтобы сделать отступы в сообщении, укажите символ табуляции:
Отступы с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => " Отступ Отступ Отступ", ), $_REQUEST["auth"]);
Если вы хотите, чтобы по клику на ссылку пользователь отправил какой-то текст, используйте тег SEND:
[send=текст]название кнопки[/send] - мгновенная отправка текста боту.
С помощью такого тега, вы сможете заставить пользователя отправить команду вашего бота, но существует более предпочтительный способ - Набираемые клавиатуры
Активные ссылки (команды) с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "[send=текст]название кнопки[/send] - мгновенная отправка текста боту", ), $_REQUEST["auth"]);
Если необходимо, чтобы пользователь что-то дописал к команде, используйте код PUT:
[put=/search]Введите строку поиска[/put]
С помощью данного тега можно дать возможность пользователю указать дополнительные данные для вашей команды вместо того, чтобы пользователь набирал команду вручную. После клика на такую ссылку, текст указанный в теге PUT будет подставлен в поле для ввода и пользователю достаточно будет дописать необходимые данные и нажать кнопку отправить (но существует более предпочтительный способ - Набираемые клавиатуры):
Отправка команды бота с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "[put=/search]Введите строку поиска[/put]", ), $_REQUEST["auth"]);
Добавление своей иконки в сообщение производится отправкой кода:
[icon=http://files.shelenkov.com/images/unicorn.png size=30 title=Единорог]
Иконка отобразится таким образом:
Также после этого иконка будет добавлена в набор смайлов Бизнес-чата. Удалить иконку из набора можно, нажав правой кнопкой мыши на иконке в наборе и выбрав Удалить.
Обязательным свойством является указание пути до картинки (без пробелов).
Доступны дополнительные атрибуты:
Для наилучшего отображения на всех устройствах, размер иконки должен быть в два раза больше, чем указан в параметрах отображения.
Добавление своей иконки с помощью rest-api:
restCommand('imbot.message.add', Array( "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'], "MESSAGE" => "[icon=http://files.shelenkov.com/images/unicorn.png size=30 title=Единорог]", ), $_REQUEST["auth"]);