'@param data: (Optional) See decode()
@param app: (Optional) Set Application-Name
@param name: (Optional) Set Notification-Name
@param title: (Optional) Set Notification Title
@param password: (Optional) Password to use while encoding/decoding messages'

def __init__(self, data=None, app=None, name=None, title=None, password=None):

    _GNTPBase.__init__(self, 'NOTIFY')
    self.resources = {}
    self.requiredHeaders = ['Application-Name', 'Notification-Name', 'Notification-Title']
    if data:
        self.decode(data, password)
    else:
        self.set_password(password)
        if app:
            self.headers['Application-Name'] = app
        if name:
            self.headers['Notification-Name'] = name
        if title:
            self.headers['Notification-Title'] = title
        self.add_origin_info()
