1
0
mirror of https://github.com/danog/MadelineProto.git synced 2024-11-26 19:24:42 +01:00
Go to file
2024-05-16 00:38:27 +02:00
.github
.woodpecker Psalm fixes 2024-04-15 22:03:06 +02:00
docs@f37b981f1b
examples
langs
schemas@6fc533efe6
src
tests Fix upload callbacks in the send* methods, fix issue with plugins in a phar 2024-04-23 15:28:38 +02:00
ton
tools
vendor-bin
.env.example Improve docs 2018-03-30 16:07:54 +00:00
.gitattributes
.gitignore
.gitmodules Move to external project 2024-02-13 22:11:19 +01:00
.php-cs-fixer.dist.php Refactor 2024-03-10 15:48:55 +01:00
CHANGELOG.md Ignore unneeded files 2023-08-20 23:45:30 +02:00
CODE_OF_CONDUCT.md
composer.json
CONTRIBUTING.md Bugfixes 2017-02-13 13:27:59 +01:00
extracted.json
LICENSE
phpcs.xml More refactoring 2022-12-30 21:43:58 +01:00
phpunit-light.xml
phpunit.xml
psalm-baseline.xml
psalm.xml
README.md
SECURITY.md

MadelineProto, a PHP MTProto telegram client

Created by Daniil Gentili

#StandWithUkraine 🇺🇦

Do join the official channel, @MadelineProto and the support groups!

Approved by Telegram!

What's this?

This library can be used to easily interact with Telegram without the bot API, just like the official apps.

It can login with a phone number (MTProto API), or with a bot token (MTProto API, no bot API involved!).

It is now fully async!

Getting started (now fully async!)

<?php

// PHP 8.2+ is required.

if (!file_exists('madeline.php')) {
    copy('https://phar.madelineproto.xyz/madeline.php', 'madeline.php');
}
include 'madeline.php';

$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();

$me = $MadelineProto->getSelf();

$MadelineProto->logger($me);

if (!$me['bot']) {
    $MadelineProto->messages->sendMessage(peer: '@stickeroptimizerbot', message: "/start");

    $MadelineProto->channels->joinChannel(channel: '@MadelineProto');

    try {
        $MadelineProto->messages->importChatInvite(hash: 'https://t.me/+Por5orOjwgccnt2w');
    } catch (\danog\MadelineProto\RPCErrorException $e) {
        $MadelineProto->logger($e);
    }
}
$MadelineProto->echo('OK, done!');

Try running 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).

Made with MadelineProto

The following open source projects were created using MadelineProto: you can directly install them, or explore the source code as direct examples on how to use MadelineProto's many features!

Want to add your own open-source project to this list? Click here!

Some of MadelineProto's core components are also available as separate, standalone libraries:

Documentation