Go to file
odysseusmax c2ace9d089 update readme 2020-08-12 11:12:53 +00:00
app update readme 2020-08-12 11:12:53 +00:00
.gitignore initial commit 2020-08-10 07:27:52 +00:00
LICENSE Initial commit 2020-08-10 06:50:16 +00:00
Procfile initial commit 2020-08-10 07:27:52 +00:00
README.md update readme 2020-08-12 11:12:53 +00:00
app.json add multiple channel index support 2020-08-12 10:39:29 +00:00
requirements.txt initial commit 2020-08-10 07:27:52 +00:00
runtime.txt initial commit 2020-08-10 07:27:52 +00:00

README.md

Telegram Index

Python Web App which indexes a telegram channel(or a chat) and serves its files for download.

Overview

  • This app indexes all the available messages.
  • If the message is a media message, you can download the file.
  • You can search for specific terms too.

Deploy Guide

  • Clone to local machine.
$ git clone https://github.com/odysseusmax/tg-index.git
$ cd tg-index
  • Create and activate virtual environment.
$ pip3 install virtualenv
$ virtualenv venv
$ source venv/bin/activate
  • Install dependencies.
$ pip3 install -U -r requirements.txt
  • Environment Variables.
Variable Name Value
API_ID (required) Telegram api_id obtained from https://my.telegram.org/apps.
API_HASH (required) Telegram api_hash obtained from https://my.telegram.org/apps.
CHAT_ID (required) Id of the telegram channel (or chat) to be indexed. Separate id's with space if you want to index more than one channel.
SESSION_STRING (required) String obtained by running $ python3 app/generate_session_string.py. (Login with the telegram account which is a participant of the given channel (or chat).
PORT (optional) Port on which app should listen to, defaults to 8080.
HOST (optional) Host name on which app should listen to, defaults to 0.0.0.0.
DEBUG (optional) Give some value to set logging level to debug, info by default.
  • Run app.
$ python3 -m app
  • Other quick methods.

Deploy Run on Repl.it

Video Tutorial

Here's a YouTube tutorial video for deploying to Heroku. Video Link

Contributions

Contributions are welcome.

Contact

You can contact me @odysseusmax.

License

Code released under The GNU General Public License.