pub struct SendPoll {Show 34 fields
pub chat_id: Recipient,
pub question: String,
pub options: Vec<InputPollOption>,
pub business_connection_id: Option<BusinessConnectionId>,
pub message_thread_id: Option<ThreadId>,
pub question_parse_mode: Option<ParseMode>,
pub question_entities: Option<Vec<MessageEntity>>,
pub is_anonymous: Option<bool>,
pub type_: Option<PollType>,
pub allows_multiple_answers: Option<bool>,
pub allows_revoting: Option<bool>,
pub shuffle_options: Option<bool>,
pub allow_adding_options: Option<bool>,
pub hide_results_until_closes: Option<bool>,
pub members_only: Option<bool>,
pub country_codes: Option<Vec<String>>,
pub correct_option_ids: Option<Vec<u8>>,
pub explanation: Option<String>,
pub explanation_parse_mode: Option<ParseMode>,
pub explanation_entities: Option<Vec<MessageEntity>>,
pub explanation_media: Option<InputPollMedia>,
pub open_period: Option<u32>,
pub close_date: Option<DateTime<Utc>>,
pub is_closed: Option<bool>,
pub description: Option<String>,
pub description_parse_mode: Option<ParseMode>,
pub description_entities: Option<Vec<MessageEntity>>,
pub media: Option<InputPollMedia>,
pub disable_notification: Option<bool>,
pub protect_content: Option<bool>,
pub allow_paid_broadcast: Option<bool>,
pub message_effect_id: Option<EffectId>,
pub reply_parameters: Option<ReplyParameters>,
pub reply_markup: Option<ReplyMarkup>,
}Expand description
Use this method to send a native poll. On success, the sent Message is returned.
Fields§
§chat_id: RecipientUnique identifier for the target chat or username of the target channel (in the format @channelusername)
question: StringPoll question, 1-300 characters
options: Vec<InputPollOption>A JSON-serialized list of 2-10 answer options
business_connection_id: Option<BusinessConnectionId>Unique identifier of the business connection on behalf of which the message will be sent
message_thread_id: Option<ThreadId>Unique identifier for the target message thread (topic) of the forum; for forum supergroups only
question_parse_mode: Option<ParseMode>Mode for parsing entities in the question. See formatting options for more details. Currently, only custom emoji entities are allowed
question_entities: Option<Vec<MessageEntity>>A JSON-serialized list of special entities that appear in the poll question. It can be specified instead of question_parse_mode
is_anonymous: Option<bool>True, if the poll needs to be anonymous, defaults to True
type_: Option<PollType>Poll type, “quiz” or “regular”, defaults to “regular”
allows_multiple_answers: Option<bool>True, if the poll allows multiple answers, ignored for polls in quiz mode, defaults to False
allows_revoting: Option<bool>True, if the poll allows to change the chosen answer options, defaults to False
shuffle_options: Option<bool>Pass True, if the options should be shuffled, defaults to False
allow_adding_options: Option<bool>Pass True, if other users should be allowed to add options to the poll, defaults to False
hide_results_until_closes: Option<bool>Pass True, if the poll results should be hidden until the poll is closed, defaults to False
members_only: Option<bool>Pass True, if the poll is not available for users, that are not in the chat; for supergroups only
country_codes: Option<Vec<String>>A JSON-serialized list of countries in the [ISO 3166-1 alpha-2] format for which the poll can be voted in by regular users
correct_option_ids: Option<Vec<u8>>0-based identifiers of the correct answer options, required for polls in quiz mode
explanation: Option<String>Text that is shown when a user chooses an incorrect answer or taps on the lamp icon in a quiz-style poll, 0-200 characters with at most 2 line feeds after entities parsing
explanation_parse_mode: Option<ParseMode>Mode for parsing entities in the message text. See formatting options for more details.
explanation_entities: Option<Vec<MessageEntity>>List of special entities that appear in the poll explanation, which can be specified instead of parse_mode
explanation_media: Option<InputPollMedia>A JSON-serialized object for the media in the explanation to be sent
open_period: Option<u32>Amount of time in seconds the poll will be active after creation, 5-2628000. Can’t be used together with close_date.
close_date: Option<DateTime<Utc>>Point in time (Unix timestamp) when the poll will be automatically closed. Must be at least 5 and no more than 2628000 seconds in the future. Can’t be used together with open_period.
is_closed: Option<bool>Pass True, if the poll needs to be immediately closed. This can be useful for poll preview.
description: Option<String>Description of the poll, 0-1024 characters after entities parsing
description_parse_mode: Option<ParseMode>Mode for parsing entities in the poll description. See formatting options for more details.
description_entities: Option<Vec<MessageEntity>>List of special entities that appear in the poll description, which can be specified instead of description_parse_mode
media: Option<InputPollMedia>A JSON-serialized object for the media added to the poll description
disable_notification: Option<bool>Sends the message silently. Users will receive a notification with no sound.
protect_content: Option<bool>Protects the contents of sent messages from forwarding and saving
allow_paid_broadcast: Option<bool>Pass true to allow up to 1000 messages per second, ignoring broadcasting limits for a fee of 0.1 Telegram Stars per message. The relevant Stars will be withdrawn from the bot’s balance
message_effect_id: Option<EffectId>Unique identifier of the message effect to be added to the message; for private chats only
reply_parameters: Option<ReplyParameters>Description of the message to reply to
reply_markup: Option<ReplyMarkup>Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove a reply keyboard or to force a reply from the user. Not supported for messages sent on behalf of a business account.
Implementations§
Trait Implementations§
Source§impl Payload for SendPoll
impl Payload for SendPoll
Source§fn timeout_hint(&self) -> Option<Duration>
fn timeout_hint(&self) -> Option<Duration>
GetUpdates with
big timeout), the minimum timeout that should be used.impl StructuralPartialEq for SendPoll
Auto Trait Implementations§
impl !Freeze for SendPoll
impl !RefUnwindSafe for SendPoll
impl !UnwindSafe for SendPoll
impl Forget for SendPoll
impl Send for SendPoll
impl Sync for SendPoll
impl Unpin for SendPoll
impl UnsafeUnpin for SendPoll
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Erasable for T
impl<T> Erasable for T
Source§impl<P> HasPayload for Pwhere
P: Payload,
impl<P> HasPayload for Pwhere
P: Payload,
Source§fn payload_mut(&mut self) -> &mut <P as HasPayload>::Payload
fn payload_mut(&mut self) -> &mut <P as HasPayload>::Payload
Source§fn payload_ref(&self) -> &<P as HasPayload>::Payload
fn payload_ref(&self) -> &<P as HasPayload>::Payload
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<P> SendPollSetters for Pwhere
P: HasPayload<Payload = SendPoll>,
impl<P> SendPollSetters for Pwhere
P: HasPayload<Payload = SendPoll>,
Source§fn options<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = InputPollOption>,
fn options<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = InputPollOption>,
options field.Source§fn business_connection_id(self, value: BusinessConnectionId) -> Self
fn business_connection_id(self, value: BusinessConnectionId) -> Self
business_connection_id field.Source§fn message_thread_id(self, value: ThreadId) -> Self
fn message_thread_id(self, value: ThreadId) -> Self
message_thread_id field.Source§fn question_parse_mode(self, value: ParseMode) -> Self
fn question_parse_mode(self, value: ParseMode) -> Self
question_parse_mode field.Source§fn question_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = MessageEntity>,
fn question_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = MessageEntity>,
question_entities field.Source§fn is_anonymous(self, value: bool) -> Self
fn is_anonymous(self, value: bool) -> Self
is_anonymous field.Source§fn allows_multiple_answers(self, value: bool) -> Self
fn allows_multiple_answers(self, value: bool) -> Self
allows_multiple_answers field.Source§fn allows_revoting(self, value: bool) -> Self
fn allows_revoting(self, value: bool) -> Self
allows_revoting field.Source§fn shuffle_options(self, value: bool) -> Self
fn shuffle_options(self, value: bool) -> Self
shuffle_options field.Source§fn allow_adding_options(self, value: bool) -> Self
fn allow_adding_options(self, value: bool) -> Self
allow_adding_options field.Source§fn hide_results_until_closes(self, value: bool) -> Self
fn hide_results_until_closes(self, value: bool) -> Self
hide_results_until_closes field.Source§fn members_only(self, value: bool) -> Self
fn members_only(self, value: bool) -> Self
members_only field.Source§fn country_codes<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = String>,
fn country_codes<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = String>,
country_codes field.Source§fn correct_option_ids<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = u8>,
fn correct_option_ids<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = u8>,
correct_option_ids field.Source§fn explanation<T>(self, value: T) -> Self
fn explanation<T>(self, value: T) -> Self
explanation field.Source§fn explanation_parse_mode(self, value: ParseMode) -> Self
fn explanation_parse_mode(self, value: ParseMode) -> Self
explanation_parse_mode field.Source§fn explanation_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = MessageEntity>,
fn explanation_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = MessageEntity>,
explanation_entities field.Source§fn explanation_media(self, value: InputPollMedia) -> Self
fn explanation_media(self, value: InputPollMedia) -> Self
explanation_media field.Source§fn open_period(self, value: u32) -> Self
fn open_period(self, value: u32) -> Self
open_period field.Source§fn close_date<T>(self, value: T) -> Self
fn close_date<T>(self, value: T) -> Self
close_date field.Source§fn description<T>(self, value: T) -> Self
fn description<T>(self, value: T) -> Self
description field.Source§fn description_parse_mode(self, value: ParseMode) -> Self
fn description_parse_mode(self, value: ParseMode) -> Self
description_parse_mode field.Source§fn description_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = MessageEntity>,
fn description_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = MessageEntity>,
description_entities field.Source§fn media(self, value: InputPollMedia) -> Self
fn media(self, value: InputPollMedia) -> Self
media field.Source§fn disable_notification(self, value: bool) -> Self
fn disable_notification(self, value: bool) -> Self
disable_notification field.Source§fn protect_content(self, value: bool) -> Self
fn protect_content(self, value: bool) -> Self
protect_content field.Source§fn allow_paid_broadcast(self, value: bool) -> Self
fn allow_paid_broadcast(self, value: bool) -> Self
allow_paid_broadcast field.Source§fn message_effect_id(self, value: EffectId) -> Self
fn message_effect_id(self, value: EffectId) -> Self
message_effect_id field.Source§fn reply_parameters(self, value: ReplyParameters) -> Self
fn reply_parameters(self, value: ReplyParameters) -> Self
reply_parameters field.Source§fn reply_markup<T>(self, value: T) -> Selfwhere
T: Into<ReplyMarkup>,
fn reply_markup<T>(self, value: T) -> Selfwhere
T: Into<ReplyMarkup>,
reply_markup field.