dotaUpdatesBot
dotaUpdatesBot copied to clipboard
A telegram bot for dota2 updates
This project has been deprecated in favor of a node-based version that you can find at https://github.com/GameFeeder/GameFeeder
dotaUpdatesBot
Telegram Bot for Dota2 Updates
Running publicly as @announcebot, licensed under the GNU General Public License.
Index
-
About the project
- What is Telegram
- What are Telegram bots
- What is Dota2
About dotaUpdatesBot
This bot serves a simple purpose, provide an easy interface for Telegram users to get their dose of Dota2!
Dota is an old game and the way it keeps the players interested is through constant updates. However they are irregular and the userbase is basically craving for them. The big changes have an official changelog at the official blog. Some smaller patches get notes in steam news but the rest never see the light of day.
However, the game's Reddit page is quite active and every new patch, changelog or update is posted there. Thanks to some users (specifically u/SirBelvedere and u/magesunite at the time of writing this) who take the time to read through the diffs over at SteamDB, the community gets a nice changelog in a Reddit post.
Some users, including the owner of this repo, felt like they needed a notification system without the hassle of an extra app (like IFTTT) so a bot was the most obvious solution for Telegram users.
What is Telegram
Telegram is a messaging application, similar to WhatsApp or Signal. The main differences are:
- texts are not end-to-end encypted by default (which allows for a single account to use multiple clients seamlessly)
- the encryption algorithm is not open source
- it has a ton more features than any other messaging app
- it supports bots!
What are Telegram Bots
Telegram bots basically work like any other messenger bot (e.g. Discord bots, Messenger bots, etc) but are a bit simpler to implement thanks to the Telegram Bot API. A Python wrapper for the API used in this project (pyTelegramBotAPI) can be found here.
What is Dota2
Dota2 originated as custom map for Warcraft III made by Eul and after much controversy it now is the most successful 100% free-to-play game by Valve and Icefrog.
Setting up dotaUpdatesBot
-
Download or clone this repository using
git clone https://github.com/zachkont/dotaUpdatesBot.git
-
Make sure
python2.7
andpip
version 9+ are installed -
Setup your Telegram API key and optionally your Dota2 API key
-
Copy the
settings.py.example
intosettings.py
and fill in your API keys. You can leave thecrisis account
variable empty or delete it alltogether. -
Install the requirements using pip via
pip install -r requirements.txt
-
Run main.py for the command functionality with
python main.py
or updater.py for the dota update subscription functionality withpython updater.py
Commands
Command | Brief explanation |
---|---|
/help |
Displays the basic help menu |
/dotanews |
Returns the latest Steam News entry related to Dota2 |
/dotablog |
Returns the latest blog post from blog.dota2.com |
/subscribe |
Adds the user or group to the subscription list |
/unsubscribe |
Removes the user or group from the subscription list |
/match <match_id> |
Returns some info about match with match_id |
How To Contribute
Read CONTRIBUTING.MD
Disclaimer
This program is provided under the GNU GPLv3 License. As such it is shipped "as is" and the authors are not liable and provide no warranty. Read more.