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

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Комментарий: Восстановить из v. 14

...

iconnone
titleОглавление
typegeneric

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

...

ОТПРАВКА СООБЩЕНИЯ

Метод: GET/POST

Authorization: No Auth 

URL: https://api.telegram.org/bot{token}/sendMessage?chat_id={chat_id}&parse_mode=Markdown&text={text}&message_thread_id={topic_id}

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

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


Блок кода
languagephppy
themeDJango
firstline1
titleCURLInline клавиатура
linenumberstrue
{
    curl --location --globoff --request GET 'https://api.telegram.org/bot{token}/sendMessage?chat_id={chat_id}&text={text}' \
--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"
                    }
                }
            ]
        ]
    }
}'

Описание тела запроса (inline клавиатура):

ПолеОписание
reply_markupобъект "клавиатуры"
reply_markup.inline_keyboardИнлайн клавиатура (под сообщением)
reply_markup.inline_keyboard.textТекст кнопки
reply_markup.inline_keyboard.urlссылка для перехода при нажатии кнопки
reply_markup.inline_keyboard.web_appобъект веб-аппа
reply_markup.inline_keyboard.web_app.urlссылка на веб-апп


Блок кода
languagephppy
themeDJango
firstline1
titleCURLreply клавиатура
collapselinenumberstrue
curl --location --globoff --request GET 'https://api.telegram.org/bot{token}/sendMessage?chat_id={chat_id}&text={text}' \
--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
                }
            ]
        ]
    }
}'

Описание тела запроса (reply клавиатура):

...

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

chat_id

да

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

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

parse_modeнет

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

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

textда

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

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

%0A

Например, следующий текст:

Тест1

Тест2

Тест3

Можно передать следующим образом: Тест1%0AТест2%0AТест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Тест"
    }
}

...

ПолеОбязательностьОписание
okдаРезультат запроса. При успешном запросе всегда возвращает "true"
resultдаМассив результата ответа
message_idдаИдентификатор сообщения
fromдаМассив информации отправителя
idдаИдентификатор отправителя
is_botдаПризнак того, бот ли отправитель
first_nameдаИмя отправителя
usernameдаУникальный username отправителя
chatдаМассив информации чата, куда отправлено сообщение
idдаИдентификатор чата
titleдаНазвание чата
typeдаТип чата
dateдаДата отправки сообщения
textдаТекст сообщения

...

РЕДАКТИРОВАНИЕ СООБЩЕНИЯ


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

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

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

Метод: GET/POST

Authorization: No Auth 

URL: https://api.telegram.org/bot{token}/editMessageText?chat_id={chat_id}&parse_mode=Markdown&text={text}&message_thread_id={topic_id}&message_id={message_id}