All Projects → JosXa → BotListBot

JosXa / BotListBot

Licence: MIT license
Repository of Telegram's BotListBot

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to BotListBot

tg-inviter
Generate personal invite links for Telegram channels
Stars: ✭ 26 (-52.73%)
Mutual labels:  python-telegram-bot
TheRealPhoenixBot
A group management bot written in python3 using the python-telegram-bot library.
Stars: ✭ 59 (+7.27%)
Mutual labels:  python-telegram-bot
BroadcastBot
A simple Telegram bot that can broadcast messages and media to the bot subscribers. with mongo DB support
Stars: ✭ 73 (+32.73%)
Mutual labels:  python-telegram-bot
raspy-temperature-bot
This is a telegram bot hosted by a Raspberry Pi equipped with a temperature and humidity sensor. The bot is capable of sending plots and readings.
Stars: ✭ 31 (-43.64%)
Mutual labels:  python-telegram-bot
Music-downloader-bot
A telegram bot that can send you high-quality audio 🎧🎧🎧
Stars: ✭ 35 (-36.36%)
Mutual labels:  python-telegram-bot
memes-reposter
bot for automatic broadcasting content into telegrams channels from reddit/imgur/rss
Stars: ✭ 35 (-36.36%)
Mutual labels:  python-telegram-bot
allukabot
Modular HunterxHunter themed Telegram Bot for managing your group with additional features.
Stars: ✭ 21 (-61.82%)
Mutual labels:  python-telegram-bot
telegram-search-bot
Telegram中文聊天记录搜索机器人
Stars: ✭ 127 (+130.91%)
Mutual labels:  python-telegram-bot
EPUB-to-PDF
Telegram bot EPUB to PDF converter
Stars: ✭ 25 (-54.55%)
Mutual labels:  python-telegram-bot
python-telegram-bot-seed
Skeleton project for implementing bots in Python using the module python-telegram-bot
Stars: ✭ 25 (-54.55%)
Mutual labels:  python-telegram-bot
mention-all-bot
Telegram bot that allows you to notify all members of the group.
Stars: ✭ 25 (-54.55%)
Mutual labels:  python-telegram-bot
Windows-Python-RAT
A New Microsoft Windows Remote Administrator Tool [RAT] with Python by Sir.4m1R.
Stars: ✭ 70 (+27.27%)
Mutual labels:  python-telegram-bot
nebula8
Open source bot to administer a telegram group with different functionalities and blacklist
Stars: ✭ 21 (-61.82%)
Mutual labels:  python-telegram-bot
Tuna-Erha-Bot
No description or website provided.
Stars: ✭ 18 (-67.27%)
Mutual labels:  python-telegram-bot
hidethisbot
An inline Telegram bot to keep your private messages hidden from prying eyes.
Stars: ✭ 44 (-20%)
Mutual labels:  python-telegram-bot
Cryptora
An all in one cryptocurrency bot for Telegram.
Stars: ✭ 25 (-54.55%)
Mutual labels:  python-telegram-bot
PDF-Bot
A bot for PDF for doing Many Things....
Stars: ✭ 38 (-30.91%)
Mutual labels:  python-telegram-bot
python-telegram-bot-heroku-example
Repository for Medium article about creating a Telegram bot in Python and deploying it on Heroku
Stars: ✭ 13 (-76.36%)
Mutual labels:  python-telegram-bot
calculator-bot
Simple Serverless Telegram Bot on vercel.com
Stars: ✭ 44 (-20%)
Mutual labels:  python-telegram-bot
raspberry pi home security system
Home monitoring system with a Raspberry Pi and sending notifications with a Telegram bot
Stars: ✭ 14 (-74.55%)
Mutual labels:  python-telegram-bot

The Telegram @BotListBot

This is the Chatbot in charge of maintaining the Telegram BotList, a channel that is a community-driven approach to collect the best Bots on Telegram.

The bot simplifies navigation by acting as a mirror of the BotList, and automates the process of submitting, reviewing and publishing bots by the BotListChat community.

This repository is meant as inspiration and technical guidance for bot builders, mainly for folks using the amazing python-telegram-bot library.

JosXa/BotListBot is licensed under the MIT License.

Setup Guide

Prerequesites

Mandatory

  • Python 3.7.x
  • A PostgreSQL database instance or Docker (see below)
  • Pipenv installed globally (pip install pipenv)
  • Your own bot token for local development

Optional

  • A sentry.io account (logging)
  • An S3-compatible object storage (e.g. Minio)

Development Setup

Using GitHub codespaces and VSCode (recommended)

Recommended because it is the fastest option to get you started.

  1. On GitHub Codespaces, enter "JosXa/BotListBot" and create your dev container.
  2. Modify the variables in template.env and save the file as just .env in the root folder of the checkout.
  3. Run the project via pipenv run python -m botlistbot.main
Using PyCharm...
Set up a PostgreSQL database instance with Docker
  1. Install Docker
  2. Run docker-compose up -d
  3. Create and seed the database via pipenv run python scripts/initialize_database.py seed
  4. To stop the database, run docker-compose down
Set up BotListBot
  1. VCS -> Get from Version Control... -> https://github.com/JosXa/BotListBot (or your own fork)
  2. Add a new project Interpreter using Pipenv (not virtualenv) and let PyCharm install the packages for you
  3. Modify the variables in template.env and save the file as just .env in the root folder
  4. Run the file scripts/initialize_database.py once. Then open its run configuration, add the word "seed" to the arguments list, and run it again. This will fill the database with some initial, required values.
  5. Run botlistbot/main.py using a default configuration
Not using PyCharm...
Set up a PostgreSQL database instance with Docker
  1. Install Docker
  2. Run docker-compose up -d
  3. Create and seed the database via pipenv run python scripts/initialize_database.py seed
  4. To stop the database, run docker-compose down
Set up BotListBot
  1. Clone from GitHub: git clone https://github.com/JosXa/BotListBot (or your own fork)
  2. Run pipenv install
  3. Modify the variables in template.env and save the file as just .env in the root folder of the checkout.
  4. Create and seed the database via pipenv run python scripts/initialize_database.py seed
  5. Run the project via pipenv run python -m botlistbot.main

Further details on configuration

If you have a look at settings.py, you can see a bunch of environment variables that are being retrieved via decouple.config(...) calls. Those settings can be controlled via the .env file you created at the root folder.

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].