Skip to content

Latest commit

 

History

History
234 lines (152 loc) · 17 KB

File metadata and controls

234 lines (152 loc) · 17 KB

ลูกค้า Telegram

Telegram Client เป็นไลบรารีสำหรับให้คุณโต้ตอบกับไคลเอนต์ Telegram แบบเรียลไทม์ ดังนั้นคุณจึงสามารถสร้างแอปพลิเคชัน Telegram / บอท / ผู้ใช้บอทที่ไม่เป็นทางการได้

การสร้าง Telegram Fire

เพื่อจะสามารถใช้ไลบรารีนี้ได้ คุณต้องมี api_id และ api_hash

กรุณาสร้าง https://my.telegram.org/auth ของคุณเอง

ข้อเท็จจริง

  • ไลบรารีนี้ถูกสร้างขึ้นใหม่ เนื่องจากบางทีคนอื่นๆ ส่วนใหญ่อาจสับสนกับไลบรารีก่อนหน้านี้ซึ่งผูกโยงกับส่วนที่ต้องมีการอ้างอิงของฉันเอง ไม่มีเอกสารประกอบใดๆ

  • อัปเดตด้วย tdlib เวอร์ชันล่าสุดอยู่เสมอ ดังนั้นคุณจึงไม่ต้องรอให้ฉันอัปเดต

คุณสมบัติ

  • เร็วมาก ไลบรารีแบบอะซิงค์ (เธรดที่ไม่บล็อก)
  • ใช้งานง่าย

ตัวอย่าง

ติดตั้ง

ก่อนการติดตั้ง โปรดแน่ใจว่าคุณทราบพื้นฐานของ dart / flutter อย่างน้อยคุณต้องติดตั้ง flutter / dart บนคอมพิวเตอร์ / อุปกรณ์ของคุณแล้ว เว็บไซต์ Flutter

  • Dart / Cli Only No gui หากคุณต้องการใช้โดยไม่มี GUI คุณต้องคอมไพล์และติดตั้ง Tdlib หากคุณคอมไพล์ไม่ได้ คุณสามารถดาวน์โหลดไลบรารีที่คอมไพล์แล้วได้ที่นี่ Tdlib ค้นหาตามระบบปฏิบัติการของคุณและติดตั้งด้วยตนเอง / ใส่ไว้ในโปรเจ็กต์ของคุณ
dart pub เพิ่ม telegram_universe
-

- **Flutter GUI**
โดยพื้นฐานแล้วจะเหมือนกับ Dart ความแตกต่างคือคุณไม่จำเป็นต้องติดตั้ง tdlib ด้วยตนเอง
เพียงแค่เพิ่มคำสั่ง

``` ทุบตี
flutter pub เพิ่ม tdlib_library
-

## เอกสารประกอบ

### รับรองการเริ่มต้นแล้ว

วิธีการบังคับสามารถเรียกได้อย่างอิสระหลังจาก **on** / ก่อนวิธีการ **on** แต่ฉันแนะนำให้เรียกก่อน **on**

**ตัวอย่าง:**

```ลูกดอก
telegramClient.ensureInitialized();
-


### เริ่มต้นแล้ว

จะต้องเรียกวิธีนี้หลังจากวิธี **on** เนื่องจากใช้ในการประมวลผลการอัปเดต

**ตัวอย่าง:**

```ลูกดอก
รอ telegramClient.initialized();
-

### บน

วิธีการนี้มีประโยชน์ในการรับการอัปเดตข้อมูลจากการเรียกใช้ / อัปเดต tdlib

**ตัวอย่าง:**

```ลูกดอก
telegramClient.on("update", (อัปเดตแผนที่) async {
พิมพ์(อัพเดต); 
-
-


### สร้างไคลเอนต์

ในการสร้างไคลเอนต์ใหม่ โปรดตรวจสอบให้แน่ใจว่าคุณได้เรียกใช้วิธีการนี้

**ตัวอย่าง:**

```ลูกดอก
new_tdlib_client_id สุดท้าย = telegramClient.createClient();
พิมพ์("รหัสไคลเอนต์ Tdlib ใหม่: ${new_tdlib_client_id}");
-


### เรียกใช้

หากต้องการเรียกใช้ Telegram tdlib api คุณต้องอ่านเอกสารโดยตรง

- [Tdlib Docs](https://core.telegram.org/tdlib/docs/classtd_1_1td__api_1_1_function.html) อ่านง่ายสำหรับสาธารณชน
- [Tdlib Tl](https://github.com/tdlib/td/blob/master/td/generate/scheme/td_api.tl) เป็นเวอร์ชันใหม่ล่าสุดและมีประโยชน์มากที่สุดหากคุณใช้ tdlib เวอร์ชันล่าสุดซึ่งคอมไพล์ตัวเองได้โดยตรง

ที่นี่ฉันให้เฉพาะพารามิเตอร์แผนที่ข้อมูล แผนที่ / json นี้ประกอบด้วยคีย์สำคัญหลายรายการ


- คีย์ | คำอธิบาย | มูลค่า | จำเป็น |
-
- **@พิมพ์** | นี่เต็มไปด้วยวิธีการจาก tdlib | **สตริง** | **ใช่** |
- **@รหัสลูกค้า** | ซึ่งประกอบด้วย ID ไคลเอนต์จากวิธี **createClient** | **int** | **หากเป็นวิธีการซิงค์เลกแกรม

- **ตั้งค่าระดับความซ้ำซ้อนของบันทึก**
เนื่องจากนี่เป็นวิธีการบันทึก คุณจึงใช้วิธีการซิงค์
และไม่จำเป็นต้องกรอกรหัส **@client_id**

ตัวอย่าง:


```ลูกดอก
telegramClient.invokeSync(
tdlib_scheme.SetLogVerbosityLevel.สร้าง(
ระดับความกริยาใหม่: 0,
).toJson(),
-
-

- **ส่งข้อความ**
หากต้องการส่งข้อความโดยใช้ไลบรารีนี้ โปรดตรวจสอบให้แน่ใจว่าไคลเอนต์ได้เข้าสู่ระบบแล้ว
[อ้างอิงเอกสาร SendMessage](https://core.telegram.org/tdlib/docs/classtd_1_1td__api_1_1send_message.html)

```ลูกดอก

/// รับจาก createClient หรืออัพเดต
int client_id = 1; 
สุดท้าย getMe = รอ telegramClient.invoke({
"@type": "รับฉัน",
"@client_id": รหัสลูกค้า,
-
พิมพ์(รับฉัน); 
รอ telegramClient.invoke({
"@type": "ส่งข้อความ",
"@client_id": รหัสลูกค้า,
"chat_id": getMe["id"],
"ตัวเลือก": {
"@type": "ตัวเลือกการส่งข้อความ",
"ปิดใช้งานการแจ้งเตือน": จริง,
-
"เนื้อหาข้อความอินพุต": {
"@type": "ข้อความอินพุต",
"ข้อความ": {
"@type": "จัดรูปแบบข้อความ",
"ข้อความ": "สวัสดีโลก"
-
-
-
-

ข้างต้นเป็นเพียงตัวอย่าง หากต้องการใช้วิธีการอื่น เพียงกรอกข้อมูลพารามิเตอร์ ตรวจสอบให้แน่ใจว่าจำเป็นต้องกรอกคีย์พารามิเตอร์ตามตาราง ฉันหมายความว่ามีคีย์หลายตัวที่ต้องกรอก หากไม่กรอก ระบบจะส่งข้อมูลข้อผิดพลาด

## ช่วย

**ยาก**? ฉันได้สร้าง **ไลบรารี** นี้ **ให้ดีที่สุด** ที่สุดเท่าที่จะเป็นไปได้ และ **พยายามทำให้อ่านง่าย** และ **ใช้งานได้ดีที่สุดเท่าที่เป็นไปได้**

หากคุณยังรู้สึก **ลำบาก** และ **สับสน** ลองเข้าร่วม **กลุ่ม** ของเราได้ฟรีโดยไม่มีค่าใช้จ่ายใดๆ

- [โทรเลข](https://t.me/DEVELOPER_GLOBAL_PUBLIC)
- [ดิสคอร์ด](https://discord.gg/h4qanyN7)

**ก่อนเข้าร่วม** โปรดแน่ใจว่าคุณใช้โปรไฟล์ที่ชัดเจน** เราไม่สนใจว่าคุณเป็นใครและมียศอะไร แต่ **ตรวจสอบให้แน่ใจว่าคุณมีชื่อผู้ใช้และรูปโปรไฟล์** และพยายามแชทในกลุ่ม** ไม่ใช่แชทส่วนตัว** เนื่องจากเป็นกลุ่มสาธารณะและผู้อื่นอาจสับสนได้** หากคุณ **ไม่ปฏิบัติตาม** เรื่องนี้ คุณอาจจะไม่สามารถเข้าแชทในกลุ่มได้และจะถูกแบน** วิธีแก้ไขคือใช้บัญชีที่สอง เพราะหลังจากที่ถูกแบนแล้ว เราจะไม่สามารถตอบกลับได้อย่างรวดเร็ว


## มีปัญหาอื่น ๆ อีกไหม?

คุณมีปัญหาใด ๆ ด้านล่างนี้หรือไม่?

- **สับสน / ไม่ง่ายต่อการใช้**
สับสนเกี่ยวกับการใช้โปรแกรมนี้ เช่น เวียนหัวหรือคลื่นไส้? เพราะข้อมูล tdlib มีความซับซ้อนใช่ไหม?

- **ล่าช้า / ไม่สามารถขยายธุรกิจได้**
คุณรู้สึกว่าสิ่งนี้ล่าช้าและไม่สามารถขยายไปสู่ธุรกิจได้ใช่หรือไม่?

ใช่ เราได้พยายามอย่างดีที่สุดแล้ว เราปฏิบัติตามมาตรฐานเริ่มต้นเท่านั้น มันไม่ล่าช้าและสามารถทำได้จริงสำหรับขนาดธุรกิจ แต่ **tdlib** มีน้ำหนักมากและสิ้นเปลือง **I/O** / **หน่วยความจำ**

ใช่ ฉันใช้มันเพื่อธุรกิจส่วนตัวของฉัน ใช่แล้ว มันเป็นเรื่องจริงที่มันสิ้นเปลืองทรัพยากรแม้ว่าโค้ดของฉันจะมีประสิทธิภาพและไม่ได้บล็อคเธรดก็ตาม สิ่งนี้เกิดขึ้นได้จากหลายปัจจัย เช่น รูปแบบโค้ดและภาษาโค้ดของคุณ

หากคุณต้องการฟีเจอร์เพิ่มเติมและสามารถสร้างให้รองรับการขยายธุรกิจได้อย่างง่ายดาย คุณอาจสนใจโปรเจ็กต์นี้ของฉัน

[ภาษาสาธารณะทั่วไป](https://github.com/generalpubliclanguage)

**ภาษา**โค้ดคืออะไร? นี่คือ **ภาษาโค้ด** ที่ **ออกแบบมาเป็นพิเศษ** เพื่อให้คุณสร้าง **โครงการใดๆ** ได้อย่างง่ายดายและมีรูปแบบโค้ดที่เข้าใจง่าย** และ **โครงสร้างข้อมูล** ที่ **ง่ายกว่า** tdlib

ภาษาโค้ดมีฟีเจอร์ในตัว ดังนั้นคุณจึงไม่จำเป็นต้องยุ่งยากในการเพิ่มสิ่งนี้และสิ่งนั้นลงในโปรเจ็กต์ของคุณ

เราได้ทำการตรวจสอบมาเป็นเวลานานแล้ว จริงๆ แล้วปัญหานี้เกิดขึ้นกับทั้งโครงการ **tdlib** และ **dart**

tdlib เป็นทรัพยากรที่ต้องใช้มาก dart มีขนาดใหญ่เกินไปที่จะแยกเธรดลูปอินฟินิตี้ และยังใช้เวลาหลายนาทีในการปลดหน่วยความจำ ดังนั้นจึงเป็นการสิ้นเปลืองอย่างมากหากมีการอัปเดตจำนวนมาก โดยเฉพาะอย่างยิ่งหากธุรกิจขนาดใหญ่ต้องการไคลเอนต์จำนวนมาก

เพื่อให้มีการสร้างภาษาโค้ด **General Public Language** ขึ้นมาและสามารถเป็นโซลูชันสำหรับความต้องการของคุณได้

หากคุณรู้สึกว่าฉันจำเป็นต้องอัปเดตทันที โปรดช่วยฉันโดยทำดังต่อไปนี้

## สนับสนุนฉัน

หากคุณพบว่าโปรแกรมนี้มีประโยชน์ คุณสามารถสนับสนุนฉันได้ [GITHUB AZKADEV](https://github.com/azkadev) โดยคลิกที่ลิงก์ดังกล่าว คุณจะสามารถติดตามโซเชียลมีเดียและผู้สนับสนุนของฉันได้ ผมไม่รังเกียจถ้าคุณแค่ติดตาม/บริจาคเงินนิดหน่อย

- https://www.patreon.com/c/azkadev
- https://opencollective.com/azkadev
- https://paypal.me/azkaaxeliongibran
- https://paypal.me/azkadev

ขอบคุณ


อัซคาเดฟ - 18-07-2568


## แท็ก

- tdlib ลูกดอก
- tdlib กระพือปีก
- เทเลแกรม ดาร์ท
- Telegram Flutter
- ไคลเอนต์ Telegram Dart
- ไคลเอนต์ Telegram Flutter