Die Community von Enthusiasten entwickelt Opengram â eine Open-Source-Implementierung des Serverteils des Messengers Telegram. Das Projekt stellt einen eigenstĂ€ndigen Server dar, der das MTProto-Protokoll (unterstĂŒtzt Layer bis 216) implementiert, der zur Ablösung der offiziellen Serverinfrastruktur von Telegram bei der Bereitstellung auf eigener Hardware verwendet werden kann. Offizielle Telegram-Kunden (Telegram Desktop, mobile Anwendungen) werden unterstĂŒtzt, nachdem die Adresse des Rechenzentrums und der öffentliche RSA-SchlĂŒssel des Servers geĂ€ndert wurden.
Opengram ist ein Fork des Projekts mytelegram. Der Code von Opengram ist in C# (.NET 9) geschrieben und
wird im Quellcode ohne Angabe einer Lizenz verbreitet. Das ursprĂŒngliche Projekt mytelegram wird unter der Apache 2.0-Lizenz bereitgestellt, die gemÀà Absatz 4a verlangt, dass eine Kopie des Lizenztextes bei der Verbreitung abgeleiteter Arbeiten beigefĂŒgt wird.
Der Server basiert auf einem Satz von Mikroservices, die ĂŒber Docker Compose gestartet werden: MTProto-Verbindungs-Gateway, Autorisierungs- und SchlĂŒsseltausch-Server, Sitzungsserver, Server Befehle und Anfragen (CQRS-Architektur), HTTP Bot API, Verwaltungs-API, Speicher- und Dateiverteilungsserver, TURN/STUN fĂŒr Anrufe und einen Dienst zum Versenden von BestĂ€tigungscodes. Als Infrastruktur werden MongoDB, Redis, RabbitMQ und MinIO verwendet.
Zu den unterstĂŒtzten Funktionen gehören: persönliche Chats, Gruppen, Supergruppen und KanĂ€le, geheime (Ende-zu-Ende) Chats, Sprach- und Videoanrufe (ĂŒber TURN/STUN und SFU mediasoup), Bots und Bot API, Datenschutzeinstellungen und Zwei-Faktor-Authentifizierung, Sticker, Reaktionen und benutzerdefinierte Emojis; Stars und Star Gifts, einschlieĂlich Wiederverkauf und Upgrade; Geschichten, Themen und HintergrĂŒnde; geplante und selbstlöschende Nachrichten.
Quelle: opennet.ru
