Method: messages.sendMessage

Back to methods index


Name Type Required
no_webpage Bool Optional
silent Bool Optional
background Bool Optional
clear_draft Bool Optional
peer InputPeer Yes
reply_to_msg_id int Optional
message string Yes
reply_markup ReplyMarkup Optional
entities Array of MessageEntity Optional
parse_mode string Optional

Return type: Updates


$MadelineProto = new \danog\MadelineProto\API();
if (isset($token)) {
if (isset($number)) {
    $sentCode = $MadelineProto->phone_login($number);
    echo 'Enter the code you received: ';
    $code = '';
    for ($x = 0; $x < $sentCode['type']['length']; $x++) {
        $code .= fgetc(STDIN);

$Updates = $MadelineProto->messages->sendMessage(['no_webpage' => Bool, 'silent' => Bool, 'background' => Bool, 'clear_draft' => Bool, 'peer' => InputPeer, 'reply_to_msg_id' => int, 'message' => string, 'reply_markup' => ReplyMarkup, 'entities' => [MessageEntity], 'parse_mode' => 'string', ]);

Or, if you’re into Lua:

Updates = messages.sendMessage({no_webpage=Bool, silent=Bool, background=Bool, clear_draft=Bool, peer=InputPeer, reply_to_msg_id=int, message=string, reply_markup=ReplyMarkup, entities={MessageEntity}, parse_mode='string', })

Usage of parse_mode:

Set parse_mode to html to enable HTML parsing of the message.

Set parse_mode to Markdown to enable markown AND html parsing of the message.

The following tags are currently supported:

<br>a newline
<b><i>bold works ok, internal tags are stripped</i> </b>
<code>inline fixed-width code</code>
<pre>pre-formatted fixed-width code block</pre>
<a href="">URL</a>
<a href="mention:@danogentili">Mention by username</a>
<a href="mention:186785362">Mention by user id</a>
<pre language="json">Pre tags can have a language attribute</pre>

You can also use normal markdown, note that to create mentions you must use the mention: syntax like in html:

[Mention by username](mention:@danogentili)
[Mention by user id](mention:186785362)

MadelineProto supports all html entities supported by html_entity_decode.