telegram_client 0.3.30 telegram_client: ^0.3.30 copied to clipboard
Telegram Client Lightweight, blazing and Highly customizable for make application telegram based tdlib, mtproto, or bot api and support server side.
Telegram Client library #
Fast, Enjoyable & Customizable Telegram Client
Telegram client dart library to make application telegram based flutter and userbot / bot support server side and client side
Features #
- 🚀 Cross platform: mobile, desktop, browser, server
- ⚡ Great performance
- ❤️ Simple, powerful, & intuitive API
Examples App use Telegram Client #
Examples Bot use Telegram Client #
- AzkadevBot Telegram clone bot and userbot
- Free Run User Bot
Docs #
- Just Read On Wiki
Feature #
-
telegram client dart
- ✅️ support server side & client side
- ✅️ support multi token ( bot / userbot )
- ✅️ support bot and userbot
- ✅️ support telegram-bot-api (local / Bot-Api
- ✅️ Support long poll update bot api
- ✅️ Support telegram database library ( TDLIB )
- ✅️ Add more Api Humanize pretty update and method api humanize
- ✅️ Easy handle multi client
-
telegram client node
- ✅️ support server side & client side
- ✅️ support multi token ( bot / userbot )
- ✅️ support bot and userbot
- ✅️ support telegram-bot-api local server
- ✅️ support telegram database library ( TDLIB )
- ✅️ Add more Api Humanize pretty update and method api humanize
-
telegram client google apps script
- ✅️ support multi token ( bot / userbot )
- ✅️ support bot and userbot
- ❌️ support telegram-bot-api local server
- ❌️ support telegram database library ( Tdlib )
🔜️ Support Other language code
Dart #
Use library #
- Install Library
dart pub add telegram_client
flutter pub add telegram_client
- Build Tdlib
- Add library on project if you make app telegram based this library, you must add native compiled library
- Android Edit project/android/app/build.gradle
main {
jniLibs.srcDirs = ['src/jniLibs']
}
ex:
android {
...
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
main {
jniLibs.srcDirs = ['src/jniLibs']
}
}
...
}
add compiled library specified platform add project/android/app/src/jniLibs/{ABI_DEVICE}/libtdjson.so example:
project/android/app/src/jniLibs/arm64-v8a/libtdjson.so
for other devices, I don't know because I only have android and linux
Feature #
- Support Server Side and Client Side
- 3 library in one ( Tdlib, Telegram Bot Api, Mtproto )
- Support Cross platform
Docs #
Tdlib #
gunakan ini untuk membuat userbot / bot / application based tdlib, quickstart:
- single
import 'dart:io';
import 'package:telegram_client/telegram_client.dart';
void main(List<String> args) async {
var path = Directory.current.path;
Tdlib tg = Tdlib("libtdjson.so", clientOption: {
'api_id': 12345,
'api_hash': 'abcdefgjjaijiajdisd',
'database_directory': "$path/user/",
'files_directory': "$path/user/",
});
tg.on("update", (UpdateTd update) {
print(update.raw);
});
await tg.initIsolate();
}
- multi
import 'dart:io';
import 'package:telegram_client/telegram_client.dart';
void main(List<String> args) async {
var path = Directory.current.path;
Tdlib tg = Tdlib("libtdjson.so", clientOption:{
'api_id': 12345678,
'api_hash': 'asaskaoskaoskoa',
'database_directory': "$path/user_0/",
'files_directory': "$path/user_0/",
});
tg.on("update", (UpdateTd update) {
if (tg.client_id == update.client_id) {
print("user_0");
} else {
print("user_1");
}
print(update.raw);
});
await tg.initIsolate();
await tg.initIsolateNewClient(clientId: tg.client_create().address, clientOption: {
'database_directory': "$path/user_1/",
'files_directory': "$path/user_1/",
});
}
constructor
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | path_tdlib |
String path tdlib | yes |
|
2 | clientOption |
object | parameters di butuhkan jika method membutuhkannya | no |
- examples
Tdlib tg = Tdlib("./tdjson.so", clientOption: {
'api_id': 123435,
'api_hash': 'asmamskmaks',
'database_directory': "",
'files_directory': "",
"use_file_database": true,
"use_chat_info_database": true,
"use_message_database": true,
"use_secret_chats": true,
'enable_storage_optimizer': true,
'system_language_code': 'en',
'new_verbosity_level': 0,
'application_version': 'v1',
'device_model': 'Telegram Client Hexaminate',
});
on
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | type_update |
String path tdlib | yes |
|
2 | function |
object | parameters di butuhkan jika method membutuhkannya | yes |
- examples
tg.on("update", (UpdateTd update) {
print(update.raw);
});
initIsolate
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | clientId |
int addres client_create | no |
|
2 | clientOption |
object | parameters di butuhkan jika method membutuhkannya | no |
- examples
tg.initIsolate();
request
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | name_method |
String | more method check tdlib-docs | yes |
2 | parameters |
object | parameters di butuhkan jika method membutuhkannya | options |
- examples
tg.request("sendMessage", parameters: {
"chat_id": 123456,
"text": "Hello world"
});
invoke
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | parameters |
object | parameters di butuhkan jika method membutuhkannya | yes |
- examples
tg.invoke({
"@type": "getMe",
});
invokeSync
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | parameters |
object | parameters di butuhkan jika method membutuhkannya | yes |
- examples
tg.invokeSync({
"@type": "getMe",
});
Object #
UpdateTd #
raw
raw_api_light
raw_api
message
channel_post
methods #
more method check tdlib-docs
sendMessage
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | chat_id |
String or int | yes |
|
2 | text |
String | yes |
sendPhoto
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | chat_id |
String or int | yes |
|
2 | photo |
String | yes |
TelegramBotApi #
Gunakan ini untuk berinteraksi dengan api telegram, semua method disini sudah auto update
quickstart:
- single
import 'package:telegram_client/telegram_client.dart';
void main(List<String> args) async {
TelegramBotApi tg = TelegramBotApi("token");
tg.on("update", (UpdateApi update) {
print(update.raw);
});
await tg.initIsolate(); // add this jika ingin menggunakan long poll update
}
- multi
import 'package:telegram_client/telegram_client.dart';
void main(List<String> args) async {
TelegramBotApi tg = TelegramBotApi("token");
tg.on("update", (UpdateApi update) {
print(update.raw);
});
await tg.initIsolate();
await tg.initIsolate(tokenBot: "new_token_bot");
}
constructor
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | string_token_bot |
String token bot @botfather | yes |
|
2 | clientOption |
object | parameters di butuhkan jika method membutuhkannya | no |
- examples
TelegramBotApi tg = TelegramBotApi("token_bot");
request
No | key | value | Deskripsi | required |
---|---|---|---|---|
1 | name_method |
String | more method check tdlib-docs | yes |
2 | parameters |
object | parameters di butuhkan jika method membutuhkannya | options |
- examples
tg.request("sendMessage", parameters:{
"chat_id": 123456,
"text": "Hello world"
});
MtProto #
Untuk mtproto telegram ini belum jadi ya karena saya belum mengerti cara connect mtproto Quickstart:
import 'package:telegram_client/telegram_client.dart';
void main() async {
Mtproto tg = Mtproto();
tg.connect();
tg.on("update", (data) {
print(data);
});
}
-
Tags: #telegram #telegram_client #tdlib #mtproto #telegram_bot_api #telegram_dart #telegram_flutter #telegram_clone #telegram_userbot #telegram_bot
-
Seo Telegram Dart Telegram Client Telegram Flutter Telegram userbot Telegram Bot Telegram Tdlib Tdlib Mtproto Telegram Bot Api Telegram Library Telegram clone Telegram clone flutter Tdlib Dart Tdlib Flutter Mtproto dart Mtproto flutter Telegram Bot Api Telegram Bot Api dart Telegram Bot Api Flutter