[aerogear-dev] [UPS] Geolocation Support

Summers Pittman supittma at redhat.com
Tue Dec 2 09:59:16 EST 2014


On 12/01/2014 10:57 AM, Sebastien Blanc wrote:
>
>
> On Mon, Dec 1, 2014 at 4:46 PM, Summers Pittman <supittma at redhat.com 
> <mailto:supittma at redhat.com>> wrote:
>
>     What other companies provide geofencing and what do their APIs
>     look like?
>     I know Google has some stuff for Android buried in Google Play
>     Services.
>
>     In general I think it might be less big brother if instead of the
>     user reporting their location we add in metadata to filter
>     incoming messages.  This will have us sending more metadata but we
>     don't have to worry about what if some bad guy compromises the
>     server and start following his mother-in-law.
>
> Sorry, I'm not sure to understand the alternative you propose.
I don't like the push server knowing every user's location.  Instead of 
the push server deciding to send to a user based on her location the 
push server should send a "filter" property with the message the client 
can use to determine if it should show the message.
>
>
>
>
>     On 11/27/2014 11:52 AM, Sebastien Blanc wrote:
>>
>>     Hi Folks !
>>
>>     During our last f2f we agreed on adding some geolocation support
>>     for the next UnifiedPush Release (1.1). I would like to start
>>     here a thread to discuss this topic.
>>
>>     Let's keep in mind : /Crawl, Walk, Run/
>>
>>     I would like to start with a concrete proposition and initiate
>>     the discussions from there :
>>
>>
>>       <https://gist.github.com/sebastienblanc/d89e41b72c9de537dbde#installations>Installations
>>
>>
>>         <https://gist.github.com/sebastienblanc/d89e41b72c9de537dbde#model-change>Model
>>         Change
>>
>>     The idea is to add 2 new fields to the |Installation| Object :
>>
>>     |double longitude;
>>     double latitude;
>>
>>     |
>>
>>     These field *should* be optional !
>>
>>
>>         <https://gist.github.com/sebastienblanc/d89e41b72c9de537dbde#registration>Registration
>>
>>     When the device registers, along with alias, categories etc ...
>>     it will also be possible to pass a latitude and longitude.
>>
>>     Later, we will probably offer a endpoint to update these
>>     properties. |PUT /registry/device/{token}|
>>
>>
>>       <https://gist.github.com/sebastienblanc/d89e41b72c9de537dbde#sender>Sender
>>
>>
>>         <https://gist.github.com/sebastienblanc/d89e41b72c9de537dbde#server-side>Server
>>         Side
>>
>>     We need to extend the current sender API to be able to add
>>     geolocation as a criteria. I see that as something like :
>>
>>     |{
>>        "message":{
>>          "alert":"HELLO!
>>        },
>>        "criteria":{
>>         "geolocation":
>>             {
>>            "latitude" : 40.2566
>>            "longitude": 2.36556
>>            "within" : 5
>>            "unit" : "Km" // optional, default is Km
>>             }
>>        }
>>     }
>>
>>     |
>>
>>     In this example, the Push Notification will be sent only to
>>     devices within a radius of 5 km of the supplied location.
>>
>>     On the implementation side, I think it make sense to use
>>     Hibernate Search since it has nice support forSpatial queries
>>     <https://docs.jboss.org/hibernate/search/4.2/reference/en-US/html/spatial.html>.
>>
>>
>>         <https://gist.github.com/sebastienblanc/d89e41b72c9de537dbde#sender-client>Sender
>>         Client
>>
>>     The different Sender Clients (Java, Node.js, .net) should be
>>     updated accordingly.
>>
>>
>>       <https://gist.github.com/sebastienblanc/d89e41b72c9de537dbde#client-sdks>Client
>>       SDKs
>>
>>     In this fisrt iteration, the registration code would to be
>>     updated to include latitude and longitude for :
>>
>>       * iOS (Including Safari ? )
>>       * Android ( Including Chrome Apps ?)
>>       * JS UPS-SPS Lib
>>       * Cordova Plugin
>>       * Amazon
>>       * Windows
>>
>>     Retrieving the current position of the device is not in scope of
>>     this first version, later we could offer some features around that.
>>
>>     There are some jiras to track these tasks :
>>     https://issues.jboss.org/browse/AGPUSH-828
>>
>>     Comments and questions welcome !
>>
>>     Sebi
>>
>>
>>
>>     _______________________________________________
>>     aerogear-dev mailing list
>>     aerogear-dev at lists.jboss.org  <mailto:aerogear-dev at lists.jboss.org>
>>     https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
>
>     -- 
>     Summers Pittman
>     >>Phone:404 941 4698  <tel:404%20941%204698>
>     >>Java is my crack.
>
>
>     _______________________________________________
>     aerogear-dev mailing list
>     aerogear-dev at lists.jboss.org <mailto:aerogear-dev at lists.jboss.org>
>     https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
>
>
>
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev


-- 
Summers Pittman
>>Phone:404 941 4698
>>Java is my crack.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/aerogear-dev/attachments/20141202/30faab78/attachment.html 


More information about the aerogear-dev mailing list