Telegram allows users, channels and supergroups to set an emoticon or a custom emoji as status, to show next to their name in chats and profiles.
emojiStatusEmpty#2de11aae = EmojiStatus;
emojiStatus#929b619d document_id:long = EmojiStatus;
emojiStatusUntil#fa30a8c7 document_id:long until:int = EmojiStatus;
user#83314fca flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true contact_require_premium:flags2.10?true bot_business:flags2.11?true bot_has_main_app:flags2.13?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int color:flags2.8?PeerColor profile_color:flags2.9?PeerColor bot_active_users:flags2.12?int = User;
updateUserEmojiStatus#28373599 user_id:long emoji_status:EmojiStatus = Update;
updateRecentEmojiStatuses#30f443db = Update;
account.emojiStatusesNotModified#d08ce645 = account.EmojiStatuses;
account.emojiStatuses#90c467d1 hash:long statuses:Vector<EmojiStatus> = account.EmojiStatuses;
---functions---
account.updateEmojiStatus#fbd3de6b emoji_status:EmojiStatus = Bool;
account.getRecentEmojiStatuses#0f578105 hash:long = account.EmojiStatuses;
account.clearRecentEmojiStatuses#18201aae = Bool;
Use account.updateEmojiStatus to change the status emoji of your profile.
The newly set EmojiStatus constructor will be contained in the emoji_status
field of the user constructor, and other users will receive an updateUserEmojiStatus.
Other logged-in clients will also receive an updateRecentEmojiStatuses update, indicating that the recent status emoji list has changed.
Recently used emoji statuses can be fetched using account.getRecentEmojiStatuses, and the list can be cleared using account.clearRecentEmojiStatuses.
Note that the custom emoji selection UI should offer a list of categories to quickly filter results by a (list of) emojis, or by some other criteria, see here » for more info.
emojiList#7a1e11d1 hash:long document_id:Vector<long> = EmojiList;
---functions---
account.getChannelRestrictedStatusEmojis#35a9e0d5 hash:long = EmojiList;
Only channel/supergroup custom emoji stickersets, i.e. stickersets with the channel_emoji_status
flag set, can be used in channel/supergroup custom emoji statuses.
Note, however, that some specific custom emojis from channel/supergroup custom emoji stickersets cannot be used as channel/supergroup statuses: use account.getChannelRestrictedStatusEmojis to fetch the full list of IDs of custom emojis that cannot be used in channel/supergroup statuses.
Channels/supergroups gain the ability to change their status emoji only after reaching at least the boost level specified in the channel_emoji_status_level_min
»/group_emoji_status_level_min
» config parameters.
emojiStatus#929b619d document_id:long = EmojiStatus;
account.emojiStatusesNotModified#d08ce645 = account.EmojiStatuses;
account.emojiStatuses#90c467d1 hash:long statuses:Vector<EmojiStatus> = account.EmojiStatuses;
inputStickerSetEmojiDefaultStatuses#29d0f5ee = InputStickerSet;
inputStickerSetEmojiChannelDefaultStatuses#49748553 = InputStickerSet;
---functions---
account.getDefaultEmojiStatuses#d6753386 hash:long = account.EmojiStatuses;
account.getChannelDefaultEmojiStatuses#7727a7d5 hash:long = account.EmojiStatuses;
A set of standard statuses for users/(channels/supergroups) can be fetched by passing inputStickerSetEmojiDefaultStatuses/inputStickerSetEmojiChannelDefaultStatuses to messages.getStickerSet, as specified in the stickerset documentation ».
account.getDefaultEmojiStatuses can also be used to get a list of featured emoji statuses, from multiple featured custom emoji stickersets.
account.getChannelDefaultEmojiStatuses is the equivalent method for channel/supergroup emoji statuses.