/IsItUP

Telegram bot to verify if a website is up or track an URL to be notified when it gets down.

Primary LanguageJavaScriptMIT LicenseMIT

IsItUP? Bot

A Telegram bot that verifies whether or not a website is up, tracks URLs and notifies when hosts have unreachable connections. https://t.me/Is_it_UPBot

Installation

  1. Meet IsItUP? at telegram :D

or run your own bot

  1. Clone the project
  2. Go to your IsItUp directory
cd /path/to/IsItUP/
  1. Set an enviroment variable named IS_IT_UP_TOKEN with your telegram token. Read this great article and learn how to do it properly. On bash:
export IS_IT_UP_TOKEN=your_telegram_token
  1. (Optional) Setup Firebase if you want to enable the track feature)

    • Create a Firebase project and download its credentials
    • Set environment variables named IS_IT_UP_FIREBASE_PRIVATE_KEY, IS_IT_UP_FIREBASE_CLIENT_EMAIL and IS_IT_UP_FIREBASE_DATABASE_URL with your firebase credentials (private key and client email are in the downloaded file)
    export IS_IT_UP_FIREBASE_CLIENT_EMAIL=email@domain.com
  2. Install node and npm

  3. Download the dependencies

npm install
  1. Run the script
npm start

Usage

It can be done with IsItUP? bot or your own bot:

Conversation

  • Start a conversation with the bot
  • Type:
/verify https://telegram.org

or just

https://telegram.org

to verify whether a website is available or not

Track (if enabled)

  • You may track an URL by typing: // check step #4 for enabling tracking
/track https://telegram.org
  • You may delete an URL from the track list by typing:
/track_delete

and then click at the URL you want to delete

  • To list the URLs you are tracking:
/track_list

Every 5 minutes the bot will check the track list. The user will be notified when the status of an URL get changed(up->down, down->up).

Group

  • You may as well invite the bot to a group

  • Call it by name and tell the domain you want to watch

@Is_it_UPBot https://telegram.org

PS: telegram.org is a sample (of course :D), type whatever you need.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Thanks

License

MIT