Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

Версия 1 Следующий »

Часто необходимо чтобы у клиента отображался ряд готовых ответов на сообщение (примерно так), и клиент не писал много текста, так как бот не всегда сможет это обработать.


Запрос к серверу

шаг 1. Создаем три блока вопроса

шаг 2. В каждой исходящей стрелке из блоков вопроса сохраняем ответ в переменные соответственно: botId, chatId, text

chatId может быть как айди чата, которое достал https://t.me/myidbot, так и {messengerUserId}



шаг 3. Создаем блок арифметики с произвольным типом

шаг 4. Сам запрос выглядит так

https://api.telegram.org/botАЙДИВАШЕГОБОТАТЕЛЕГРАМ/sendMessage?chat_id=АЙДИЧАТА8&parse_mode=HTML&text=Привет

Но так как в сценарии запрос будет отправлен через блок арифметики воспользуемся статьей

Как сделать запрос на сервер с помощью BPL-операций, чтобы сформировать универсальную ссылку с переменными

Важно

bpl функции не работают в редакторе. Тестировать сценарий нужно в чате либо в мессенджерах


Фрагмент кода на bpl
$url = str.join(["https://api.telegram.org/bot", $botId, "/sendMessage?chat_id=", $chatId, "&parse_mode=HTML&text=", $text], "")
//Вставляем эту строчку в блок арифметики


шаг 5. Чтобы включить клавиатуру у пользователя нужно создать следующее тело запроса:

Тело
{
    "reply_markup": {
        "keyboard": [
            [
                "😁",
                "Ты кто?😅",
                "Привет"
            ],
            [
                "Ой😊", 
                "М?", 
                "😜"
            ]
        ],
        "resize_keyboard": true,
        "one_time_keyboard": true
    }
}
//Для блока арифметики это тело нужно форматировать в одну строку следующим образом
$json = {"reply_markup": {"keyboard": [["😁","Ты кто?😅","Привет"],["Ой😊","М?", "😜"]],"resize_keyboard": true,"one_time_keyboard": true}} 
//Вставляем эту строчку в блок арифметики следующей

где

  • keyboard это массив строк в клавиатуре
  • one_time_keyboard это параметр для того чтобы клавиатура закрылась после ответа и не мешала (по умолчанию false, то есть закрываться не будет)
  • resize_keyboard это параметр для красивого размера кнопок (по умолчанию false), если не включить будет выглядеть так

Смайлики можно скопировать тут



шаг 6.  Вставляем эту строчку в блок арифметики последней 

$response = http.request($url, "POST", $json, {"accept": "application/json", "Content-Type": "application/json"})


Итоговый сценарий выглядит следующим образом:

Важно

bpl функции не работают в редакторе. Тестировать сценарий нужно в чате либо в мессенджерах

Результат:


  • Нет меток