Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Message Box
iconnone
titleОглавление
typegeneric

Оглавление
maxLevel1
outlinetrue

Отправка сообщения

...

Примечание
titleВАЖНО

Вместо {token} нужно указать токен БОТа в телеграме, полученный от https://t.me/BotFather

Блок кода
languagephp
themeDJango
titleCURL
curl --location --globoff --request GET 'https://api.telegram.org/bot{token}/sendMessage?chat_id={chat_id}&text={text}&message_thread_id={topic_id}' \
--header 'Content-Type: application/json' \
--data '{
    "reply_markup": {
        "inline_keyboard": [
            [
                {
                    "text": "Ссылка на сайт",
                    "url": "https://twin24.ai"
                },
                {
                    "text": "WebApp",
                    "web_app": {
                        "url": "https://twin24.ai"
                    }
                }
            ],
            [
                {
                    "text": "Ссылка на сайт2",
                    "url": "https://twin24.ai"
                },
                {
                    "text": "WebApp2",
                    "web_app": {
                        "url": "https://twin24.ai"
                    }
                }
            ]
        ]
    }
}'

...

Блок кода
languagephp
themeDJango
titleCURL
collapsetrue
curl --location --globoff --request GET 'https://api.telegram.org/bot{token}/sendMessage?chat_id={chat_id}&text={text}&message_thread_id={topic_id}' \
--header 'Content-Type: application/json' \
--data '{
    "reply_markup": {
        "one_time_keyboard": true,
        "input_field_placeholder": "выберите пункт",
        "resize_keyboard": true,
        "keyboard": [
            [
                {
                    "text": "Просто кнопка-ответ"
                },
                {
                    "text": "WebApp",
                    "web_app": {
                        "url": "https://twin24.ai"
                    }
                }
            ],
            [
                {
                    "text": "Запрос контакта",
                    "request_contact": true
                },
                {
                    "text": "Запрос локации",
                    "request_location": true
                }
            ]
        ]
    }
}'

...

ПараметрОбязательностьОписание

chat_id

да

Идентификатор чата, в который будет отправлено сообщение. 

*Узнать идентификатор чата можно, например, через https://t.me/myidbot

parse_modeнет

Режим парсинга текста. Может быть Markdown или HTML. Подробнее можно прочитать здесь 

*Используется для форматирования текста (жирный, с наклоном и тд.)

textда

Текст, который отправит бот. 

*Для переноса строки необходимо использовать специальную последовательность символов: %0A

Например, текст:

Тест1

Тест2

Тест3

Можно передать следующим образом: Тест1%0AТест2%0AТест3

message_thread_id

нет

Идентификатор "темы" для отправки сообщения в тему группы, в которой включены "темы"


Блок кода
languagepy
themeDJango
firstline1
titleУспешный ответ в формате Json
linenumberstrue
{
    "ok": true,
    "result": {
        "message_id": 1902, 
        "from": {
            "id": 5351196660,
            "is_bot": true,
            "first_name": "Тестовый бот",
            "username": "test_bot"
        },
        "chat": {
            "id": -1001586696720,
            "title": "Тестовая группа",
            "type": "supergroup"
        },
        "date": 1663837925,
        "text": "Тест\nТест"
    }
}

...

Примечание
titleВАЖНО

Метод редактирования сообщения аналогичный методу отправки сообщения с несколькими особенностям:

  1. Новый обязательный параметр message_id, который принимает идентификатор сообщения для редактирования
  2. В ответе появляется поле edit_date, в которое записывается дата изменения сообщения
  3. НЕВОЗМОЖНО ОТРЕДАКТИРОВАТЬ СООБЩЕНИЕ С REPLY КЛАВИАТУРОЙ (с инлайн все также можно)
  4. Если передать тот же текст при редактировании, что и в оригинале, то вернется ошибка 400 (для редактирования только инлайн клавиатуры без редактирования текста нужно использовать метод editMessageReplyMarkup без параметра text)

...