Telegram API-client voor Delphi & C++ Builder | eSeGeCe

Telegram TDLib-client

Bouw Telegram-toepassingen voor gebruikersaccounts of bots in Delphi/C++Builder. Wrapt de officiële Telegram TDLib en biedt authenticatie, chats, berichten en update-events.

TsgcTDLib_Telegram

Delphi/C++Builder-wrapper voor de officiële Telegram TDLib (tdjson). Stuurt de authenticatie-state-machine aan, biedt getypeerde events voor het versturen/ontvangen van berichten, en levert elke andere TDLib-update via OnEvent.

Componentklasse

TsgcTDLib_Telegram

Protocol

Telegram TDLib

Platforms

Windows, macOS, Linux, iOS, Android

Editie

Standard / Professional / Enterprise

Stel TDLib in, authenticeer, bericht

Stel Telegram.API.ApiId / ApiHash en Telegram.PhoneNumber in, hook OnAuthenticationCode voor de aanmeldflow, en verstuur berichten zodra OnAuthorizationStatus authorizationStateReady meldt.

uses
  sgcLibs;

var
  Telegram: TsgcTDLib_Telegram;
begin
  Telegram := TsgcTDLib_Telegram.Create(nil);
  Telegram.Telegram.API.ApiId   := '123456';
  Telegram.Telegram.API.ApiHash := 'your-api-hash';
  Telegram.Telegram.PhoneNumber := '+34600111222';

  Telegram.OnAuthenticationCode := TelegramAuthenticationCode;
  Telegram.OnAuthorizationStatus := TelegramAuthorizationStatus;
  Telegram.OnMessageText         := TelegramMessageText;

  Telegram.Active := True;
end;

procedure TForm1.TelegramAuthenticationCode(Sender: TObject;
  var Code: string);
begin
  Code := InputBox('Telegram', 'Enter the code you received', '');
end;

procedure TForm1.TelegramAuthorizationStatus(Sender: TObject;
  const Status: string);
begin
  if Status = 'authorizationStateReady' then
    Telegram.GetChats;
end;

procedure TForm1.TelegramMessageText(Sender: TObject;
  MessageText: TsgcTelegramMessageText);
begin
  Memo1.Lines.Add(MessageText.ChatId + ': ' + MessageText.Text);
  Telegram.SendTextMessage(MessageText.ChatId, 'received!');
end;
// include: sgcLibs.hpp

TsgcTDLib_Telegram *Telegram = new TsgcTDLib_Telegram(this);
Telegram->Telegram->API->ApiId   = "123456";
Telegram->Telegram->API->ApiHash = "your-api-hash";
Telegram->Telegram->PhoneNumber = "+34600111222";

Telegram->OnAuthenticationCode = TelegramAuthenticationCode;
Telegram->OnAuthorizationStatus = TelegramAuthorizationStatus;
Telegram->OnMessageText = TelegramMessageText;

Telegram->Active = true;

void __fastcall TForm1::TelegramAuthenticationCode(TObject *Sender, AnsiString &Code)
{
  Code = InputBox("Telegram", "Enter the code you received", "");
}

void __fastcall TForm1::TelegramAuthorizationStatus(TObject *Sender, const AnsiString Status)
{
  if (Status == "authorizationStateReady")
    Telegram->GetChats();
}

void __fastcall TForm1::TelegramMessageText(TObject *Sender, TsgcTelegramMessageText *MessageText)
{
  Memo1->Lines->Add(MessageText->ChatId + ": " + MessageText->Text);
  Telegram->SendTextMessage(MessageText->ChatId, "received!");
}

Wat zit erin

Een Delphi-facade over de officiële TDLib (tdjson) shared library — hetzelfde protocol dat de officiële Telegram-clients gebruiken.

Authenticatieflow

Het component stuurt de TDLib-authenticatie-state-machine aan: telefoonnummer, code, optioneel 2FA-wachtwoord, en bewaart de sessie in de lokale databasemap.

Berichten versturen

SendTextMessage, SendPhotoMessage, SendVideoMessage, SendDocumentMessage en SendMessageAlbum dekken de belangrijkste TDLib-berichtinhoudstypes.

Chats & contacten

GetChats, GetChat, SearchPublicChat en GetUser ontsluiten het Telegram-adresboek en de joinde kanalen/groepen als getypeerde antwoorden.

Update-stream

OnEvent levert elk TDLib-updateXxx-event — nieuwe berichten, typende gebruikers, channel-posts, bewerkingen, verwijderingen — als ruwe event-naam plus JSON voor verdere routering, naast de getypeerde events OnMessageText, OnNewChat en OnNewCallbackQuery voor de meest voorkomende gevallen.

Native TDLib

Gebruikt de officiële tdjson.dll / libtdjson.so / libtdjson.dylib — dezelfde end-to-end-encryptiegaranties als de officiële Telegram-client.

Cross-platform

TDLib is beschikbaar voor Windows, macOS, Linux, Android en iOS. Het component vindt en laadt de native library automatisch per platform; jij handelt alleen de getypeerde bridging af via de bovenstaande events en methodes.

Specificaties & referenties

Officiële bronnen voor de API die dit component implementeert.

Documentatie & demo's

Deep-link naar de componentreferentie, pak het kant-en-klare demoproject en download de proefversie.

Online help — API_Telegram Volledige referentie van eigenschappen, methodes en events voor dit component.
Demoproject — Demos\50.Other\01.Telegram_Client Kant-en-klaar voorbeeldproject. Wordt meegeleverd in het sgcWebSockets-pakket — download hieronder de proefversie.
Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi & C++ Builder en primaire bronverwijzingen — alleen voor dit component.
Gebruikershandleiding (PDF) Uitgebreide handleiding die elk component in de bibliotheek behandelt.
De beste deal: All-AccessElk eSeGeCe-product, inclusief Premium-ondersteuning, vanaf €1,059 per jaar.
Bekijk de All-Access-prijzen

Klaar om een Telegram-client te bouwen?

Download de gratis proefversie en voeg Telegram-messaging toe aan je Delphi-toepassingen.