Code Monkey home page Code Monkey logo

nodeliad's Introduction

Nodeliad 🤖

Nodeliad è un bot Telegram realizzato in Node.js per monitorare i consumi della propria linea Iliad.

Il progetto è nato per via della mancanza di un'app ufficiale per iOS che costringe gli utenti a controllare i consumi dal PC o attraverso il sito sotto rete Iliad per evitare di dover effettuare il login.

Features

  • 💰 controllo del credito residuo
  • ⏰ controllo della data di rinnovo
  • 🗓 notifica automatica prima del rinnovo
  • 🇮🇹 controllo dei consumi effettuati in Italia
  • 🌎 controllo dei consumi effettuati all'estero
  • 💶 controllo consumi e costi extra in Italia
  • 💵 controllo consumi e costi extra all'estero

Lista dei comandi

  • /credito
  • /consumi
  • /consumiestero
  • /costiextra
  • /costiextraestero

Installazione

  1. Clonare il repository con git clone https://github.com/Nicuz/Nodeliad.git oppure cliccando sul bottone in alto a destra Clone or Download
  2. Entrare nella directory di Nodeliad
  3. Installare le dipendenze con npm install
  4. Rinominare il file .env.template in .enve modificarlo inserendo i propri dati di accesso al sito di Iliad, il token del vostro bot fornito da BotFather, il vostro id di Telegram ottenibile con rawdatabot e quanti giorni prima del rinnovo volete essere avvisati. L'id viene utilizzato per fare un controllo sull'utente che invia un comando, il bot fornirà i dettagli sulla linea solo all'utente con l'id specificato.
  5. Compilare il bot con npm run build
  6. Avviare il bot con node bot.js

Aggiornare il bot

Questa sezione è pensata per i meno pratici di git che quindi non conoscono tutti i suoi comandi e funzionalità. Ogni volta che una nuova versione del bot viene rilasciata, è possibile scaricare automaticamente i file che sono stati aggiornati entrando nella cartella in cui avete clonato il repo e lanciando il comando git pull. Il file .env che avete creato rimarrà al suo posto senza subire cambiamenti e non perderete alcun tipo di configurazione.

Un metodo semplice ed efficace per aggiornare la lista delle dipendenze nel caso dovessero essere aggiunti o rimossi dei moduli consiste nell'eliminare la cartella node_modules e lanciare il comando npm install.

Terminato l'aggiornamento vi basterà riavviare il bot.

PM2

Se volete gestire il bot tramite PM2, dopo aver creato il file .env eseguite il comando pm2 start pm2-ecosystem.config.js

Docker container

Se volete usare Docker, dopo aver clonato il repository e modificato il .env effettuate una docker build:

docker build . -t nodeliad

Terminata la build avviate il bot:

docker run -it --name=nodeliad-bot nodeliad

Avvio automatico con systemd

  1. Lanciare il comando whereis node per trovare il binario di node, nel mio caso /usr/local/bin/node
  2. sudo nano /etc/systemd/system/nodeliad.service e incollare il testo seguente avendo l'accortezza di modificare il path del binario di node e quello dello del bot.
Description=Nodeliad Bot
After=network.target

[Service]
Type=idle
ExecStart=/path/binario/node /path/nodeliad/dist/bot.js

[Install]
WantedBy=multi-user.target
  1. sudo systemctl daemon-reload
  2. sudo systemctl enable nodeliad
  3. sudo systemctl start nodeliad

Se tutto è stato configurato correttamente, lanciando il comando sudo systemctl status nodeliad vedrete che il servizio è in esecuzione 💪

Changelog

Consultare CHANGELOG.md

nodeliad's People

Contributors

albertoxamin avatar nicuz avatar snyk-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

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.