All Projects → 30mb1 → Telegram-mailer

30mb1 / Telegram-mailer

Licence: other
Web-application for sending messages to list of users. Use several accounts to avoid ban.

Programming Languages

CSS
56736 projects
HTML
75241 projects
python
139335 projects - #7 most used programming language
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Telegram-mailer

tgmount
Mount Telegram dialogs and channels as a Virtual File System.
Stars: ✭ 52 (+85.71%)
Mutual labels:  telegram-api, telethon
telegram
A Matrix-Telegram hybrid puppeting/relaybot bridge
Stars: ✭ 914 (+3164.29%)
Mutual labels:  telegram-client, telethon
pmChatBot
A simple feed-back bot written in PHP. Like Livegram. Heroku Support
Stars: ✭ 31 (+10.71%)
Mutual labels:  telegram-api, telegram-bots
echotron
An elegant and concurrent library for Telegram bots in Go.
Stars: ✭ 95 (+239.29%)
Mutual labels:  telegram-api, telegram-bots
nimgram
An MTProto client written in Nim 👑
Stars: ✭ 61 (+117.86%)
Mutual labels:  telegram-api, telegram-client
Telethon
Pure Python 3 MTProto API Telegram client library, for bots too!
Stars: ✭ 5,805 (+20632.14%)
Mutual labels:  telegram-api, telethon
AbilityBots
The AbilityBots abstraction and API for building expressive Java Telegram Bots
Stars: ✭ 12 (-57.14%)
Mutual labels:  telegram-api, telegram-bots
telegram
📚 Golang bindings for Telegram API
Stars: ✭ 15 (-46.43%)
Mutual labels:  telegram-api, telegram-bots
pyrubrum
An intuitive framework for creating Telegram bots.
Stars: ✭ 33 (+17.86%)
Mutual labels:  telegram-api, telegram-client
SophiaBot
Hi There ✋ I'M Sophia 3.0 ❤️ NEW VERSION OF SOPHIA.. Source Code of @SophiaSLBot.
Stars: ✭ 44 (+57.14%)
Mutual labels:  telegram-bots, telethon
WTelegramClient
Telegram client API library written 100% in C# and .NET Standard
Stars: ✭ 192 (+585.71%)
Mutual labels:  telegram-api, telegram-client
addmember-telegram
Add member auto to telegram group
Stars: ✭ 170 (+507.14%)
Mutual labels:  telegram-api, telethon
telegram client
library for help you make userbot or bot telegram and support tdlib telegram database and only support nodejs dart and google-apps-script
Stars: ✭ 38 (+35.71%)
Mutual labels:  telegram-api, telegram-client
gotgbot
Autogenerated Go wrapper for the telegram API. Inspired by the python-telegram-bot library.
Stars: ✭ 178 (+535.71%)
Mutual labels:  telegram-api, telegram-bots
Telegram-PHP-App
App base for Telegram bots
Stars: ✭ 14 (-50%)
Mutual labels:  telegram-api, telegram-bots
SpamBot
First Spam Bot repo ever made for telegram bots. Powerful spambot for telegram made with python and telethon.
Stars: ✭ 67 (+139.29%)
Mutual labels:  telethon, telegram-spammer
tdlight-telegram-bot-api
The TDLight Telegram Bot API is an actively enhanced fork of the original Bot API, featuring experimental user support, proxies, unlimited files size, and more.
Stars: ✭ 71 (+153.57%)
Mutual labels:  telegram-api, telegram-bots
grouphelperbot
A Telegram Bot made to help group admins, with Italian/English support.
Stars: ✭ 26 (-7.14%)
Mutual labels:  telegram-api, telegram-bots
telresender
A Telegram bot, which resend your message to another account
Stars: ✭ 22 (-21.43%)
Mutual labels:  telegram-api, telegram-bots
tdlight-java
Complete Bot and Userbot Telegram library based on TDLib
Stars: ✭ 128 (+357.14%)
Mutual labels:  telegram-api, telegram-bots

Telegram mailer

Telegram mailer is a web-application that allows sending messages to list of users from a number of accounts that you have connected to it, so that you don't have to do it manually or worry about ban. It is a great tool for automation of mail distribution for your customer base via telegram.

Getting started

Requirements

  • Python 3
  • MongoDB 3.2+
  • Nginx/Apache
  • 1+ telegram accounts

Installation

Clone repository

git clone https://github.com/30mb1/Telegram-mailer.git
cd Telegram-mailer

Create virtual environment and install requirements.

virtualenv -p python3 venv
source venv/bin/activate
pip install -r requirements.txt

Set up proxy server (example for nginx):

  • Create new configuration file in save it in /etc/nginx/sites-available/your_app.conf

    Content of your_app.conf:

    server {
        listen 80;
        server_name some_domain.com;
     
        root /path/to/your_app;
     
        access_log /path/to/your_app/logs/access.log;
        error_log /path/to/your_app/logs/error.log;
     
        location / {
            proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_redirect off;
            if (!-f $request_filename) {
                proxy_pass http://127.0.0.1:8000; # you can choose another port
                break;
            }
        }
    }
    
  • Create symbol link for sites-enabled:

    sudo ln -s /etc/nginx/sites-available/your_app.conf /etc/nginx/sites-enabled/
    
  • Check configuration for mistakes:

    nginx -t
    
  • If it is ok, reload nginx.

    service nginx reload
    

Now you can run application locally with gunicorn, using nginx for handling external requests and redirecting them.

Setting up

Application use telegram client api, so that we need api keys. Follow instructions on this page to get api_id and api_hash. You then need to install them in app, using initialize.py module:

> cd Telegram-mailer
> source venv/bin/activate
> python initialize.py
Enter api_id:
YOUR_API_ID
Enter api_hash:
YOUR_API_HASH

Now you can run application and check it locally or from external address that we specified in .conf file.

cd Telegram-mailer
source venv/bin/activate
# choose port, that we used in nginx .conf file earlier
gunicorn app:app -b 127.0.0.1:8000 -w 8 --threads 8 # you can run it in screen too
# you can set another number of workers or threads, depenging on your system characteristics
# more detailed info you can find for example here
# http://docs.gunicorn.org/en/stable/settings.html

To make program work we need to attach some telegram accounts to it, so program will use them for message delivery. You can do it on account page of our app. There you also can change login-password

http://pix.toile-libre.org/upload/original/1508499881.png

After putting your phone number in form, you will receive a code, that you need to paste in new form, that will appear

http://pix.toile-libre.org/upload/original/1508500245.png

If the code is correct, number will be marked as activated and stay on this page. This account now is added to list that will be used for delivery. It is better to add more accounts, so that chances of their ban will be less, because app use accounts by queue.

Run

To start message distribution go to config page

http://pix.toile-libre.org/upload/original/1508502322.png

Specify a list of users you want deliver your message to in form @tg_username/phone_number and a message. Interval is used for pause before sending next message in order to avoid ban.

Accounts, attached to app would be used by queue when sending messages. It means, that if we have 10 accounts and want to send message to 20 users, the order will be:

acc1 -> user1
pause for some interval
acc2 -> user2
...
acc1 -> user11
acc2 -> user12

While app is sending messages, there will be appropriate window on mailer tab. You should not start a new distribution before the old one is ended, because of ban possibility.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].