Package pushnotify :: Module nma :: Class Client
[hide private]
[frames] | no frames]

Class Client

source code

             object --+    
                      |    
abstract.AbstractClient --+
                          |
                         Client

Client for sending push notificiations to Android devices with
the Notify My Android (NMA) application installed.

Member Vars:
    developerkey: A string containing a valid developer key for the
        NMA application.
    application: A string containing the name of the application on
        behalf of whom the NMA client will be sending messages.
    apikeys: A dictionary where the keys are strings containing
        valid user API keys, and the values are lists of strings,
        each containing a valid user device key. Device keys are not
        used by this client.

Instance Methods [hide private]
 
__init__(self, developerkey='', application='')
Initialize the Notify My Android client.
source code
 
_parse_response_stream(self, response_stream, verify=False) source code
 
_raise_exception(self) source code
 
notify(self, description, event, split=True, kwargs=None)
Send a notification to each user's apikey in self.apikeys.
source code
 
verify(self, apikey)
This method is deprecated.
source code
 
verify_user(self, apikey)
Verify a user's API key.
source code

Inherited from abstract.AbstractClient: add_key, del_key, retrieve_apikey, retrieve_token, verify_device

Inherited from abstract.AbstractClient (private): _get, _post

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, developerkey='', application='')
(Constructor)

source code 
Initialize the Notify My Android client.

Args:
    developerkey: A string containing a valid developer key for
        the NMA application.
    application: A string containing the name of the application
        on behalf of whom the NMA client will be sending
        messages.

Overrides: object.__init__

notify(self, description, event, split=True, kwargs=None)

source code 
Send a notification to each user's apikey in self.apikeys.

Args:
    description: A string of up to DESC_LIMIT characters
        containing the main notification text.
    event: A string of up to 1000 characters containing a
        subject or brief description of the event.
    split: A boolean indicating whether to split long
        descriptions among multiple notifications (True) or to
        possibly raise an exception (False). (default True)
    kwargs: A dictionary with any of the following strings as
            keys:
        priority: An integer between -2 and 2, indicating the
            priority of the notification. -2 is the lowest, 2 is
            the highest, and 0 is normal.
        url: A string of up to 2000 characters containing a URL
            to attach to the notification.
        content_type: A string containing "text/html" (without
            the quotes) that then allows some basic HTML to be
            used while displaying the notification.
        (default: None)

Raises:
    pushnotify.exceptions.ApiKeyError
    pushnotify.exceptions.FormatError
    pushnotify.exceptions.RateLimitExceeded
    pushnotify.exceptions.ServerError
    pushnotify.exceptions.UnknownError
    pushnotify.exceptions.UnrecognizedResponseError

Overrides: abstract.AbstractClient.notify

verify(self, apikey)

source code 
This method is deprecated. Use verify_user instead.

        

verify_user(self, apikey)

source code 
Verify a user's API key.

Args:
    apikey: A string of 48 characters containing a user's API
        key.

Raises:
    pushnotify.exceptions.RateLimitExceeded
    pushnotify.exceptions.ServerError
    pushnotify.exceptions.UnknownError
    pushnotify.exceptions.UnrecognizedResponseError

Returns:
    A boolean containing True if the user's API key is valid,
    and False if it is not.

Overrides: abstract.AbstractClient.verify_user