Coder Social home page Coder Social logo

ethogram's Introduction

ethogram alt text

⚠️ This bot is no longer hosted nor maintained.

Telegram bot for ethOS!

Since the bot now tracks the chat id's in a file, even if it restarts, we can alert users of downtime, or possible issues with the bot itself by sending status messages (not implemented yet).

Getting Started

  • Just add ethogramBot to the group, or chat it up directly.
  • run /start [PANEL_ID] to monitor [PANEL_ID].ethosdistro.com

Installation

If you'd like to deploy your own version of this bot, please follow this rough guide:

  • Use BotFather from Telegram to create a bot, and acquire TELEGRAM_TOKEN
  • Clone this repo on a server, such as DigitialOcean. (Don't use heroku, since this bot relies on file persistence)
  • cd into the repo root
  • Create ethogram.json, as follows:
{
  "TELEGRAM_TOKEN": "[YOUR_TELEGRAM_TOKEN_FROM ABOVE]",
  "WEBHOOK_HOST": "[HOSTNAME_FOR_YOUR_SERVER]"
}
  • Create certs directory, and add required SSL files for https webhook support: (TODO: Add more details)
    • cert.pem
    • private.key
  • Now, you have two options:
    • Using Docker:
      • Build the docker image docker build -t ethogram .
      • Run a container docker run -d -p 8443:8443 -v "$(pwd)":/app ethogram
    • Execute directly:
      • Install python3
      • Install requirements using pip3 install -r requirements.txt
      • Run using python3 driver.py

Metrics

action alert description
all_stats send all available stats
gpu_temps Alert range 40 - 75 C
hashrates Alert increase/decrease of +10%
timestamp Alert if t(n) > t(n+1)

Demo

ethogram's People

Contributors

mazyod avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

ethogram's Issues

Error Expecting value: line 1 column 1 (char 0)

Expecting value: line 1 column 1 (char 0)
Expecting value: line 1 column 1 (char 0)
Expecting value: line 1 column 1 (char 0)
Expecting value: line 1 column 1 (char 0)
Expecting value: line 1 column 1 (char 0)
Expecting value: line 1 column 1 (char 0)

It begins well after doing this and slows

File-based persistence

Currently, if the bot process dies, all the monitors will be lost forever. Need to add some persistent backing to recover from restarts.

Cleanup blocked monitors

If a user uses the bot to monitor stuff, that will add a chat_id -> [Monitor] entry in the bot object monitors object. However, if a user then proceeds to "block" the bot, or simply removes the bot from the chat/group, we get "blocked" error. At this point, we should remove the entry.

Setup Travis

Need to run tests for PRs, achieve higher coverage, ... etc.

Mining pool alerts

I would personally like to be alerted when a mining pool (ethermine/nanopool) makes a deposit to my account. The problem is, I am not yet sure if this is within the scope of ethogram, or would it bloat the bot unnecessarily..

General rule is, it can be added, and then moved to a new location if a problem arises.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.