MCPcopy
hub / github.com/DrKLO/Telegram

github.com/DrKLO/Telegram @release-11.4.2-5469 sqlite

repository ↗ · DeepWiki ↗ · release release-11.4.2-5469 ↗
73,673 symbols 378,822 edges 2,758 files 8,662 documented · 12%
README

Telegram messenger for Android

Telegram is a messaging app with a focus on speed and security. It’s superfast, simple and free. This repo contains the official source code for Telegram App for Android.

Creating your Telegram Application

We welcome all developers to use our API and source code to create applications on our platform. There are several things we require from all developers for the moment.

  1. Obtain your own api_id for your application.
  2. Please do not use the name Telegram for your app — or make sure your users understand that it is unofficial.
  3. Kindly do not use our standard logo (white paper plane in a blue circle) as your app's logo.
  4. Please study our security guidelines and take good care of your users' data and privacy.
  5. Please remember to publish your code too in order to comply with the licences.

API, Protocol documentation

Telegram API manuals: https://core.telegram.org/api

MTproto protocol manuals: https://core.telegram.org/mtproto

Compilation Guide

Note: In order to support reproducible builds, this repo contains dummy release.keystore, google-services.json and filled variables inside BuildVars.java. Before publishing your own APKs please make sure to replace all these files with your own.

You will require Android Studio 3.4, Android NDK rev. 20 and Android SDK 8.1

  1. Download the Telegram source code from https://github.com/DrKLO/Telegram ( git clone https://github.com/DrKLO/Telegram.git )
  2. Copy your release.keystore into TMessagesProj/config
  3. Fill out RELEASE_KEY_PASSWORD, RELEASE_KEY_ALIAS, RELEASE_STORE_PASSWORD in gradle.properties to access your release.keystore
  4. Go to https://console.firebase.google.com/, create two android apps with application IDs org.telegram.messenger and org.telegram.messenger.beta, turn on firebase messaging and download google-services.json, which should be copied to the same folder as TMessagesProj.
  5. Open the project in the Studio (note that it should be opened, NOT imported).
  6. Fill out values in TMessagesProj/src/main/java/org/telegram/messenger/BuildVars.java – there’s a link for each of the variables showing where and which data to obtain.
  7. You are ready to compile Telegram.

Localization

We moved all translations to https://translations.telegram.org/en/android/. Please use it.

Extension points exported contracts — how you extend this code

AudioRemixer (Interface)
Remixes audio data. See DownMixAudioRemixer, UpMixAudioRemixer or PassThroughAudioRemixer for co [10 implementers]
TMessagesProj/src/main/java/org/telegram/messenger/video/remix/AudioRemixer.java
BlockingOperation (Interface)
Utility interface to be used with executeUninterruptibly() to wait for blocking operations to complete without getting i [193 …
TMessagesProj/jni/voip/webrtc/rtc_base/java/src/org/webrtc/ThreadUtils.java
AudioResampler (Interface)
Resamples audio data. See UpsampleAudioResampler or DownsampleAudioResampler for concrete implementation [9 implementers]
TMessagesProj/src/main/java/org/telegram/messenger/video/resample/AudioResampler.java
ClientSessionCache (Interface)
ClientSessionCache is a cache of ClientSessionState objects that can be used by a client to resume a TLS session with a [4 …
TMessagesProj/jni/boringssl/ssl/test/runner/common.go
BlockingOperation (Interface)
Utility interface to be used with executeUninterruptibly() to wait for blocking operations to complete without getting i [193 …
TMessagesProj/src/main/java/org/webrtc/ThreadUtils.java
ServerSessionCache (Interface)
ServerSessionCache is a cache of sessionState objects that can be used by a client to resume a TLS session with a given [4 …
TMessagesProj/jni/boringssl/ssl/test/runner/common.go
VideoDecoderFactory (Interface)
Factory for creating VideoDecoders. [6 implementers]
TMessagesProj/src/main/java/org/webrtc/VideoDecoderFactory.java
Object (Interface)
(no doc) [5 implementers]
TMessagesProj/jni/boringssl/util/fipstools/acvp/acvptool/interactive.go

Core symbols most depended-on inside this repo

dp
called by 12632
TMessagesProj/src/main/java/org/telegram/messenger/AndroidUtilities.java
dp
called by 9531
TMessagesProj/src/main/java/org/telegram/ui/ActionBar/Theme.java
writeInt32
called by 7679
TMessagesProj/src/main/java/org/telegram/tgnet/SerializedData.java
get
called by 7468
TMessagesProj/src/main/java/org/telegram/ui/PhotoViewer.java
getString
called by 7460
TMessagesProj/src/main/java/org/telegram/messenger/LocaleController.java
readInt32
called by 6943
TMessagesProj/src/main/java/org/telegram/tgnet/SerializedData.java
size
called by 6817
TMessagesProj/src/main/java/org/telegram/ui/Components/TableLayout.java
add
called by 6812
TMessagesProj/src/main/java/org/telegram/ui/Storage/CacheModel.java

Shape

Method 64,283
Class 7,472
Function 869
Interface 752
Struct 183
Enum 74
TypeAlias 38
FuncType 2

Languages

Java97%
Go2%
Python1%
TypeScript1%

Modules by API surface

TMessagesProj/src/main/java/org/telegram/tgnet/TLRPC.java7,027 symbols
TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java961 symbols
TMessagesProj/src/main/java/androidx/recyclerview/widget/RecyclerView.java724 symbols
TMessagesProj/src/main/java/org/telegram/ui/ArticleViewer.java710 symbols
TMessagesProj/src/main/java/org/telegram/ui/PhotoViewer.java628 symbols
TMessagesProj/src/main/java/org/telegram/ui/Components/ChatActivityEnterView.java492 symbols
TMessagesProj/src/main/java/org/telegram/ui/Cells/ChatMessageCell.java471 symbols
TMessagesProj/src/main/java/org/telegram/messenger/MessagesController.java455 symbols
TMessagesProj/src/main/java/org/telegram/ui/Components/SharedMediaLayout.java442 symbols
TMessagesProj/src/main/java/org/telegram/ui/Components/EmojiView.java408 symbols
TMessagesProj/src/main/java/org/telegram/messenger/MessageObject.java378 symbols
TMessagesProj/src/main/java/org/telegram/ui/ProfileActivity.java363 symbols

For agents

$ claude mcp add Telegram \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact