MadelineProto is a PHP library typically used in Telecommunications, Media, Telecom, Automation, Bot applications. MadelineProto has no bugs, it has no vulnerabilities, it has a Strong Copyleft License and it has medium support. You can download it from GitHub, GitLab.
Created by Daniil Gentili.
Support
Quality
Security
License
Reuse
Support
MadelineProto has a medium active ecosystem.
It has 2372 star(s) with 562 fork(s). There are 153 watchers for this library.
It had no major release in the last 12 months.
There are 38 open issues and 1094 have been closed. On average issues are closed in 16 days. There are no pull requests.
It has a neutral sentiment in the developer community.
The latest version of MadelineProto is 8.0.0-beta95
Quality
MadelineProto has 0 bugs and 0 code smells.
Security
MadelineProto has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
MadelineProto is licensed under the AGPL-3.0 License. This license is Strong Copyleft.
Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.
Reuse
MadelineProto releases are available to install and integrate.
Installation instructions, examples and code snippets are available.
It has 24525 lines of code, 2201 functions and 268 files.
It has high code complexity. Code complexity directly impacts maintainability of the code.
Top functions reviewed by kandi - BETA
kandi has reviewed MadelineProto and discovered the below as its top functions. This is intended to give you an instant insight into MadelineProto implemented functionality, and help decide if they suit your requirements.
Create an auth key .
Deserialize stream .
Create methods .
Loop the write operation .
Create the constructors documentation
Receive a message
Read T Desktop .
Read a message from the server .
Generate all media files
Generate all inputs
Get all kandi verified functions for this library.
MadelineProto Key Features
No Key Features are available at this moment for MadelineProto.
MadelineProto Examples and Code Snippets
No Code Snippets are available at this moment for MadelineProto.
Get CHAT_WRITE_FORBIDDEN using MadelineProto with Telegram API
Asked 2021-Apr-17 at 10:09
I'm using the MadelineProto project for php to interact with Telegram API.
Maybe this error has nothing to do with MadelineProto... anyway, I successfully created a supergroup but any other method I call after, gives me a CHAT_WRITE_FORBIDDEN error.
Can't find anything in Telegram Documentation about why I'm getting this error and how to solve.
This is my code:
...
ANSWER
Answered 2021-Apr-17 at 10:09
It seems that the problem was due to the value passed to the 'channel' property. Instead of passing the $update variable, I passed directly the channel id in the form "channel#1234567890" and finally got a correct answer from Telegram.
Try this code now! or run this code in a browser or in a console. Tip: if you receive an error (or nothing), send us the error message and the MadelineProto.log file that was created in the same directory (if running from a browser).
Support
Creating a clientLogin Getting permission to use the telegram API Automatic Manual (user) API ID Manual (bot) Logout Changing 2FA passwordFeaturesRequirementsInstallation Simple Simple (manual) Composer from scratch Composer from existing projectHandling updates (new messages) Self-restart on webhosts Async Event driven Built-in database driver Async Event driven multi-account Noop (default)Database \danog\MadelineProto\Settings\Database\Memory: Memory backend settings. \danog\MadelineProto\Settings\Database\Mysql: MySQL backend settings. \danog\MadelineProto\Settings\Database\Postgres: Postgres backend settings. \danog\MadelineProto\Settings\Database\Redis: Redis backend settings.Settings AppInfo: App information. Auth: Cryptography settings. Connection: Connection settings. Files: File management settings. Logger: Logger settings. Peer: Peer database settings. Pwr: PWRTelegram settings. RPC: RPC settings. SecretChats: Secret chat settings. Serialization: Serialization settings. TLSchema: TL schema settings. Templates: Web and CLI template settings for login. VoIP: VoIP settings. Database\Memory: Memory backend settings. Database\Mysql: MySQL backend settings. Database\Postgres: Postgres backend settings. Database\Redis: Redis backend settings.Getting info about the current userExceptions List of exception types Pretty TL trace Getting the TL traceAvoiding FLOOD_WAITsLoggingTelegram VoIP phone calls Requesting a call Playing mp3 files Playing streams Changing audio quality Putting it all together Accepting callsUploading and downloading files Bot API file IDs Uploading & sending files Security notice Photos Documents Documents Photos as documents GIFs Videos Audio & Voice Uploading files Reusing uploaded files Renaming files Downloading files Extracting download info Downloading profile pictures Download to directory Download to file Download to stream Download to callback Download to http-server Download to browser Getting progressGetting info about chats Full chat info with full list of participants Full chat info Reduced chat info (very fast) Just the chat ID (extremely fast)Getting all chats (dialogs) Dialog list Full dialog infoInline buttonsSecret chats Requesting secret chats Accepting secret chats Checking secret chat status Sending secret messagesUsing a proxy How to set a proxy Multiple proxies with automatic switch Use pre-built MTProxy Use pre-built Socks5 proxy Use pre-built HTTP proxy Build your own proxyAsync Usage Enabling the MadelineProto async API Using the MadelineProto async API Async in event handler Async in callback handler Wrapped async Multiple async ArrayAccess async Ignored async Blocking async MadelineProto and AMPHP async APIs Helper methods Async sleep Async readline Async echo MadelineProto artax HTTP client Async forking Async flock Combining async operations MadelineProto async loop APIs Loop ResumableLoop SignalLoop ResumableSignalLoop GenericLoop PeriodicLoopUsing methods FULL API Documentation with descriptions Logout Login Change 2FA password Get all chats, broadcast a message to all chats Get the full participant list of a channel/group/supergroup Get full info about a user/chat/supergroup/channel Get info about a user/chat/supergroup/channel Get info about the currently logged-in user Upload or download files up to 2 GB Make a phone call and play a song Create a secret chat bot Accept QR code login token, logging in the app that generated it: auth.acceptLoginToken Accept the new terms of service: help.acceptTermsOfService Add GIF to saved gifs list: messages.saveGif Add a sticker to a stickerset, bots only. The sticker set must have been created by the bot: stickers.addStickerToSet Add an existing telegram user as contact: contacts.addContact Add/remove sticker from recent stickers list: messages.saveRecentSticker Adds a user to a chat and sends a service message on it: messages.addChatUser Adds the user to the blacklist: contacts.block Answer an inline query, for bots only: messages.setInlineBotResults Answers a custom query; for bots only: bots.answerWebhookJSONQuery Apply changes to multiple stickersets: messages.toggleStickerSets Associate a group to a channel as discussion group for that channel: channels.setDiscussionGroup Associate a stickerset to the supergroup: channels.setStickers Ban/unban/kick a user in a supergroup/channel: channels.editBanned Cancel the code that was sent to verify an email to use as 2FA recovery method: account.cancelPasswordEmail Cancel the login verification code: auth.cancelCode Chanages chat name and sends a service message on it: messages.editChatTitle Change media autodownload settings: account.saveAutoDownloadSettings Change privacy settings of current account: account.setPrivacy Change the phone number of the current account: account.changePhone Change the photo of a channel/supergroup: channels.editPhoto Change the username of a supergroup/channel: channels.updateUsername Changes chat photo and sends a service message on it: messages.editChatPhoto Changes the absolute position of a sticker in the set to which it belongs; for bots only. The sticker set must have been created by the bot: stickers.changeStickerPosition Changes username for the current user: account.updateUsername Check if a username is free and can be assigned to a channel/supergroup: channels.checkUsername Check the validity of a chat invite link and get basic info about it: messages.checkChatInvite Clear all drafts: messages.clearAllDrafts Clear recent stickers: messages.clearRecentStickers Clear saved payment information: payments.clearSavedInfo Confirm a phone number to cancel account deletion, for more info click here »: account.confirmPhone Confirms receipt of messages by a client, cancels PUSH-notification sending: messages.receivedMessages Create a supergroup/channel: channels.createChannel Create a stickerset, bots only: stickers.createStickerSet Create a theme: account.createTheme Create and upload a new wallpaper: account.uploadWallPaper Creates a new chat: messages.createChat Delete a channel/supergroup: channels.deleteChannel Delete a peer folder: folders.deleteFolder Delete all temporary authorization keys except for the ones specified: auth.dropTempAuthKeys Delete contacts by phone number: contacts.deleteByPhones Delete installed wallpapers: account.resetWallPapers Delete messages in a channel/supergroup: channels.deleteMessages Delete saved contacts: contacts.resetSaved Delete scheduled messages: messages.deleteScheduledMessages Delete stored Telegram Passport documents, for more info see the passport docs »: account.deleteSecureValue Delete the history of a supergroup: channels.deleteHistory Delete the user's account from the telegram servers. Can be used, for example, to delete the account of a user that provided the login code, but forgot the 2FA password and no recovery method is configured: account.deleteAccount Deletes a device by its token, stops sending PUSH-notifications to it: account.unregisterDevice Deletes a user from a chat and sends a service message on it: messages.deleteChatUser Deletes communication history: messages.deleteHistory Deletes messages by their identifiers: messages.deleteMessages Deletes profile photos: photos.deletePhotos Deletes several contacts from the list: contacts.deleteContacts Deletes the user from the blacklist: contacts.unblock Dismiss a suggestion: help.dismissSuggestion Edit an inline bot message: messages.editInlineBotMessage Edit location of geogroup: channels.editLocation Edit message: messages.editMessage Edit peers in peer folder: folders.editPeerFolders Edit the default banned rights of a channel/supergroup/group: messages.editChatDefaultBannedRights Edit the description of a group/supergroup/channel: messages.editChatAbout Edit the name of a channel/supergroup: channels.editTitle Edits notification settings from a given user/group, from all users/all groups: account.updateNotifySettings Enable/disable top peers: contacts.toggleTopPeers Enable/disable message signatures in channels: channels.toggleSignatures Export an invite link for a chat: messages.exportChatInvite Find out if a media message's caption can be edited: messages.getMessageEditData Finish account takeout session: account.finishTakeoutSession Forwards messages by their IDs: messages.forwardMessages Generate a login token, for login via QR code. : auth.exportLoginToken Get MTProxy/Public Service Announcement information: help.getPromoData Get channel statistics: stats.getBroadcastStats Get channel/supergroup messages: channels.getMessages Get channels/supergroups/geogroups we're admin in. Usually called when the user exceeds the limit for owned public channels/supergroups/geogroups, and the user is given the choice to remove one of his channels/supergroups/geogroups: channels.getAdminedPublicChannels Get discussion message from the associated discussion group of a channel to show it on top of the comment section, without actually joining the group: messages.getDiscussionMessage Get folders: messages.getDialogFilters Get instant view page: messages.getWebPage Get message statistics: stats.getMessageStats Get passport configuration: help.getPassportConfig Get suggested folders: messages.getSuggestedDialogFilters Get supergroup statistics: stats.getMegagroupStats Get a document by its SHA256 hash, mainly used for gifs: messages.getDocumentByHash Get a list of channels/supergroups we left: channels.getLeftChannels Get a payment form: payments.getPaymentForm Get all archived stickers: messages.getArchivedStickers Get all chats, channels and supergroups: messages.getAllChats Get all contacts: contacts.getSaved Get all groups that can be used as discussion groups: channels.getGroupsForDiscussion Get all installed stickers: messages.getAllStickers Get all saved Telegram Passport documents, for more info see the passport docs »: account.getAllSecureValues Get and increase the view counter of a message sent or forwarded from a channel: messages.getMessagesViews Get app-specific configuration, see client configuration for more info on the result: help.getAppConfig Get changed emoji keywords: messages.getEmojiKeywordsDifference Get changelog of current app. : help.getAppChangelog Get chats in common with a user: messages.getCommonChats Get configuration for CDN file downloads: help.getCdnConfig Get contact by telegram IDs: contacts.getContactIDs Get contacts near you: contacts.getLocated Get count of online users in a chat: messages.getOnlines Get days to live of account: account.getAccountTTL Get dialog info of specified peers: messages.getPeerDialogs Get dialogs manually marked as unread: messages.getDialogUnreadMarks Get faved stickers: messages.getFavedStickers Get featured stickers: messages.getFeaturedStickers Get full message reaction list: messages.getMessageReactionsList Get global privacy settings: account.getGlobalPrivacySettings Get highscores of a game sent using an inline bot: messages.getInlineGameHighScores Get highscores of a game: messages.getGameHighScores Get inactive channels and supergroups: channels.getInactiveChannels Get info about channels/supergroups: channels.getChannels Get info about a channel/supergroup participant: channels.getParticipant Get info about a t.me link: help.getDeepLinkInfo Get info about a certain wallpaper: account.getWallPaper Get info about a credit card: payments.getBankCardData Get info about a stickerset: messages.getStickerSet Get info about an emoji keyword localization: messages.getEmojiKeywordsLanguages Get info about multiple wallpapers: account.getMultiWallPapers Get information about a language in a localization pack: langpack.getLanguage Get information about all languages in a localization pack: langpack.getLanguages Get installed mask stickers: messages.getMaskStickers Get installed themes: account.getThemes Get link and embed info of a message in a channel/supergroup: channels.exportMessageLink Get live location history of a certain user: messages.getRecentLocations Get localization pack strings: langpack.getLangPack Get localized emoji keywords: messages.getEmojiKeywords Get localized name of the telegram support user: help.getSupportName Get logged-in sessions: account.getAuthorizations Get media autodownload settings: account.getAutoDownloadSettings Get message ranges for saving the user's chat history: messages.getSplitRanges Get message reactions: messages.getMessagesReactions Get messages in a reply thread: messages.getReplies Get more info about a Seamless Telegram Login authorization request, for more info click here »: messages.requestUrlAuth Get most used peers: contacts.getTopPeers Get name, ISO code, localized name and phone codes/patterns of all available countries: help.getCountriesList Get new strings in languagepack: langpack.getDifference Get payment receipt: payments.getPaymentReceipt Get peer settings: messages.getPeerSettings Get phone call configuration to be passed to libtgvoip's shared config: phone.getCallConfig Get pinned dialogs: messages.getPinnedDialogs Get poll results for non-anonymous polls: messages.getPollVotes Get poll results: messages.getPollResults Get preview of webpage: messages.getWebPagePreview Get privacy settings of current account: account.getPrivacy Get recent stickers: messages.getRecentStickers Get recently used t.me links: help.getRecentMeUrls Get saved GIFs: messages.getSavedGifs Get saved Telegram Passport document, for more info see the passport docs »: account.getSecureValue Get saved payment information: payments.getSavedInfo Get scheduled messages: messages.getScheduledHistory Get scheduled messages: messages.getScheduledMessages Get sensitive content settings: account.getContentSettings Get stickers attached to a photo or video: messages.getAttachedStickers Get stickers by emoji: messages.getStickers Get strings from a language pack: langpack.getStrings Get temporary payment password: account.getTmpPassword Get the admin log of a channel/supergroup: channels.getAdminLog Get the number of results that would be found by a messages.search call with the same parameters: messages.getSearchCounters Get the participants of a supergroup/channel: channels.getParticipants Get theme information: account.getTheme Get unread messages where we were mentioned: messages.getUnreadMentions Get web login widget authorizations: account.getWebAuthorizations Gets back found messages: messages.search Gets back the conversation history with one interlocutor / within a chat: messages.getHistory Gets current notification settings for a given user/group, from all users/all groups: account.getNotifySettings Hide MTProxy/Public Service Announcement information: help.hidePromoData Hide/unhide message history for new channel/supergroup users: channels.togglePreHistoryHidden If the peer settings of a new user allow us to add him as contact, add that user as contact: contacts.acceptContact If you sent an invoice requesting a shipping address and the parameter is_flexible was specified, the bot will receive an updateBotShippingQuery update. Use this method to reply to shipping queries: messages.setBotShippingResults Import a chat invite and join a private chat/supergroup/channel: messages.importChatInvite Imports contacts: saves a full list on the server, adds already registered contacts to the contact list, returns added contacts and their info: contacts.importContacts Informs the server about the number of pending bot updates if they haven't been processed for a long time; for bots only: help.setBotUpdatesStatus Initialize connection: initConnection Install a stickerset: messages.installStickerSet Install a theme: account.installTheme Install wallpaper: account.installWallPaper Install/uninstall wallpaper: account.saveWallPaper Installs a previously uploaded photo as a profile photo: photos.updateProfilePhoto Internal use: help.editUserInfo Internal use: help.getUserInfo Intialize account takeout session: account.initTakeoutSession Invite users to a channel/supergroup: channels.inviteToChannel Invoke a method within a takeout session: invokeWithTakeout Invoke a request without subscribing the used connection for updates (this is enabled by default for file queries): invokeWithoutUpdates Invoke the specified query using the specified API layer: invokeWithLayer Invoke with the given message range: invokeWithMessagesRange Invokes a query after a successfull completion of previous queries: invokeAfterMsgs Invokes a query after successfull completion of one of the previous queries: invokeAfterMsg Join a channel/supergroup: channels.joinChannel Leave a channel/supergroup: channels.leaveChannel Load channel statistics graph asynchronously: stats.loadAsyncGraph Log out an active authorized session by its hash: account.resetAuthorization Log out an active web telegram login session: account.resetWebAuthorization Login using a redirected login token, generated in case of DC mismatch during QR code login: auth.importLoginToken Look for updates of telegram's terms of service: help.getTermsOfServiceUpdate Make a user admin in a legacy group: messages.editChatAdmin Manually mark dialog as unread: messages.markDialogUnread Mark channel/supergroup history as read: channels.readHistory Mark channel/supergroup message contents as read: channels.readMessageContents Mark a thread as read: messages.readDiscussion Mark a sticker as favorite: messages.faveSticker Mark mentions as read: messages.readMentions Mark new featured stickers as read: messages.readFeaturedStickers Marks message history as read: messages.readHistory Marks message history within a secret chat as read: messages.readEncryptedHistory Method for fetching previously featured stickers: messages.getOldFeaturedStickers Modify the admin rights of a user in a supergroup/channel: channels.editAdmin Notifies the sender about the recipient having listened a voice message or watched a video: messages.readMessageContents Notify the other user in a private chat that a screenshot of the chat was taken: messages.sendScreenshotNotification Notify the user that the sent passport data contains some errors The user will not be able to re-submit their Passport data to you until the errors are fixed (the contents of the field for which you returned the error must change): users.setSecureValueErrors Obtain configuration for two-factor authorization with password: account.getPassword Obtains a list of messages, indicating to which other public channels was a channel message forwarded. : stats.getMessagePublicForwards Once the user has confirmed their payment and shipping details, the bot receives an updateBotPrecheckoutQuery update. : messages.setBotPrecheckoutResults Optional: notify the server that the user is currently busy in a call: this will automatically refuse all incoming phone calls until the current phone call is ended: phone.receivedCall Pin a message: messages.updatePinnedMessage Pin/unpin a dialog: messages.toggleDialogPin Press an inline callback button and get a callback answer from the bot: messages.getBotCallbackAnswer Query an inline bot: messages.getInlineBotResults Rate a call: phone.setCallRating Register device to receive PUSH notifications: account.registerDevice Remove a sticker from the set where it belongs, bots only. The sticker set must have been created by the bot: stickers.removeStickerFromSet Reorder folders: messages.updateDialogFiltersOrder Reorder installed stickersets: messages.reorderStickerSets Reorder pinned dialogs: messages.reorderPinnedDialogs Report a message in a chat for violation of telegram's Terms of Service: messages.report Report a new incoming chat for spam, if the peer settings of the chat allow us to do that: messages.reportSpam Report a peer for violation of telegram's Terms of Service: account.reportPeer Report a secret chat for spam: messages.reportEncryptedSpam Reports some messages from a user in a supergroup as spam; requires administrator rights in the supergroup: channels.reportSpam Request recovery code of a 2FA password, only for accounts with a recovery email configured: auth.requestPasswordRecovery Resend the code to verify an email to use as 2FA recovery method: account.resendPasswordEmail Resend the login code via another medium, the phone code type is determined by the return value of the previous auth.sendCode/auth.resendCode: see login for more info: auth.resendCode Reset rating of top peer: contacts.resetTopPeerRating Reset all active web telegram login sessions: account.resetWebAuthorizations Reset the 2FA password using the recovery code sent using auth.requestPasswordRecovery: auth.recoverPassword Resets all notification settings from users and groups: account.resetNotifySettings Returns a Telegram Passport authorization form for sharing data with a service: account.getAuthorizationForm Returns a list of available wallpapers: account.getWallPapers Returns an HTTP URL which can be used to automatically log in into translation platform and suggest new emoji replacements. The URL will be valid for 30 seconds after generation: messages.getEmojiURL Returns basic user info according to their identifiers: users.getUsers Returns chat basic info on their IDs: messages.getChats Returns content of an HTTP file or a part, by proxying the request through telegram: upload.getWebFile Returns current configuration, including data center configuration: help.getConfig Returns info on data centre nearest to the user: help.getNearestDc Returns information on update availability for the current application: help.getAppUpdate Returns list of chats with non-default notification settings: account.getNotifyExceptions Returns localized text of a text message with an invitation: help.getInviteText Returns the current user dialog list: messages.getDialogs Returns the current user's contact list: contacts.getContacts Returns the list of blocked users: contacts.getBlocked Returns the list of contact statuses: contacts.getStatuses Returns the list of messages by their IDs: messages.getMessages Returns the list of user photos: photos.getUserPhotos Returns the support user for the 'ask a question' feature: help.getSupport Returns users found by username substring: contacts.search Save a message draft associated to a chat: messages.saveDraft Save a theme: account.saveTheme Save get all message drafts: messages.getAllDrafts Saves logs of application on the server: help.saveAppLog Search for messages and peers globally: messages.searchGlobal Search for stickersets: messages.searchStickerSets Securely save Telegram Passport document, for more info see the passport docs »: account.saveSecureValue Send VoIP signaling data: phone.sendSignalingData Send a media: messages.sendMedia Send a result obtained using messages.getInlineBotResults: messages.sendInlineBotResult Send an album or grouped media: messages.sendMultiMedia Send compiled payment form: payments.sendPaymentForm Send confirmation code to cancel account deletion, for more info click here »: account.sendConfirmPhoneCode Send phone call debug data to server: phone.saveCallDebug Send reaction to message: messages.sendReaction Send scheduled messages right away: messages.sendScheduledMessages Send the verification email code for telegram passport: account.sendVerifyEmailCode Send the verification phone code for telegram passport: account.sendVerifyPhoneCode Send typing event by the current user to a secret chat: messages.setEncryptedTyping Sends a Telegram Passport authorization form, effectively sharing data with the service: account.acceptAuthorization Sends a current user typing event (see SendMessageAction for all event types) to a conversation partner or group: messages.setTyping Sends a custom request; for bots only: bots.sendCustomRequest Sends a message to a chat: messages.sendMessage Sends a message with a file attachment to a secret chat: messages.sendEncryptedFile Sends a service message to a secret chat: messages.sendEncryptedService Sends a text message to a secret chat: messages.sendEncrypted Set account self-destruction period: account.setAccountTTL Set bot command list: bots.setBotCommands Set global privacy settings: account.setGlobalPrivacySettings Set sensitive content settings (for viewing or hiding NSFW content): account.setContentSettings Set stickerset thumbnail: stickers.setStickerSetThumb Set the callback answer to a user button press (bots only): messages.setBotCallbackAnswer Should be called after the user hides the report spam/add as contact bar of a new chat, effectively prevents the user from executing the actions specified in the peer's settings: messages.hidePeerSettingsBar Start a conversation with a bot using a deep linking parameter: messages.startBot Stop getting notifications about thread replies of a certain user in @replies: contacts.blockFromReplies Submit requested order information for validation: payments.validateRequestedInfo Terminates all user's authorized sessions except for the current one: auth.resetAuthorizations Toggle contact sign up notifications: account.setContactSignUpNotification Toggle supergroup slow mode: if enabled, users will only be able to send one message every seconds seconds: channels.toggleSlowMode Transfer channel ownership: channels.editCreator Turn a legacy group into a supergroup: messages.migrateChat Uninstall a stickerset: messages.uninstallStickerSet Update folder: messages.updateDialogFilter Update theme: account.updateTheme Updates current user profile photo: photos.uploadProfilePhoto Updates online user status: account.updateStatus Updates user profile: account.updateProfile Upload a file and associate it to a chat (without actually sending it to the chat): messages.uploadMedia Upload encrypted file and associate it to a secret chat: messages.uploadEncryptedFile Upload theme: account.uploadTheme Use this method to set the score of the specified user in a game sent as a normal message (bots only): messages.setGameScore Use this method to set the score of the specified user in a game sent as an inline message (bots only): messages.setInlineGameScore Use this to accept a Seamless Telegram Login authorization request, for more info click here »: messages.acceptUrlAuth Validates a username and checks availability: account.checkUsername Verify a new phone number to associate to the current account: account.sendChangePhoneCode Verify a phone number for telegram passport: account.verifyPhone Verify an email address for telegram passport: account.verifyEmail Verify an email to use as 2FA recovery method: account.confirmPasswordEmail Vote in a poll: messages.sendVote When client-side passcode lock feature is enabled, will not show message texts in incoming PUSH notifications: account.updateDeviceLocked Whether the user will receive notifications when contacts sign up: account.getContactSignUpNotification Unpin all pinned messages: messages.unpinAllMessages Peers Files Secret chats Entities (Markdown & HTML) reply_markup (keyboards & inline keyboards) bot API objects No result Queues Multiple method callsContributing Translation Contribution guide CreditsWeb templates for $MadelineProto->start()