MusicBot is a automated bot that tracks music content detected in group messages on the Telegram messaging platform.
- Tracks media content.
- Alerts group members to repeated media content.
- Provides a mobile interface to browse media content detected by groups' users and automatically play the content in its respective app!
- Goodies such as an auto-responder when user defined words/terms are detected.
- SoundCloud
- YouTube
- Mixcloud (coming soon)
- Add the existing bot I run
@TheMusicBot
to your Telegram group, or if you have privacy concerns, follow the Installation Instructions to get the bot up and running. - Start sending videos and audio links to your group.
- Message the bot directly with the command
/help
for instructions to start browsing your custom curated content!
MusicBot relies on the Docker container platform and Docker Compose tool. They must be installed on a Linux system in order to run the MusicBot service properly.
- Register your bot with the BotFather and note the following:
- API Token
- Bot Username
- Set privacy mode to disabled.
- Clone this repository onto the system.
- Set your database password:
export MONGODB_PASS=<password>
- Configure the API properties:
- rename
MusicBot/musicbot-api/api.template
toMusicBot/musicbot-api/api.properties
- edit
api.properties
and fill in the above password for thedb.user.password
property. - Configure the Bot properties:
- rename
MusicBot/musicbot-processor/processor.template
toMusicBot/musicbot-processor/processor.properties
- edit
processor.properties
and fill in the following properpties: -api.token
: The API token provided to you by the BotFather. -bot.name
: The username of the bot. -website
: The URI of the host for the bot's mobile UI (include a trailing slash). -db.user.password
: The database password you set in step 3. - Run
docker-compose build
to build the docker images that comproise the MusicBot service. - Run
docker-compose up
to start the bot's services.
- Java
- MongoDB
- Google Guice, Guava
- Metrics
- Docker
- Docker Compose
- Telegram Bot API