A telegram bot to track whales activities on multiple blockchains.

Overview

Telegram Bot : Whale Watcher

A straightforward telegram bot written in python to track whales activity on multiple blockchains, using whale-alert API

Installation

1. Telegram Bot

First, you need to read the documentation on telegram bot, and create one : telegram bot docs. Once you own a bot and you have securely stored his token, you can go to the next step!

2. Whale-alert API key

Once you have your bot, you need to be able to connect the to whale-alert api using one of the token they provide. You will find all the required informations here to get your api key : whale-alert authentication.

There is different pricing plans, the bot is well adapted for the free one with the base config.

3. Running the bot!

To run the bot, you'll need to either have python 3.9.7 already installed, or install using a virtual environment (recommended) with pyenv & pyenv-virtualenv:

Go into the main folder, and simply run :

pyenv install 3.9.7
pyenv virtualenv 3.9.7 whale_alert_bot
pyenv activate whale_alert_bot

Go into the main folder, and simply run :

pip install -r requirements.txt

Finally, run the main script to run the bot, along with your tokens allocated to the right environment variables:

WHALE_ALERT_API_KEY=YOUR-TOKEN TELEGRAM_BOT_TOKEN=YOUR_TOKEN python src/bots/watcher_bot.py

Or add the environment variables to a .env file, within the same folder as the settings.py file (recommended). They will be imported automatically while running the bot.

4. The environment variables

As we have seen previously, the bot can be personalised thanks to a bunch of environment variables to set in your .env file:

TRANSACTION_ENDPOINT

The endpoint to fetch transactions, defaults to the current on in whale-alert.

STATUS_ENDPOINT

The endpoint to fetch connection to blockchain statuses, defaults to the current on in whale-alert.

API_KEY

Your whale-alert API key. This is required.

TELEGRAM_BOT_KEY

Your telegram bot key. This is required.

MIN_INTERVAL

Minimum interval (in seconds) for which we want to allow the transaction alerts. Defaults to 15.

HISTORY_TIME_LIMIT

Maximum interval (in seconds) for which we want to allow the transaction alerts. Defaults to 3600 (free whale alert plan).

TX_VALUE_USD_THRESHOLD

Minimum value of the transactions we want to track (USD). Defaults to 500 000.

CURRENCY_WATCHED

Currency to watch. Default to None (all of them)

TX_ROWS_LIMIT

Limit amount of transactions per alert. Defaults to 100.

Usage

1. Helpers

Once your bot is running, just like the normals bots, you can get more details about the commands with the following commands:

/help
/start

2. Status Checker

This command allows you to precisely check the status of the connection of whale-alert to the different blockchains it's monitoring.

/check_status <optional: data_keys>

The data_keys are arguments representing the specific data you want to fetch from the whale-alert blockchains status. Without this argument, all of them are returned.

Example :
/check_status status name

Will only return the status and the name of each connected blockchain, in the payload.

3. Transaction watcher

This is the main command of the bot : it's monitoring the transactions on the blockchains and gives you an alert of the statuses every dt seconds.

/watcher_timer seconds minutes <optional: data_keys>

Seconds and minutes are describing the interval between each alert sent by the bot. (Max. 1h with the free version of the whale-alert API).

data_keys, are, like previously, the data you want to filter out in the transactions payload of the response.

Example :
/watcher_timer 20 0 amount_usd symbol blockchain

Will give you an alert every 20 seconds of all the big transactions, only returning you the given arguments from the payload described here

4. Upcoming

More detailed commands and more commands in development :)

Owner
Laurenz Bougan
Backend Developer
Laurenz Bougan
An Unofficial TikTok API Wrapper In Python

This is an unofficial api wrapper for TikTok.com in python. With this api you are able to call most trending and fetch specific user information as well as much more.

David Teather 2.9k Jan 08, 2023
Balanced API library in python.

Balanced Online Marketplace Payments v1.x requires Balanced API 1.1. Use v0.x for Balanced API 1.0. Installation pip install balanced Usage View Bala

Balanced 70 Oct 04, 2022
:evergreen_tree: Python module for communicating with the Taiga API

python-taiga A python wrapper for the Taiga REST API. Documentation: https://python-taiga.readthedocs.io/ Usage: : https://python-taiga.readthedocs.io

Nephila 87 Oct 12, 2022
The official Discord Python framework for thenewboston blockchain.

Project Setup Follow the steps below to set up the project on your environment. Mac Setup Homebrew requires the Xcode command-line tools from Apple's

Bucky Roberts 18 Jul 15, 2022
Shellkg-py - A temporary Repository to rewrite of shellpkg in python

Shellkg-py - A temporary Repository to rewrite of shellpkg in python

2 Jan 26, 2022
This repository is used to simplify the process of cloning the SSM documents across the AWS regions.

SSM Cloner Introduction This module is created in order to simplify the process of copying the SSM documents from one region to another regions. As an

6 Jun 04, 2022
THERE IS AN IMPOSTER AMONG US. VOTE HIM OUT BEFORE HE [ R E D A C T E D ].

🛡️ Guardian There is an impostor among us. Can you help us find out who it is? ⚙️ Installation and Usage Make sure to install Tesseract-OCR before ru

Catus Magnus 1 Jan 06, 2022
A Python script that wraps the gitleaks tool to enable scanning of multiple repositories in parallel

mpgitleaks A Python script that wraps the gitleaks tool to enable scanning of multiple repositories in parallel. The motivation behind writing this sc

Emilio Reyes 7 Dec 29, 2022
Simplebot-tg - Telegram/DeltaChat Bridge with python

simplebot_tg Telegram/DeltaChat Bridge, is a plugin for https://github.com/simpl

Arián Díaz Cruz 1 Dec 30, 2021
Notification Reminder Application For Python

Notification-Reminder-Application No matter how well you set up your to-do list and calendar, you aren’t going to get things done unless you have a re

1 Nov 26, 2021
Discord bot do sprawdzania ceny pizzy.

Discord bot do sprawdzania ceny pizzy w pizzeri Bombola. Umieszczony jest na platformie Heroku, dzięki czemu działa 24/7. Commands List Info: Jako com

1 Sep 18, 2021
GitHub Actions Docker training

GitHub-Actions-Docker-training Training exercise repository for GitHub Actions using a docker base. This repository should be cloned and used for trai

GitHub School 1 Jan 21, 2022
A program used to create accounts in bulk, still a work in progress as of now.

Discord Account Creator This project is still a work in progress. It will be published upon its full completion. About This project is still under dev

patched 8 Sep 15, 2022
A Python Library to interface with Flickr REST API, OAuth & JSON Responses

Python-Flickr Python-Flickr is A Python library to interface with Flickr REST API & OAuth Features Photo Uploading Retrieve user information Common Fl

Mike Helmick 40 Sep 25, 2021
Twitter for Python!

Tweepy: Twitter for Python! Installation The easiest way to install the latest version from PyPI is by using pip: pip install tweepy You can also use

9.4k Jan 07, 2023
Unirest in Python: Simplified, lightweight HTTP client library.

Unirest for Python Unirest is a set of lightweight HTTP libraries available in multiple languages, built and maintained by Mashape, who also maintain

Kong 432 Dec 21, 2022
A simple Python library to integrate with the Heron Data API

Heron Python This library provides easy access to the Heron Data API from applications written in Python. Documentation No language-specific docs are

Heron Data 11 Nov 11, 2022
Troposphere and shellscript based AWS infrastructure automation creates an awsapigateway lambda with a go backend

Automated-cloudformation-infra Troposphere and shellscript based AWS infrastructure automation. Feel free to clone and edit for personal usage. The en

1 Jan 03, 2022
Code done for/during the course

Serverless Course Autumn 2021 - Code This repository contains a set of examples developed during, but not limited to the live coding sessions. Lesson

Alexandru Burlacu 4 Dec 21, 2021
Pagination for your discord.py bot using the discord_components library!

Paginator - discord_components This repository is just an example code for how to carry out pagination using the discord_components library for python

Skull Crusher 9 Jan 31, 2022