🌙

sendMessage

sendMessage

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

POST https://api.kodari.ru/msg/bot.php?method=sendMessage
Authorization: Bearer bot_ВАШ_ТОКЕН
Content-Type: application/json

Параметры

ПараметрТипОбяз.Описание
chat_idintID чата
textstringТекст сообщения, пустая строка недопустима
reply_to_message_idintID сообщения, на которое отвечает бот
reply_markupobjectInline-клавиатура
{
  "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Бот не участник чата, не админ канала, запрещены сообщения или ссылки в группе
429Too 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 просмотров