Bringing Push Notifications to Plone Intranet

Isaac Prior

Netsight is releasing open source code for a mobile app to support push notification messaging from intranets.

No meaningful social hub would be complete without instant message notifications, event reminders or service announcements.

The problem is, in-browser notifications (Facebook-style icon, with an updating counter) used in Plone Intranet are only sufficient when the user is currently browsing the site. Traditionally, Netsight has opted for email alerts to reach users not actively clicking our beautiful UIs. While not going away anytime soon, email alerts are very last century: they accumulate quickly and often require filtering rules to keep alert emails from burying unrelated or more important messages.

In an effort to increase user interaction and response times to intranet content changes, Netsight has investigated alternative means of presenting users with personalised, time-sensitive information without interrupting workflow.

Google Cloud Messaging (GCM) provides a platform-independent way of pushing targeted or global alerts and messages to mobile devices in near real time.  For several reasons, GCM functionality proved to be an ideal solution to extend Plone Intranet’s notification system: 1) GCM can work with all Android, iOS and Chrome devices; 2)  messages are securely encrypted in transport;  3) all aspects of message queuing and handling are managed by GCM, for free.

To implement this solution, Netsight integrated a Plone Intranet web server backend with a native Android application. This implementation extends Plone Intranet’s instant messaging system to provide mobile users with handy pop-up alerts for personal messages, and it allows site administrators to broadcast news updates to a number of users simultaneously.

Writing a Message in Messaging App

As illustrated in the example sequence above and below, after messages have been posted notification pop-ups can be automatically bundled together (and dismissed when read), doing away with the hassle of managing an email folder and keeping related messages together for easy review.

Messaging app alertsMessage example in Messaging App

Upon clicking a pop-up alert, users can be provided with any number of configurable and context-dependent actions: for example,  being directed to a site’s relevant functionality, presented with a means to respond, or given the choice to opt out of future notifications of that kind.

Integrating meaningful push notification functionality to a web platform is no simple task: excessive, irrelevant and unimportant pushes are all likely to frustrate users more than no notifications at all. To combat this, fine-grained settings on a site running Plone Intranet will allow users to subscribe to specific types of events and content; corresponding client-side settings will provide users with the capacity to stop, mute, or filter incoming notifications.

The Plone Intranet messaging app that Netsight has developed for Android devices is a fantastic first step to something better. From the lessons learnt constructing it, it’s evident that GCM has a lot more functionality yet to offer: client to server (upstream) messages could provide instant messaging with improved data and power efficiency, delivery reports, automated responses and more.

Tweet about this on TwitterShare on FacebookShare on Google+