sendMessage
sendMessage
Отправляет текстовое сообщение в чат.
POST https://api.kodari.ru/msg/bot.php?method=sendMessage
Authorization: Bearer bot_ВАШ_ТОКЕН
Content-Type: application/json
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
chat_id | int | ✓ | ID чата |
text | string | ✓ | Текст сообщения, пустая строка недопустима |
reply_to_message_id | int | — | ID сообщения, на которое отвечает бот |
reply_markup | object | — | Inline-клавиатура |
{
"chat_id": 123,
"text": "Привет!",
"reply_to_message_id": 456,
"reply_markup": {
"inline_keyboard": [
[ { "text": "Да", "callback_data": "yes" }, { "text": "Нет", "callback_data": "no" } ]
]
}
}
Ответ
{
"ok": true,
"result": {
"message_id": 789,
"from": { "id": 42, "is_bot": true, "first_name": "Kodari Helper", "username": "kodarihelperbot" },
"chat": { "id": 123, "type": "private" },
"date": 1714728000,
"text": "Привет!",
"reply_markup": { "inline_keyboard": [ ] }
}
}
Сообщение сразу доставляется участникам чата по WebSocket и отправляется push-уведомление тем, кто не находится в чате.
Ошибки
| Код | Описание |
|---|---|
| 400 | Не передан chat_id или text |
| 403 | Бот не участник чата, не админ канала, запрещены сообщения или ссылки в группе |
| 429 | Too Many Requests — больше 30 сообщений в минуту, либо медленный режим |
pykodaribot
msg = await bot.send_message(chat_id, "Привет!")
С клавиатурой:
from pykodaribot import InlineKeyboardMarkup, InlineKeyboardButton
kb = InlineKeyboardMarkup(inline_keyboard=[[
InlineKeyboardButton(text="Да", callback_data="yes"),
InlineKeyboardButton(text="Нет", callback_data="no"),
]])
await bot.send_message(chat_id, "Выберите:", reply_markup=kb)
Из хендлера:
@dp.message(filters.command("start"))
async def start(msg):
await msg.answer("Привет!") # в тот же чат
await msg.reply("И ещё раз!") # с цитированием
68 просмотров