Telegram TDLib クライアント

Delphi / C++Builder で Telegram のユーザーアカウントまたはボットアプリケーションを構築します。公式 Telegram TDLib をラップし、認証、チャット、メッセージ、更新イベントを公開します。

TsgcTDLib_Telegram

公式 Telegram TDLib (tdjson) 向けの Delphi / C++Builder ラッパーです。client_id のライフサイクル、認証状態、メッセージの送受信、ロングポール更新ストリームを処理します。

コンポーネントクラス

TsgcTDLib_Telegram

プロトコル

Telegram TDLib

プラットフォーム

Windows, macOS, Linux, iOS, Android

エディション

Standard / Professional / Enterprise

TDLib を設定し、認証してメッセージを送信する

ApiId / ApiHash を設定し、コンポーネントを tdjson ライブラリに向けたうえで、OnTelegramUpdate をフックして認証状態を扱い、メッセージの送信を開始します。

uses
  sgcLibs;

var
  Telegram: TsgcTDLib_Telegram;
begin
  Telegram := TsgcTDLib_Telegram.Create(nil);
  Telegram.TDLibParameters.ApiId   := 123456;
  Telegram.TDLibParameters.ApiHash := 'your-api-hash';
  Telegram.LibraryPath := 'tdjson.dll';

  Telegram.OnTelegramUpdate := procedure(Sender: TObject;
    const aUpdate: string)
  begin
    Memo1.Lines.Add(aUpdate);
  end;

  Telegram.Active := True;
  Telegram.SendMessage('@username', 'hello from Delphi');
end;
// uses: sgcLibs
TsgcTDLib_Telegram *Telegram = new TsgcTDLib_Telegram(this);
Telegram->TDLibParameters->ApiId   = 123456;
Telegram->TDLibParameters->ApiHash = "your-api-hash";
Telegram->LibraryPath = "tdjson.dll";

Telegram->Active = true;
Telegram->SendMessage("@username", "hello from Delphi");

主な構成

公式 TDLib (tdjson) 共有ライブラリに対する Delphi ファサードです。公式 Telegram クライアントが使用するものと同じプロトコルを採用しています。

認証フロー

コンポーネントは TDLib の認証ステートマシン (電話番号、認証コード、オプションの 2FA パスワード) を進行させ、ローカルデータベースディレクトリ配下にセッションを永続化します。

メッセージ送信

SendMessageSendPhotoSendVideoSendDocumentSendVoiceNote ほか、TDLib のメッセージコンテンツタイプをカバーする型付きメソッドを提供します。

チャットと連絡先

GetChatsGetChatSearchPublicChatGetUser により、Telegram のアドレス帳および参加中のチャネル / グループを型付きレスポンスとして取得できます。

更新ストリーム

OnTelegramUpdate は TDLib のすべての updateXxx イベント (新着メッセージ、ユーザーのタイピング、チャネル投稿、編集、削除) を生の JSON として配信し、下流でのルーティングに利用できます。

ネイティブ TDLib

公式の tdjson.dll / libtdjson.so / libtdjson.dylib を使用します。公式 Telegram クライアントと同等のエンドツーエンド暗号化保証を提供します。

クロスプラットフォーム

TDLib は Windows、macOS、Linux、Android、iOS 向けに提供されています。プラットフォームごとに LibraryPath を設定するだけで、型付きブリッジはコンポーネントが処理します。

仕様とリファレンス

本コンポーネントが実装する API の信頼できる一次情報源です。

ドキュメントとデモ

コンポーネントリファレンスへのディープリンク、すぐに実行可能なデモプロジェクト、体験版のダウンロードを提供します。

オンラインヘルプ — API_Telegram 本コンポーネントのプロパティ、メソッド、イベントの完全なリファレンスです。
デモプロジェクト — Demos\50.Other\01.Telegram_Client すぐに実行可能なサンプルプロジェクトです。sgcWebSockets パッケージに同梱されています。以下から体験版をダウンロードしてください。
技術ドキュメント (PDF) 本コンポーネントに特化した機能解説、クイックスタート、Delphi および C++ Builder のコードサンプル、一次情報源リファレンスを収録しています。
ユーザーマニュアル (PDF) ライブラリ内のすべてのコンポーネントを網羅した総合マニュアルです。

Telegram クライアントを構築する準備はできましたか?

体験版をダウンロードして、Telegram メッセージング機能を Delphi アプリケーションに追加しましょう。