Enum telbot_types::bot::BotCommandScope[][src]

pub enum BotCommandScope {
    Default,
    AllPrivateChats,
    AllGroupChats,
    AllChatAdministrators,
    Chat {
        chat_id: ChatId,
    },
    ChatAdministrators {
        chat_id: ChatId,
    },
    ChatMember {
        chat_id: ChatId,
        user_id: i64,
    },
}
Expand description

This object represents the scope to which bot commands are applied.

Currently, the following 7 scopes are supported:

  • BotCommandScopeDefault
  • BotCommandScopeAllPrivateChats
  • BotCommandScopeAllGroupChats
  • BotCommandScopeAllChatAdministrators
  • BotCommandScopeChat
  • BotCommandScopeChatAdministrators
  • BotCommandScopeChatMember

Determining list of commands

The following algorithm is used to determine the list of commands for a particular user viewing the bot menu. The first list of commands which is set is returned:

Commands in the chat with the bot

  • botCommandScopeChat + language_code
  • botCommandScopeChat
  • botCommandScopeAllPrivateChats + language_code
  • botCommandScopeAllPrivateChats
  • botCommandScopeDefault + language_code
  • botCommandScopeDefault

Commands in group and supergroup chats

  • botCommandScopeChatMember + language_code
  • botCommandScopeChatMember
  • botCommandScopeChatAdministrators + language_code (admins only)
  • botCommandScopeChatAdministrators (admins only)
  • botCommandScopeChat + language_code
  • botCommandScopeChat
  • botCommandScopeAllChatAdministrators + language_code (admins only)
  • botCommandScopeAllChatAdministrators (admins only)
  • botCommandScopeAllGroupChats + language_code
  • botCommandScopeAllGroupChats
  • botCommandScopeDefault + language_code
  • botCommandScopeDefault

Variants

Default

Default commands are used if no commands with a narrower scope are specified for the user.

AllPrivateChats

Covers all private chats.

AllGroupChats

Covers all group and supergroup chats.

AllChatAdministrators

Cvoers all group and supergroup chat administrators.

Chat

Covers a specific chat.

Fields of Chat

chat_id: ChatId

Unique identifier for the target chat or username of the target supergroup (in the format @supergroupusername)

ChatAdministrators

Covers all administrators of a specific group or supergroup chat.

Fields of ChatAdministrators

chat_id: ChatId

Unique identifier for the target chat or username of the target supergroup (in the format @supergroupusername)

ChatMember

Covers a specific member of a group or supergroup chat.

Fields of ChatMember

chat_id: ChatId

Unique identifier for the target chat or username of the target supergroup (in the format @supergroupusername)

user_id: i64

Unique identifier of the target user

Trait Implementations

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.