gntp 1.0.3


pip install gntp

  Latest version

Released: Mar 06, 2016

Project Links

Meta
Author: Paul Traylor

Classifiers

Development Status
  • 4 - Beta

Intended Audience
  • Developers

License
  • OSI Approved :: MIT License

Natural Language
  • English

Operating System
  • OS Independent

Programming Language
  • Python :: 2
  • Python :: 2.5
  • Python :: 2.6
  • Python :: 2.7
  • Python :: 3
  • Python :: 3.3
  • Python :: Implementation :: PyPy

This is a Python library for working with the Growl Notification Transport Protocol

It should work as a dropin replacement for the older Python bindings

Installation

You can install with pip

$ pip install gntp

then test the module

$ python -m gntp.notifier

Simple Usage

# GNTP uses the standard Python logging
import logging
logging.basicConfig(level=logging.INFO)

import gntp.notifier

# Simple "fire and forget" notification
gntp.notifier.mini("Here's a quick message")

# More complete example
growl = gntp.notifier.GrowlNotifier(
    applicationName = "My Application Name",
    notifications = ["New Updates","New Messages"],
    defaultNotifications = ["New Messages"],
    # hostname = "computer.example.com", # Defaults to localhost
    # password = "abc123" # Defaults to a blank password
)
growl.register()

# Send one message
growl.notify(
    noteType = "New Messages",
    title = "You have a new message",
    description = "A longer message description",
    icon = "http://example.com/icon.png",
    sticky = False,
    priority = 1,
)

# Try to send a different type of message
# This one may fail since it is not in our list
# of defaultNotifications
growl.notify(
    noteType = "New Updates",
    title = "There is a new update to download",
    description = "A longer message description",
    icon = "http://example.com/icon.png",
    sticky = False,
    priority = -1,
)

URL based images do not work in the OSX version of growl 1.4 You can send the image along with the notification to get around this.

image = open('/path/to/image.png', 'rb').read()
growl.notify(
    noteType = "New Messages",
    title = "You have a new message",
    description = "This time we embed the image",
    icon = image,
)

Bugs

GitHub issue tracker

Changelog

v1.0.3
  • Allow file:// scheme to be used for icons

v1.0.2
  • Fix bug with incoming password hash

  • Added info about license in each source file

v1.0.1
  • Fix bug with binary data (images) being encoded incorrectly

v1.0
  • Python 3.3 Support

v0.9
  • Remove duplicate code from gntp.config

  • Catch all errors and rethrow them as gntp.errors to make it easier for other programs to deal with errors from the gntp library.

  • Ensure that we open resource files as “rb” and update the documentation

v0.8
  • Fix a bug where resource sections were missing a CRLF

  • Fix a bug where the cli client was using config values over options

  • Add support for coalescing

v0.7
  • Support for images

  • Better test coverage support

0.6
  • ConfigParser aware GrowlNotifier that reads settings from ~/.gntp

No dependencies