Vote in a poll
Starting from layer 159, the vote will be sent from the peer specified using messages.saveDefaultSendAs.
Before voting, clients should check that the user is actually allowed to vote: voting is not possible if the poll is closed, if it is subscriber-only » and the user is not an eligible subscriber, or if it is country-restricted » and the user's phone_country_iso2 » is not in the poll's allowed country list. See vote restrictions » for the full list of conditions.
updatesTooLong#e317af7e = Updates;
updateShortMessage#914fbf11 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true id:int user_id:int message:string pts:int pts_count:int date:int fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?int reply_to_msg_id:flags.3?int entities:flags.7?Vector<MessageEntity> = Updates;
updateShortChatMessage#16812688 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true id:int from_id:int chat_id:int message:string pts:int pts_count:int date:int fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?int reply_to_msg_id:flags.3?int entities:flags.7?Vector<MessageEntity> = Updates;
updateShort#78d4dec1 update:Update date:int = Updates;
updatesCombined#725b04c3 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq_start:int seq:int = Updates;
updates#74ae4240 updates:Vector<Update> users:Vector<User> chats:Vector<Chat> date:int seq:int = Updates;
updateShortSentMessage#11f1331c flags:# out:flags.1?true id:int pts:int pts_count:int date:int media:flags.9?MessageMedia entities:flags.7?Vector<MessageEntity> = Updates;
---functions---
messages.sendVote#10ea6184 peer:InputPeer msg_id:int options:Vector<bytes> = Updates;
| Name | Type | Description |
|---|---|---|
| peer | InputPeer | The chat where the poll was sent |
| msg_id | int | The message ID of the poll |
| options | Vector<bytes> | The options that were chosen |
| Code | Type | Description |
|---|---|---|
| 400 | CHANNEL_INVALID | The provided channel is invalid. |
| 400 | CHANNEL_PRIVATE | You haven't joined this channel/supergroup. |
| 400 | MESSAGE_ID_INVALID | The provided message id is invalid. |
| 400 | MESSAGE_POLL_CLOSED | Poll closed. |
| 400 | MSG_ID_INVALID | Invalid message ID provided. |
| 400 | OPTIONS_TOO_MUCH | Too many options provided. |
| 400 | OPTION_INVALID | Invalid option selected. |
| 400 | PEER_ID_INVALID | The provided peer id is invalid. |
| 406 | POLL_COUNTRY_RESTRICTED | Users from the current user's country cannot vote in this country-restricted poll ». |
| 406 | POLL_MEMBER_RESTRICTED | Only channel subscribers can vote in this poll. |
| 400 | REVOTE_NOT_ALLOWED | You cannot change your vote. |
Poll
Change the default peer that should be used when sending messages, reactions, poll votes to a specific group
Telegram allows sending polls and quizzes, that can be voted on by thousands, if not millions of users in chats and channels.
The MTProto API has multiple configuration parameters that can be fetched with the appropriate methods.