OnyxGram
Главная О проекте Скачать Bot API Ads FAQ Безопасность
Bot API
Документация История изменений Список методов Ошибки
История изменений27 августа 2026polls-members

Сборка polls-members

Опросы целиком, дата входа и бан до вступления

Боты создают опросы со всеми параметрами и узнают, кто как ответил.

polls-members 27 августа 2026, 18:38 +19−0
  • +poll_answer — кто и за какие варианты проголосовал. Приходит боту, который отправил опрос, и только если опрос неанонимный: в анонимном сервер не раскрывает голосующего никому, включая автора.
  • +poll — новое состояние опроса: счётчики voter_count по вариантам, total_voter_count, is_closed. Приходит после каждого голоса и при закрытии.
  • +correct_option_ids в sendPoll — массив индексов правильных ответов для викторины. Прежний correct_option_id продолжает работать.
  • +question_parse_mode и question_entities — разметка в тексте вопроса.
  • +text_parse_mode и text_entities — то же для каждого варианта, если options передан массивом объектов, а не строк.
  • +explanation_parse_mode и explanation_entities — разметка в пояснении к неверному ответу.
  • +open_period и close_date — опрос закрывается сам: через N секунд или к указанному времени. Одновременно можно задать только одно.
  • +allows_revoting — разрешить сменить голос. Викторина отказывает в этом всегда, флаг на неё не влияет.
  • +shuffle_options — показывать варианты каждому в своём порядке.
  • +allow_adding_options — участники дописывают свои варианты.
  • +hide_results_until_closes — счётчики скрыты до закрытия опроса.
  • +members_only — голосовать могут только участники чата.
  • +country_codes — ограничить голосование списком стран, коды в формате ISO 3166-1 alpha-2.
  • +joined_date в ChatMember — Unix-время вступления участника в чат. Раньше эту дату бот не видел вообще.
  • +subscription_until_date в ChatMember — до какого времени оплачена подписка, если участник вошёл по платной ссылке.
  • ~banChatMember и unbanChatMember принимают пользователя, которого в чате нет. Так работает и настоящий Telegram: бан вперёд — обычный приём модерации. restrictChatMember по-прежнему отвечает USER_NOT_PARTICIPANT — ограничивать права того, кто не вошёл, нечему.
  • ~getChatMember на постороннего человека отдаёт статус left, а не ошибку. Проверять членство теперь можно одним запросом, без обработки исключения.
  • ~chat_member и message_reaction больше не приходят, если allowed_updates не задан — их нужно перечислить по имени. Раньше сервер отдавал всё подряд, и бот, написанный до появления этих типов, получал незнакомые ему обновления.

Опрос-капча собирается из этого набора так: type=quiz, is_anonymous=false, allows_revoting=false, open_period под таймаут. Неанонимность нужна, чтобы вообще приходил poll_answer; викторина не даёт переголосовать, поэтому неверный ответ не отыграть назад. Ограничённый участник голосовать может — мут не мешает пройти проверку.

В poll_answer идентификатор опроса тот же, что sendPoll вернул в poll.id, а option_ids — индексы в том порядке, в котором варианты были переданы, даже при shuffle_options. Рядом лежит option_persistent_ids: эти идентификаторы не сдвигаются, если в опрос дописали варианты.

Правильные ответы викторины сервер не раскрывает до того, как человек проголосовал или опрос закрылся. В poll у неотвеченной викторины correct_option_id и explanation отсутствуют — это не потеря данных.

Минимум вариантов в опросе — один, максимум open_period поднят до 2 628 000 секунд (месяц). Продолжает сборку chatmember, которая принесла сами обновления о членстве.

Затронутые методы
sendPollstopPollgetUpdatesgetChatMemberbanChatMemberunbanChatMember
Предыдущая сборкаmethods-reference Следующая сборкаpoll-form-arrays
OnyxGram is not affiliated with Telegram FZ-LLC.
Privacy Policy Terms of Service О проекте Bot API FAQ Безопасность