Link Search Menu Expand Document

Using methods

There are simplifications for many, if not all of, these methods.

A list of all of the methods that can be called with MadelineProto can be found here: here (layer 181).

Now fully async!

Named arguments

You must use named arguments instead of arrays to provide method arguments, which allows for much cleaner syntax:

$MadelineProto->messages->sendMessage(peer: '@danogentili', message: 'Testing MadelineProto...');


Full example

If an object of type User, InputUser, Chat, InputChannel, Peer or InputPeer must be provided as a parameter to a method, you can substitute it with the user/group/channel’s username (@username), bot API id (-1029449, 1249421, -100412412901), or update.

$MadelineProto->messages->sendMessage(peer: '@danogentili', message: 'Testing MadelineProto...');

Secret chats

Full example If an object of type InputSecretChat must be provided as a parameter to a method, you can substitute it with the secret chat’s id, the updateNewEncrypted message or the decryptedMessage:

$MadelineProto->messages->sendEncrypted(peer: $update, message: ['_' => 'decryptedMessage', 'ttl' => 0, 'message' => 'Hi']);


Full example Methods that allow sending message entities (messages.sendMessage for example) also have an additional parse_mode parameter that enables or disables html/markdown parsing of the message to be sent.

$MadelineProto->messages->sendMessage(peer: '@danogentili', message: '[Testing Markdown in MadelineProto](', parse_mode:  'Markdown');
$MadelineProto->messages->sendMessage(peer: '@danogentili', message: '<a href="">Testing HTML in MadelineProto</a>', parse_mode:  'HTML');


reply_markup accepts bot API reply markup objects as well as MTProto ones.

$bot_API_markup = ['inline_keyboard' => 
            ['text' => 'MadelineProto docs', 'url' => ''],
            ['text' => 'MadelineProto channel', 'url' => '']
$MadelineProto->messages->sendMessage(peer: '@danogentili', message: 'lel', reply_markup: $bot_API_markup);

Bot API objects

To convert the results of methods to bot API objects you can use the MTProtoToBotAPI method.

$bot_API_object = $MadelineProto->MTProtoToBotAPI($MadelineProto->messages->sendMessage(peer: '@danogentili', message: 'lel'));

MadelineProto also supports bot API file IDs when working with files

No result

See ignored async.

Multiple method calls

See multiple async.


See cancellation ».

Next section