1
0
mirror of https://github.com/danog/MadelineProto.git synced 2024-11-26 19:04:40 +01:00
Go to file
2024-06-27 20:32:51 +02:00
.github
.woodpecker Psalm fixes 2024-04-15 22:03:06 +02:00
docs@2afbbbb006 Bump 2024-06-27 20:32:51 +02:00
examples Bump 2024-05-29 22:51:56 +02:00
langs Bump 2024-06-27 20:32:51 +02:00
schemas@424aaa1cad Bump 2024-06-17 18:09:14 +02:00
src Revert TAS-only change 2024-06-27 20:32:51 +02:00
tests Production-mode assertions 2024-06-17 19:28:04 +02:00
ton
tools Revert TAS-only change 2024-06-27 20:32:51 +02:00
vendor-bin Cleanup 2024-04-15 21:53:01 +02:00
.env.example
.gitattributes
.gitignore
.gitmodules
.php-cs-fixer.dist.php
CHANGELOG.md
CODE_OF_CONDUCT.md
composer.json Bump 2024-05-20 17:44:56 +02:00
CONTRIBUTING.md
extracted.json
LICENSE
phpcs.xml
phpunit-light.xml
phpunit.xml
psalm-baseline.xml Fixes 2024-06-27 20:32:51 +02:00
psalm.xml Cleanup error generation 2024-06-15 16:11:22 +02:00
README.md Bump to layer 181 2024-06-08 17:10:16 +02:00
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