Skip to main content

Multi-Platform Python tool to send notifications to your devices

Project description

alert-me

Multi-Platform Python tool to send notifications to your devices. alert-me allows you to send notifications to your devices using different services.

📝 Table of Contents

📕 About

alert-me is a multi-platform Python tool to send notifications to your devices. It supports different plugins to send notifications via different services.

Available plugins:

  • Email
  • Telegram
  • Url

Creating additional plugins is easy. Just create a new class that inherits from Plugin and implements the notify method.

⚙️ Installation

Python repository

The easiest way to get alert-me is through the pypi.org repository. Install it by running the following command:

pip install python-alert

Building from source

To install alert-me from source, clone this repository and run pip install . as follows:

git clone https://github.com/NeverMendel/alert-me.git
cd alert-me
pip install .

📖 Usage

Command line

alert-me can be used from the command line by invoking the alert-me command. It accepts a number of arguments to configure the alert.

alert-me -p telegram <TOKEN> <CHAT_ID> "Hello!"

alert-me -c telegram "Hello!"
alert-me -c email to_email@example.com "subject" "body"

Python

alert-me can be used as a Python module by importing AlertMe.

from alert_me.alert_me import AlertMe
from alert_me.plugins.telegram import TelegramPlugin
from alert_me.config import get_config

alert_me = AlertMe([TelegramPlugin("<TOKEN>", "<CHAT_ID>")])
alert_me.notify("Hello!")

alert_me = AlertMe([get_config("email")])
alert_me.notify("to_email@example.com", "subject", "body")

Config

alert-me can be used to fetch the configuration from a file. The file must be in the INI format and be located in the user home directory (~/.alert-me.ini).

Here is an example of a configuration file:

[telegram]
plugin = telegram
token = <TOKEN>
chat_id = <CHAT_ID>

[email]
plugin = email
smtp_server = <SMTP_SERVER>
smtp_port = <SMTP_PORT>
sender_email = <SENDER_EMAIL>
sender_password = <SENDER_PASSWORD>

Command line arguments

usage: alert-me [-h] (-c CONFIG_UNPROCESSED | -p PLUGIN) [-v] [-vv] [-V] ...

Multi-Platform Python tool to send notifications to your devices

positional arguments:
  args                  Plugin and/or notify arguments

options:
  -h, --help            show this help message and exit
  -c CONFIG_UNPROCESSED, --config CONFIG_UNPROCESSED
                        Configuration name
                        syntax: --config=[config_name1],[config_name2],...
                        example: --config=telegram,email
  -p PLUGIN, --plugin PLUGIN
                        Plugin name
  -v, --verbose         enable verbose logging
  -vv, --extra-verbose  enable extra verbose logging
  -V, --version         show program's version number and exit

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_alert-0.1.0.tar.gz (8.5 kB view hashes)

Uploaded Source

Built Distribution

python_alert-0.1.0-py3-none-any.whl (9.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page