Push Notification Plugin

[ul]Current Version : 0.98
If you are a Push Over user, upgrade to this version and use your Own Application Key.

Hi, All
A plugin for sending notification using the following Push Services
[list]
[li]Prowl (IOS) [/li]
[li]PushOver (IOS and Android)[/li]
[li]Toasty (Windows Phone)[/li]
[li]XendApp (IOS, Android, Windows RT, Windows Phone )/li]
[/list]

Notes about service limitations:
Prowl : Have a limit of 1000 messages per hour
PushOver : Messages limit per Month (Use Custom Application key to allow 7500 messages Per User/Per Month) , Messages are currently limited to 512 characters, including a title. Supplementary URLs are limited to 500 characters, and URL titles to 50 characters.
Toasty : Image file must be in .png format and no larger than 128x128 pixels.
XendApp : No restriction founds on provider Web Site.

General Functions
[list]
[li]Summary Tab[/li]
[li]Tab for Each Service Parameters[/li]
[li]Last Error/Succes repport on Dashborad[/li]
[li]Ability to reset number of sent message for each service[/li]
[li]Ability to send test message for each service from the setup tab[/li]
[/list]
Prowl Functions
[list]
[li]HTTPS connexion to server to preserve your ID[/li]
[li]Add serial of sending Unit to subject[/li]
[li]Use priority in notification[/li]
[li]Ability to Add URL in notification[/li]
[/list]
PushOver Functions
[list]
[li]Allow custom application key (Allow 7500 Messages per User/per Month)[/li]
[li]HTTPS connexion to server to preserve your ID[/li]
[li]Add serial of sending Unit to subject[/li]
[li]Use priority in notification[/li]
[li]Ability to Add URL in notification[/li]
[li]Ability to Add URL Title in notification[/li]
[li]Ability to change notification sound[/li]
[/list]
Toasty Functions
[list]
[li]Add serial of sending Unit to subject[/li]
[li]Add your own image in notification[/li]
[/list]
XendApp Functions
[list]
[li]Add serial of sending Unit to subject[/li]
[li]Use multiple channels for notification[/li]
[/list]

Tested only with UI5 on Vera Lite (1.5.408)

VERSION HISTORY
[list]
[li]0.5 Initial public release[/li]
[li]0.6 Add priority, and URL parameters[/li]
[li]0.7 Add PushOver support, Change summary Tab, Add Tabs for service setup, Prowl remaining messages and reset date are now moved on Prowl Tab[/li]
[li]0.8 Add URL, URL Title Priority to PushOver service, GUI modification, Bug Fixes, Rename to Push Notification[/li]
[li]0.9 Change PushOver service usage, Bug Fixes, New Icon[/li]
[li]0.91 Add new PushOver Quiet priority[/li]
[li]0.92 Add new PushOver Per-notification Sounds function (Require Version 1.5+ of Mobile Application), and Ability to send Test message from Setup Tab.[/li]
[li]0.93 Add toasty Service Support, Move test message to specific tab, Improve PushOver code.[/li]
[li]0.94 Add toasty image notification.[/li]
[li]0.95 Extend PushOver API Usage.[/li]
[li]0.98 Add XendApp Notification, Remove PushOver Limits by using your Own application Key.[/li]
[/list]

INSTALLATION
Automatic Installation version may be older due to validation Delay

Automatic
https://apps.mios.com/plugin.php?id=2508

Manual
Upload the plugin files :

  • In the Toolbox section open MiOS Developers >> Luup Files and upload all the files you downloaded. check the Restart Luup after upload checkbox and click GO.

Create the IOS Notification Device:

  • Open Create Device.
  • In the UpnpDevFilename input box enter D_IosPush.xml
  • In the Upnp Implementation Filename input box enter I_IosPush.xml
  • In the Description input box enter a name for the panel device, e.g. My Push Notification.
  • Click Create device.
  • Close this window and Save.

Configuration
Go to the corresponding service Tab and Fill the required parameters

Advanced Configuration

  • In the device advanced control tab, you can find the following parameters (See screenshot)

[list]
[li]Plugin Version[/li]
[li]Plugin ID (Internal Usage)[/li]
[li]Status (Unused)[/li]
[li]Last Error message with readable time[/li]
[li]Message (Update notification … )[/li]
[li]Prowl API Key[/li]
[li]Prowl Application Name[/li]
[li]Add serial of sending Unit to Prowl notification[/li]
[li]Prowl Default Priority[/li]
[li]Number of successfull Prowl notification sent[/li]
[li]Number of remaining usable prowl message for the actual period[/li]
[li]Timestamp of prowl reset date[/li]
[li]PushOver User Key[/li]
[li]PushOver Custom Application Key (Details here) [/li]
[li]Activate Use of your Custom Application Key[/li]
[li]PushOver Application Name[/li]
[li]PushOver Default Sound[/li]
[li]PushOver Sounds List[/li]
[li]Add serial of sending Unit to PushOver notification[/li]
[li]PushOver Default Priority[/li]
[li]Number of successfull PushOver notification sent[/li]
[li]Timestamp of last Error[/li]
[li]Timestamp of last successful send[/li]
[li]Toasty Device ID[/li]
[li]Add serial of sending Unit to Toasty notification[/li]
[li]Toasty Application Name[/li]
[li]Number of successfull Toasty notification sent[/li]
[li]XendApp UserName[/li]
[li]XendApp Password[/li]
[li]XendApp Application Name[/li]
[li]XendApp channel Name List[/li]
[li]XendApp channel ID List[/li]
[li]XendApp Default Channel[/li]
[li]XendApp Message Encryption[/li]
[li]XendApp Content type Option ( Can be 1 or 2). 1 - PlainText, 2 - HTML.)[/li]
[li]Add serial of sending Unit to XendApp notification[/li]
[li]Number of successfull XendApp notification sent[/li]
[li]Prowl API message URL[/li]
[li]PushOver API message URL[/li]
[li]PushOver API Sound List URL[/li]
[li]Toasty API URL[/li]
[li]Toasty Image URL[/li]
[li]XendApp API URL[/li]
[li]Debug Flag[/li]
[/list]

[size=10pt]USAGE IN SCENE[/size]
You just have to fill informations in bold the other can be left blank if not used

SendProwlNotification action
Send a notification using Prowl service
[list]
[li]Event[/li]
[li]Description[/li]
[li]Priority[/li]
[li]URL[/li]
[/list]
The value for priority can be :
-2 Very Low
-1 Moderate
0 Normal
1 High
2 Emergency

SendPushOverNotification action
Send a notification using PushOver service
[list]
[li]Title[/li]
[li]Message[/li]
[li]Priority[/li]
[li]URL[/li]
[li]URL Title[/li]
[li]Sound[/li]
[/list]
The value for priority can be :
0 Normal
1 High
-1 Quiet

The value for sound can be :
bike
bugle
cash Register
classical
cosmic
falling
gamelan
incoming
intermission
magic
mechanical
piano Bar
siren
space Alarm
tug Boat

This list can change and is automaticaly updated from PushOver web site, so if you want the last updated list,
use pushoversoundlist field in the advanced tab.

SendToastyNotification action
Send a notification using toasty service
[list]
[li]Title[/li]
[li]Message[/li]
[li]ImageUrl[/li]
[/list]

SendXendAppNotification
[list]
[li]Title[/li]
[li]Message[/li]
[li]Channel[/li][/list] (Not mandatory if you specify a default channel)[/ul]

ResetProwlCount action
Reset Prowl count of sent message(s)

ResetPushOverCount action
Reset PushOver count of sent message(s)

ResetToastyCount action
Reset toasty count of sent message(s)

ResetXendAppCount action
Reset XendApp count of sent message(s)

[size=10pt]USAGE IN CODE[/size]

Assuming that the Plugin was installed as Device 99, the following tests should work. Your installation will have a different Device number, please adjust accordingly.

luup.call_action("urn:upnp-org:serviceId:IOSPush1", "SendProwlNotification",{ Event= "Title", Description="Message", Priority=2, URL=""}, 99)

luup.call_action("urn:upnp-org:serviceId:IOSPush1", "SendPushOverNotification",{ Title= "Title", Message="Message", Priority=1, URL="", URLTitle="", Sound="Siren"}, 99)

luup.call_action("urn:upnp-org:serviceId:IOSPush1", "SendToastyNotification",{ Title= "Title", Message="Message", ImageURL="" }, 99)

luup.call_action("urn:upnp-org:serviceId:IOSPush1", "SendXendAppNotification",{ Subject= "Subject", Message="Message", Channel="<ChannelID>" }, 99)

Reserved for more documentation.

Looks great !!

I’ve been using the code for this, so I’m looking forward to being ablework with the UI, which for me is easier to use/understand.

Keep up the great work !!

I’ve seen your recent email notification post and now this one, So I look forward to seeing what comes next :wink:

Hi Massalia

I’ve just created the device and run it a few time and it works really well - thank you again for sharing …

Out of interest do you have any plans to add more options to the input values from the API (Prowl - API) e.g. Priority, URL etc ?

@parkerc, it was enough to ask :wink:

New version 0.6 just published with new priority and URL parameters available in scene.

Hello

good job :wink:

possible to do a plugin with pushinbox ?

thanks

[quote=“Massalia”]@davidd1205

That was my initial plan but it’s impossible now to install pushingme.to App from Appstore, it raise an error.
I send a message to the support and i’ve got … no answer.

If someone can send me the Iphone IPA file in private (The apps is free, so no piracy stuff), i can install it and add the required code.[/quote]

it’s not pushme it’s http://www.pushingbox.com/
this service send notification to pushme ,android and karotz etc…

@davidd1205

Ooops misreading sorry, Yes i can do it, but probably in a new plugin.
I’m just finishing PushOver Integration before.

[quote=“Massalia, post:8, topic:172383”]@davidd1205

Ooops misreading sorry, Yes i can do it, but probably in a new plugin.
I’m just finishing PushOver Integration before.[/quote]

no worries …

I did not know pushover I’ll test on my android and my ios

thank you anyway for your work it will simplify notificaqtions for vera

New version 0.7 just published with new GUI improvment and Basic PushOver service support.

See first post for details, and roadmap.

Great work Massalia. I will give the plugin a go with the PushOver service as I only use android devices.

  • Garrett

Hi Massalia,

I have tested 0.7 with Prowl on UI5 1.5.408…

Seems that the plugin doesn’t keep my prowl API key… Is this normal ?

It still keep old values even after “press” save button ?

/xavier

@kiwi

After uploading or updating files, you must

[ul][li]Restart Luup engine [/li]
[li]Refresh your web page in your browser[/li][/ul]

New version 0.8 just published with new GUI improvment and PushOver full service support.
Add per service message count and reset function. BugFix

See first post for details, and roadmap.

Hi !

0.8 works much better, BTW I have installed it using apps.mios.com that push the installation…

I can confirm now that plugin remember my prowl settings :slight_smile: But went sending some event I get : Missing file… error see captures :slight_smile:

It seems that the application field (not file) :wink: is missing, it’s an error message coming from prowl server.
I was able to reproduce the problem by removing value from the Application name in the Prowl Setup Tab.

You must have a value for this field, it cannot be Blank (See Screenshot)
Could you please tell me if it’s help.

Hum…

I was thinking of that, unfortunately it is set to something (before, it was set into “Vera”, the default value, but I has set it to “Maison” but this doesn’t change anything).

Maybe the the value gets lost somewhere ?

Regards,
Xavier

@Kiwi

Could you please load the attached version, reload lupp …

Goto to advanced Tab, set Debug value to 2, then try to resend a message and after the error occured, go to the advanced tab and send me the content of the DebugData field and a screenshot of the advanced Tab please.

Thanks

I have installed 0.8 manually and tested with PushOver and it seems to be working very well.

Great Job! This will be very handy!

Out of interest, does anybody know how I can fire a PushOver message via LuuP code? An example would be greatly appreciated. Most of my scenes are written in LuuP and I could send different messages depending on my various “If” statements.

Thanks

Gizmo

@GizmoB73

I add an exemple of Luup code needed to call main functions at the end of the first post.