Desde sgcWebSockets 4.4.2 Telegram es compatible con dispositivos iOS64, lo que significa que puedes construir tu propio cliente Telegram. TDLib se encarga de todos los detalles de implementación de red, cifrado y almacenamiento local de datos. TDLib admite todas las características de Telegram.
Ventajas de TDLib (Telegram Database Library)
- Multiplataforma: puede usarse en Windows, Android, iOS, MacOS, Linux... actualmente sgcWebSockets solo admite Windows (win32 y win64).
- Fácil de usar: usa mensajes json para comunicarse entre la aplicación y telegram.
- Alto rendimiento: en la Telegram Bot API, cada instancia de TDLib gestiona más de 24000 bots.
- Consistente: TDLib garantiza que todas las actualizaciones se entregarán en el orden correcto.
- Fiable: TDLib se mantiene estable en conexiones de internet lentas y poco fiables.
- Seguro: Todos los datos locales se cifran usando una clave de cifrado proporcionada por el usuario.
- Totalmente asíncrono: Las peticiones a TDLib no se bloquean entre sí. Las respuestas se enviarán cuando estén disponibles.
Configuración
Copia la biblioteca libtdjson.a a los siguientes directorios:
- C:\Program Files (x86)\Embarcadero\Studio\<IDE Version>\lib\iosDevice64\debug
- C:\Program Files (x86)\Embarcadero\Studio\<IDE Version>\lib\iosDevice64\release
Donde <IDE Version> es el número que identifica tu versión de Rad Studio (ejemplo: Rad Studio 10.4 es 21.0).
Crea tu Telegram
Para obtener un API id y desarrollar tu propia aplicación usando la API de Telegram necesitas hacer lo siguiente:
- Regístrate en Telegram usando cualquier aplicación.
- Inicia sesión en tu Telegram core: https://my.telegram.org.
- Ve a API development tools y rellena el formulario.
- Obtendrás direcciones básicas así como los parámetros api_id y api_hash necesarios para la autorización del usuario.
- Por el momento cada número solo puede tener un api_id conectado.
Estos valores deben establecerse en la propiedad Telegram.API del componente Telegram. Para autenticarte debes establecer tu número de teléfono (con código internacional), ejemplo: 34699123456
Pueden configurarse los siguientes parámetros:
- ApplicationVersion: versión de la aplicación, ejemplo: 1.0
- DeviceModel: modelo del dispositivo, ejemplo: desktop
- LanguageCode: código de idioma del usuario, ejemplo: en.
- SystemVersion: versión del sistema operativo, ejemplo: windows.
Una vez que hayas configurado el componente Telegram, puedes establecer la propiedad Active a true y el programa intentará conectarse a Telegram.
Código de ejemplo iOS
oTelegram := TsgcTDLib_Telegram.Create(nil);
oTelegram.Telegram.API.ApiHash := 'your api hash';
oTelegram.Telegram.API.ApiId := 'your api id';
oTelegram.PhoneNumber := 'your phone number';
oTelegram.ApplicationVersion := '1.0';
oTelegram.DeviceModel := 'Desktop';
oTelegram.LanguageCode := 'en';
oTelegram.SystemVersion := 'iOS';
oTelegram.Active := true;
procedure OnAuthenticationCode(Sender: TObject; var Code: string);
begin
InputBox('Telegram', 'Introduce Telegram Code', '');
end;
procedure OnMessageText(Sender: TObject; MessageText: TsgcTelegramMessageText);
begin
Log('Message Received: ' + MessageText.Text);
end;
procedure OnConnectionStatus(Sender: TObject; const Status: string);
begin
if Status = 'connectionStateReady' then
oTelegram.SendTextMessage('1234', 'Hello Telegram!');
end;


Capturas del cliente Telegram para iOS
