https://github.com/chipslays/telegram-client
🛩 Simple & scalable PHP wrapper over MadelineProto for easy work with Telegram Client API.
https://github.com/chipslays/telegram-client
client-library telegram userbot
Last synced: 11 months ago
JSON representation
🛩 Simple & scalable PHP wrapper over MadelineProto for easy work with Telegram Client API.
- Host: GitHub
- URL: https://github.com/chipslays/telegram-client
- Owner: chipslays
- Created: 2021-08-02T17:31:43.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2022-02-21T12:08:46.000Z (over 4 years ago)
- Last Synced: 2025-04-30T22:14:42.599Z (about 1 year ago)
- Topics: client-library, telegram, userbot
- Language: PHP
- Homepage:
- Size: 16.6 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# WIP: PHP Telegram Client
Simple & scalable PHP wrapper over MadelineProto for easy work with Telegram Client API.
> 👷 Work in progress...
# Installation
```bash
composer require chipslays/telegram-client
```
# Usage
Run this script in terminal like `php client.php`.
The first time authorization will take a long time, but the next times it will be faster.
> Event system based on [`chipslays/event`](https://github.com/chipslays/event), see this for more cases.
```php
// client.php
use Chipslays\Telegram\Client;
require_once __DIR__ . '/vendor/autoload.php';
$client = new Client([
'session' => 'user.chipslays',
'path' => [
'sessions' => __DIR__ . '/storage/sessions',
],
'madeline' => [
'settings' => [
'app_info' => [
'app_id' => '###',
'app_hash' => '######',
],
'logger' => [
'logger_level' => 0,
],
],
'parse_mode' => 'html',
],
]);
$result = $client->sendMessage('@chipslays', 'Thank you for PHP MadelineProto wrapper! <3');
```
Simple userbot.
```php
use Chipslays\Telegram\Client;
use danog\MadelineProto\Logger;
require_once __DIR__ . '/../vendor/autoload.php';
$client = new Client([
'session' => 'user.chipslays',
'path' => [
'sessions' => __DIR__ . '/storage/sessions',
],
'madeline' => [
'settings' => [
'app_info' => [
'app_id' => '###',
'app_hash' => '######',
],
'logger' => [
'logger_level' => 0,
],
],
'parse_mode' => 'html',
],
]);
// Catch message where contains ".hello" and edit this message to "Hello World!"
// See more: https://github.com/chipslays/event
$client->on(['message.message' => '.hello'], function () use ($client) {
if (!$client->fromMe()) {
return;
}
$client->edit('Hello World!');
});
$client->on(['message.message' => '.bday {name}'], function ($name) use ($client) {
if (!$client->fromMe()) {
return;
}
$client->edit("Happy Birthday, {$name}! 🎉🎂");
});
// Start polling Telegram updates.
$client->handleUpdates(function ($update) {
// This executed on every new update.
Logger::log($update->toArray());
});
```
More soon...