1
0
mirror of https://github.com/danog/MadelineProto.git synced 2024-11-30 06:18:58 +01:00
Go to file
2024-09-28 09:09:09 +02:00
.github Bump 2023-12-07 19:12:28 +01:00
.woodpecker Psalm fixes 2024-04-15 22:03:06 +02:00
docs@1f9cb68731 Update to layer 188 2024-09-24 18:02:46 +02:00
examples Update to layer 185 2024-08-02 18:50:54 +02:00
langs Sync translations 2024-07-21 12:47:58 +02:00
schemas@d870841861 Fix etag hash generation, update to layer 186 2024-08-15 18:16:13 +02:00
src Improve comments wording 2024-09-27 20:16:31 +03:30
tests Bump builder addr 2024-08-18 17:27:56 +02:00
ton
tools Bump docs 2024-08-18 13:04:48 +02:00
vendor-bin Cleanup 2024-04-15 21:53:01 +02:00
.env.example
.gitattributes Move around files 2023-12-24 15:15:09 +01:00
.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
CODE_OF_CONDUCT.md
composer.json Bump deps 2024-09-28 08:56:03 +02:00
CONTRIBUTING.md
extracted.json Bump 2024-03-08 13:19:15 +01:00
LICENSE
phpcs.xml
phpunit-light.xml Further improve tests 2023-11-30 17:58:48 +01:00
phpunit.xml Fixup 2023-11-30 18:20:24 +01:00
psalm-baseline.xml bump 2024-09-27 16:48:14 +02:00
psalm.xml Cleanup error generation 2024-06-15 16:11:22 +02:00
README.md Update to layer 187 2024-09-10 15:32:21 +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!

  • magnaluna webradio - Multifeatured Telegram VoIP webradio
  • simpleBot.php - Extremely basic example
  • tgstories_dl_bot.php - Source code of @tgstories_dl_bot - Bot to download any Telegram Story!
  • downloadRenameBot.php - Download files by URL and rename Telegram files using this async parallelized bot!
  • secret_bot.php - Secret chat bot!
  • pipesbot.php - Creating inline bots and using other inline bots via a userbot!
  • bot.php - Examples for how to use filters, updates, get download links for any file, Telegram Stories and much more!
  • TelegramApiServer - Fast, simple, async php telegram api server: an HTTP JSON API for MadelineProto (for use in languages other than PHP, if using PHP use directly MadelineProto)

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