ISY-99i Series INSTEON:Networking:Mobile Notification
Mobile Notification
With the Networking module, you can send push notifications to both Android and IOS without using SMS messages (so works with non-phone devices, like tablets and media players).
You need the appropriate third party product from the respective market/store:
- Prowl
- Notify My Android
- Pushover
- Pushbullet
- IOS - https://itunes.apple.com/us/app/pushbullet/id810352052
- Android - https://play.google.com/store/apps/details?id=com.pushbullet.android
- Chrome - https://chrome.google.com/webstore/detail/pushbullet/chlffgpmiacpedhhbkiomidkjlcfhogd
- Firefox - https://addons.mozilla.org/en-US/firefox/addon/pushbullet/
- Others - https://www.pushbullet.com/apps
- Autoremote (MUST HAVE if you are a Tasker user!)
Additionally, MobiLinc on IOS (not Android - yet) offers notification within it's subscription to the connect service. See http://mobilinc.com/features/push/
All of these products utilize the respective push notification infrastructures - and use very similar APIs.
To configure in the ISY, follow these steps:
Setup account for respective API:
- Prowl
- Sign up at https://www.prowlapp.com
- Enter credentials into Prowl on your IOS device
- Send a test notification from https://www.prowlapp.com/add_notification.php to verify installation
- Create an API key at https://www.prowlapp.com/api_settings.php
- For each message you wish to send, create a network resource as follows
- 'https' 'post'
- host is 'api.prowlapp.com'
- port is 443
- path is '/publicapi/add'
- timeout at least 2000ms (SSL takes a while to become established - can be lower if you change method to 'http' though
- mode is 'C Escaped'
- body to 'apikey=#API Key#&application=ISY&event=TEST ONLY&description=Test Notification\n'
- (obviously - replace #API Key# with your API key
- Notify My Android
- Sign up at https://www.notifymyandroid.com
- Enter credentials into 'Notify My Android' on device
- Send a test message from https://www.notifymyandroid.com/notify.php to verify installation
- Create an API key at https://www.notifymyandroid.com/account.php
- For each message you wish to send, create a network resource as follows
- 'https' 'post'
- host is 'www.notifymyandroid.com'
- port is 443
- path is '/publicapi/notify'
- timeout at least 2000ms (SSL takes a while to become established - can be lower if you change method to 'http' though
- mode is 'C Escaped'
- body to 'apikey=#API Key#&application=ISY&event=TEST ONLY&description=Test Notification\n'
- (obviously - replace #API Key# with your API key
- Pushover
- Sign up at https://pushover.net/login
- Make a note of your user key
- Create an application at https://pushover.net/apps
- Make a note of your application key
- Enter same credentials into 'Pushover' app on device
- For each message you wish to send, create a network resource as follows
- 'https' 'post'
- host is 'api.pushover.net'
- port is 443
- path is '/1/messages.json'
- timeout at least 2000ms (SSL takes a while to become established - can be lower if you change method to 'http' though
- mode is 'C Escaped'
- body to 'token=#Application Token#&user=#User Key#&message=Test Notification'
- full API documentation is at https://pushover.net/api
- Pushbullet
- After signing up, visit https://www.pushbullet.com/account and get your access token.
- For each message you wish to send, create a network resource as follows
- 'https' 'post'
- host is 'api.pushbullet.com'
- port is 443
- path is '/v2/pushes'
- timeout at least 2000ms (SSL takes a while to become established - can be lower if you change method to 'http' though
- mode is 'C Escaped'
- In Headers, change 'Content type' to application/json
- Add an 'Authorization' header - put your access token in the username - leave the password blank
- Place: '{"type": "note", "title": "Note Title", "body": "Note Body"}' in the Body
- Update - and test.
- Documentation is at https://docs.pushbullet.com/v2/devices/ and https://docs.pushbullet.com/v2/pushes/
- Autoremote
Many APIs have other optional parameters you can send as well - details are on the sites in the API documentation.
On the ISY - there are potentially some issues with SSL negotiation depending on if you have the PRO version or not. Go into the dashboard (http://www.universal-devices.com/99i/dashboard.jnlp) and in the network settings make sure 'HTTPS Client Settings' is set to 'TLS 1.2' and 'All' is set for strength. Uncheck 'Verify'.
Other settings may work - this is just what works for me - and it's a security best practice now to avoid SSL3.
Currently - a separate network resource needs to be created for each potential action. So - one for 'Light On' and another for 'Light Off'. This makes it difficult to send, for instance, the current temperature. Version 5 of ISY is likely to make available variable substitution in network resources, which will remove this shortcoming.