Hello,
I took a look at the Helios server (
https://github.com/helios-framework/helios).
It is a Sinatra based "Web UI", on-top of a PostgreSQL Database, which has
a RESTful endpoint to accept device registration information/data;
On the (iOS) client, they recommend the usage of the Orbiter client
framework (a simple wrapper around AFNetworking);
I am not planing to use the Orbiter client framework, but just to layout
the level of data which, MAY be stored for a registered "application
installation" on a device
It has nice hooks to provide a "quite time", for disabling message delivery
in a certain time interval:
https://github.com/mattt/Orbiter/blob/master/Orbiter/Orbiter.h#L86-87
However, the framework collects a lot of other data as well :)
For instance... it collects location data (if enabled, on the device), but
the API doesn't really tell you that - it's collected by the implementation:
https://github.com/mattt/Orbiter/blob/master/Orbiter/Orbiter.m#L100-101
So I was surprised to see that in the JSON response :-)
Sure... it's useful - for some apps - but I think... If we want to allow
our uses to store that kind of data, we should:
- add API hooks (into the client SDK) - may become 'verbose'... after a
while
- show how to do that and use a generic API (e.g. NSDictionary)
At a low-level, we really "just" require the device token and the
version/variant of the os (e.g. iOS 6.1.3). Any other data is APP specific
and really needs to be defined by the application developer that is using
our bits.
Any thoughts ?
--
Matthias Wessendorf
blog:
http://matthiaswessendorf.wordpress.com/
sessions:
http://www.slideshare.net/mwessendorf
twitter:
http://twitter.com/mwessendorf