A simple Node.js script that periodically checks given Steam Profiles for new VAC, Game or Community Bans and informs you or a group via Telegram Bot.
WARNING: THIS PROJECT IS NO LONGER ACTIVELY MAINTAINED |
---|
In order to use this script, you need the following dependencies and tokens:
- Node.js: https://nodejs.org/en/
- Compatible with Version 12 and 13
- Steam API Key: https://steamcommunity.com/dev/apikey
- Telegram Bot Token: https://core.telegram.org/bots#6-botfather
- Telegram Chat ID: Retrieve your Telegram Chat ID
- Linux:
fontconfig
orlibfontconfig
, depending on the distribution- If you don't get any screenshots, try
apt install phantomjs
instead
- If you don't get any screenshots, try
- Make sure you have the latest version of Node.js installed.
- Download this repository as ZIP and unpack it wherever you like.
- Go into the
configs
folder and renameconfig.json.example
toconfig.json
- Edit
config.json
and fill in your Steam API Key, Telegram Bot Token and Telegram Chat ID - Type
npm install
into your console of choice to install all necessary Node.js dependencies - Type
npm start
ornode server.js
to start the script.- To find out how to run the script permanently on a server you should check out forever.
Make sure you have everything set up properly and your config is valid without missing information!
In most cases, files only need to be overwritten, renamed or moved, but this project has no guaranteed backward compatibility and if the file structure changes during an update, a local installation must be manually adjusted. The only files that will remain compatible at all times are database files if not otherwise stated.
{
"General": {
"allowRequests": true, // Enable Access Requests
"messages": "default", // Message File
"checkInterval": 10 // Check-Interval in Minutes
},
"Steam": {
"apiKey": "STEAM API KEY" // Your Steam API Key
},
"Telegram": {
"botToken": "Telegram Bot Token", // Your Telegram Bot Token
"masterChatID": "Telegram Chat ID" // Your Telegram Chat ID
},
"Screenshot": {
"saveScreenshot": true, // Take Screenshots of Banned Profiles
"sendScreenshot": true // Send Screenshots with Telegram Messages
}
}
This only applies to displayed bans like VAC and Game Bans.
- If
saveScreenshot
is enabled, a profile screenshot will be taken as soon as a profile gets banned. - If
sendScreenshot
is enabled, the screenshot will also be sent via Telegram Bot.
- Use
/add <steamID64|profileURL>
to add profiles to the list.- Examples:
/add 12345678912345678
/add http://steamcommunity.com/profiles/12345678912345678
/add https://steamcommunity.com/id/customURL
- Examples:
To get the steamID64 or URL of a profile you can use websites like STEAMID I/O.
While allowRequests
is enabled (true), everyone can /request
access to the script and you can either accept or decline the request. Users then can /add
their own profiles, but you will not be notified about this.
- Type
/users
to receive a list of current users. - Tap on the user you want to edit. The rest is relatively self-explanatory.
Type /stats
to view global and personal statistics.
If you disable the Privacy Mode for your Telegram Bot, you can also use it in groups and supergroups. Users in the group will still need access to the script in order to use it, but if they do have access, the profile will be checked for the entire group and can not be added again.
- The script will check every profile that gets added to the list once to get its initial data.
- This is because you most-likely have a reason to track it for future bans ignoring old ones.
- While running, the script will check profiles every
checkInterval
minutes. (Default: 10)- Keep in mind that you are limited to 100.000 calls to the Steam Web API per day.
- If a profile got banned since it was checked for the first time, you will receive a Telegram notification.
- This includes the following ban types: Community Ban, VAC Ban, Game Ban.
- A banned profile will no longer get checked if it got banned. (Exception: Community Ban)
All data is stored in readable database files called profiles.db
and users.db
.
In order to retrieve your unique Telegram Chat ID, do as follows:
Easy Method
/start
a chat with the @myidbot.- Type
/myid
to get your Telegram Chat ID.
Complex Method
/start
a chat with your bot.- Get the list of updates for your bot at:
https://api.telegram.org/bot<Telegram Bot Token>/getUpdates
- Example:
https://api.telegram.org/bot123456789:abcdefghijklmnopqrstuvwxyz/getUpdates
- Example:
- Search for the
id
field within thefrom
object of your message response.- Absolute Path:
result[arrayIndex].message.from.id
- Absolute Path:
There are currently no contributing guidelines, but I am open to any kind of improvements.
In order to contribute to the project, please follow the GitHub Standard Fork & Pull Request Workflow
- Fork this repository on GitHub.
- Clone the project to your own machine.
- Commit changes to your own branch.
- Push your work to your own fork.
- Submit a Pull Request so I can review your changes
If you find this script useful, you can support me by donating items via steam.
Steam Trade Link