Hello,
second try - as the first thread was hijacked around other discussions.
For a first round of collecting some more data around the usage of the push
server (aka analytics/metrics), I'd propose we keep it very simple!
Overall, I see one major area of interest:
*metrics around push messages being sent:
- time of sending (using timezone of the server?)
- group of receivers (e.g. everyone or the provided cirterias(e.g. alias,
categories,...))
- payload (the entire payload, including custom keys - not only alert,
sound, badge etc)
- info on: "could we deliver to the 3rd party networks?"
This is a nice feature, and would enrich the UPS. The server will have a
RESTful endpoint, and an UI for displaying the data. The view would be
bascially a history for all the push sent (per "Push Application"
construct).
However, I can see also some interest around device specific metrics:
Today we obivously store all the registered devices, but we also remove
them from the database table if needed (to not send messages to phones that
would no longer receive them anyways).
Something that would be interesting as well, might be the following data:
- how often was an app has reached the push server (note: every time the
app starts, the metadata of the server is being updated (see [2])
- number of device-tokens / registrationIDs that have been removed, when
receiving errors from Apple/Google (see [3] or [4])
- number of devices, that were activly removed using our APIs (supported
only on Android/SimplePush due to Apple policy, see [5])
While the initial focus should be around the message related metrics,
capturing some device data is nice too.
Any thoughts ?
-Matthias
PS: Oh, for the longer run(...), I'd also like to see metrics like "was
mobile app opened due to a push notification". BUT that also requires some
more work/reseach on the client Push SDKs. But seriously, this is not a
priority for the next few months!
[1]
https://issues.jboss.org/browse/AGPUSH-116
[2]
https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/jaxrs...
[3]
https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/push/...
[4]
https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/push/...
[5]
https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/jaxrs...
--
Matthias Wessendorf
blog:
http://matthiaswessendorf.wordpress.com/
sessions:
http://www.slideshare.net/mwessendorf
twitter:
http://twitter.com/mwessendorf