Comprehensive bindings and command line utility for the Pushover notification service
Project description
python-pushover aims at providing comprehensive Python bindings for the API of the Pushover Notification Service as documented here.
Installation
You can install python-pushover from Pypi with:
$ pip install python-pushover
Or you can install it directly from GitHub:
git clone https://github.com/Thibauth/python-pushover.git
cd python-pushover
pip install .
Overview
After being imported, the module must be initialized by calling the init function with a valid application token. Thus, a typical use of the pushover module looks like this:
from pushover import init, Client
init("<token>")
Client("<user-key>").send_message("Hello!", title="Hello")
You can also pass the api_token optional argument to Client to initialize the module at the same time:
from pushover import Client
client = Client("<user-key>", api_token="<api-token>")
client.send_message("Hello!", title="Hello")
Attachments can be sent with the attachment parameter which takes as argument as file object:
with open('/path/to/my/image.png', 'rb') as image:
client.send_message('Message with image', attachment=image)
Command line
python-pushover also comes with a command line utility pushover that you can use as follows:
pushover --api-token <api-token> --user-key <user-key> "Hello!"
Use pushover --help to see the list of available options.
Configuration
Both the pushover module and the pushover command line utility support reading arguments from a configuration file.
The most basic configuration file looks like this:
[Default]
api_token=aaaaaa
user_key=xxxxxx
You can have additional sections and specify a device as well:
[Sam-iPhone]
api_token=bbbbbb
user_key=yyyyyy
device=iPhone
python-pushover will attempt to read the configuration from ~/.pushoverrc by default. The section to read can be specified by using the profile argument. With the configuration file above, you can send a message by simply doing:
from pushover import Client
Client().send_message("Hello!", title="Hello")
or pushover --title "Hello" "Hello!" from the command line.
API
You can access the full API documentation here.
Contributors
Sam Birch <sam.m.birch@gmail.com>
Crupuk
chevell
drachenminister
Thibaut Horel <thibaut.horel@gmail.com>
Filip Lundborg <filip@filipl.se>
Philip Lundrigan <philipbl@cs.utah.edu>
Steve Miller <copart@gmail.com>
Changes
0.4 (2018-05-13)
Add support for expire and retry parameters to the command line for priority=2 messages
Add support for attachments
0.3 (2016-12-29)
Add support for the Glances API
Add a cancel function to MessageRequest objects to cancel high priority messages
Add support for html message styling
Fix bug in MessageRequest.poll for priority=2 requests
0.2 (2014-08-16)
Fix bug when using current timestamp
Add a pushover command line utility
Add Python 3 support
Add configuration file feature
Easier and more compact Client class creation
Switch to setuptools for easier installation and dependencies handling
0.1 (2013-04-16)
Initial Release
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
File details
Details for the file python-pushover-0.4.tar.gz
.
File metadata
- Download URL: python-pushover-0.4.tar.gz
- Upload date:
- Size: 19.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dee1b1344fb8a5874365fc9f886d9cbc7775536629999be54dfa60177cf80810 |
|
MD5 | e88925a1c06ec138baf7b801e99c002f |
|
BLAKE2b-256 | 6f3d144a0137c749bd152c3ab7f4d3ce8fe1455168dab36c2fcd900d3fab16ad |