All Projects → revolter → FileConvertBot

revolter / FileConvertBot

Licence: GPL-3.0 license
Telegram Bot that converts some file types to native photo, audio or video Telegram messages.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to FileConvertBot

TycotBot
TycotBot
Stars: ✭ 24 (-25%)
Mutual labels:  telegram-bot
kiririn
A serverless Telegram bot.
Stars: ✭ 27 (-15.62%)
Mutual labels:  telegram-bot
Watermark-Bot
A Telegram Video Watermark Adder Bot in Pyrogram by @AbirHasan2005
Stars: ✭ 82 (+156.25%)
Mutual labels:  telegram-bot
Telegram-Invite-Users-From-Source-To-Destination-Group
This application invite users in Telegram from a source to destination group.
Stars: ✭ 20 (-37.5%)
Mutual labels:  telegram-bot
teleirc
Go implementation of a Telegram <=> IRC bridge for use with any IRC channel and Telegram group
Stars: ✭ 112 (+250%)
Mutual labels:  telegram-bot
qbittorrent-bot
Telegram bot to mange your qBittorrent torrents
Stars: ✭ 91 (+184.38%)
Mutual labels:  telegram-bot
Cloud-UPManager-Bot
Telegram Cloud Upload Manager Bot by @AbirHasan2005
Stars: ✭ 46 (+43.75%)
Mutual labels:  telegram-bot
greed
A customizable, multilanguage Telegram shop bot with Telegram Payments support
Stars: ✭ 268 (+737.5%)
Mutual labels:  telegram-bot
Plants-Identification
🌻 Deep learning project of Taiwan plants classification and detection with chatbot implementation
Stars: ✭ 18 (-43.75%)
Mutual labels:  telegram-bot
agala
Full featured messaging bot framework.
Stars: ✭ 70 (+118.75%)
Mutual labels:  telegram-bot
cowin-slot-tracker
Tracker to check the covid shot slot availability in India and send mobile alerts via Telegram Bot.
Stars: ✭ 30 (-6.25%)
Mutual labels:  telegram-bot
telegraf-calendar-telegram
Inline calendar for Telegram bots using Telegraf framework
Stars: ✭ 43 (+34.38%)
Mutual labels:  telegram-bot
tgto
Telegram to RSS bot.
Stars: ✭ 20 (-37.5%)
Mutual labels:  telegram-bot
PglRobot
No description or website provided.
Stars: ✭ 12 (-62.5%)
Mutual labels:  telegram-bot
kirpich
Пацан-бот
Stars: ✭ 77 (+140.63%)
Mutual labels:  telegram-bot
mqtg-bot
MQTT Client Telegram Bot
Stars: ✭ 67 (+109.38%)
Mutual labels:  telegram-bot
genshin task-resin-expedition alert
完全摸了,之后若有需要,请使用下面链接的这个仓库~
Stars: ✭ 91 (+184.38%)
Mutual labels:  telegram-bot
telegram-stepfunctions-bot
Serverless Telegram bot made on 4 AWS Lambda chained by AWS Step Functions. All of this written on Serverless Framework using plugins.
Stars: ✭ 26 (-18.75%)
Mutual labels:  telegram-bot
tgcf
The ultimate tool to automate custom telegram message forwarding. Live-syncer, Auto-poster, backup-bot, cloner, chat-forwarder, duplicator, ... Call it whatever you like! tgcf can fulfill your custom needs.
Stars: ✭ 378 (+1081.25%)
Mutual labels:  telegram-bot
Telegram-PHP-App
App base for Telegram bots
Stars: ✭ 14 (-56.25%)
Mutual labels:  telegram-bot

File Convert Bot

Introduction

Telegram Bot that converts (for now) AAC, OPUS, MP3 and WebM files to voice messages, HEVC and MP4 (MPEG4, VP6 and VP8) files to video messages or video notes (rounded ones), video messages to video notes (rounded ones), videos from some websites to video messages, PDF files to photo messages (currently only the first page), image files to stickers. It also converts voice messages to MP3 files and stickers to photo messages. It works in groups too!

The bot currently runs as @FileConvertBot.

All the processing is done in-memory, so no file is ever saved on the disk, not even temporary!

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

You need to install Homebrew by running:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Installing

Install the global dependencies by running:

sudo apt install ffmpeg poppler-utils

on Linux or

brew install ffmpeg poppler

on macOS.

Then clone the project and install the dependencies by running:

cd /desired/location/path
git clone https://github.com/revolter/FileConvertBot.git
cd FileConvertBot

curl https://pyenv.run | bash
export PATH="$HOME/.pyenv/bin:$PATH"
sudo apt update
sudo apt install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
pyenv install 3.9.0
pyenv global 3.9.0

curl -sSL https://install.python-poetry.org | python -
poetry shell
poetry install

cd src
cp config_sample.cfg config.cfg

Then, edit the file named config.cfg inside the src folder with the correct values and run it using ./main.py --debug.

Use exit to close the virtual environment.

Deploy

You can easily deploy this to a cloud machine using Fabric:

cd /project/location/path

poetry shell

cp fabfile_sample.cfg fabfile.cfg

Then, edit the file named fabfile.cfg inside the root folder with the correct values and run Fabric using:

fab setup
fab deploy

You can also deploy a single file using fab deploy --filename=main.py or fab deploy --filename=pyproject.toml.

Dependencies

Currently, you have to manually install poppler in order for PDF to PNG conversion to work:

  • macOS: brew install poppler
  • Ubuntu: sudo apt-get install poppler-utils
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].