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.
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.
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.
TsgcTDLib_Telegram
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
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!");
}
Een Delphi-facade over de officiële TDLib (tdjson) shared library — hetzelfde protocol dat de officiële Telegram-clients gebruiken.
Het component stuurt de TDLib-authenticatie-state-machine aan: telefoonnummer, code, optioneel 2FA-wachtwoord, en bewaart de sessie in de lokale databasemap.
SendTextMessage, SendPhotoMessage, SendVideoMessage, SendDocumentMessage en SendMessageAlbum dekken de belangrijkste TDLib-berichtinhoudstypes.
GetChats, GetChat, SearchPublicChat en GetUser ontsluiten het Telegram-adresboek en de joinde kanalen/groepen als getypeerde antwoorden.
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.
Gebruikt de officiële tdjson.dll / libtdjson.so / libtdjson.dylib — dezelfde end-to-end-encryptiegaranties als de officiële Telegram-client.
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.
Officiële bronnen voor de API die dit component implementeert.
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. | Openen | |
| Demoproject — Demos\50.Other\01.Telegram_Client Kant-en-klaar voorbeeldproject. Wordt meegeleverd in het sgcWebSockets-pakket — download hieronder de proefversie. | Openen | |
| Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi & C++ Builder en primaire bronverwijzingen — alleen voor dit component. | Openen | |
| Gebruikershandleiding (PDF) Uitgebreide handleiding die elk component in de bibliotheek behandelt. | Openen |