On Fri, May 8, 2015 at 2:10 AM, Matthias Wessendorf <matzew@apache.org> wrote:


On Thu, May 7, 2015 at 11:58 PM, Daniel Passos <dpassos@redhat.com> wrote:
Just to be clear, we are talking about metrics for messages delivered (received on device) or about really read/open?

Because in Android land is not possible know when message was read/opened. We delegate how the message will be delivered/showed to the MessageHandler[1] and we don't have access to it.

when the user clicks on the message, the app opens. That's what we track w/ this PR, not the actual: I read the message - more "App was opened due to push", see:

I can't do that. I can't do an action when app was opened. To do that we would need to create our own application[1] class, and all projects would need to extend it. As I have told in my previous email, for now I only can do something when the message is delivered to the device.

[1] http://developer.android.com/reference/android/app/Application.html

 

Today we only have access when the message is delivered. Basically we receive the message in a AeroGearGCMMessageReceiver[2] do some checks and push the message for all Handles registered[3][4]

[1] https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/MessageHandler.java
[2] https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/gcm/AeroGearGCMMessageReceiver.java
[3] https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/RegistrarManager.java#L118
[4] https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/RegistrarManager.java#L130

-- Passos


On Wed, May 6, 2015 at 6:38 AM, Matthias Wessendorf <matzew@apache.org> wrote:
Hi,

as discussed on the previous thread, there will be a new endpoint to 'track' the "App opened/launched due to received push notification".

Internally, on the UPS, the Push Message has an ID, which get's append to the payload of the notification, like here:

On the client SDKs this will be read and a HTTP call made to the soon introduced MetricsEndpoint. Currently this info is send to the RegistrationEndpoint, including the deviceToken/registrationId. However, I think that the deviceToken/registrationId is currently not needed for metrics, since we are just interested in anonymous "app launched/opened due to push", and not a specific "DEVICE X did open, while DEVICE Y did not yet open".

So all we really need is the ID of the push notification, to be processed by our Metrics Service

Therefore my proposal is have an endpoint:

PUT /metrics/pushmessage/{pushMessageID}

I think PUT is good/best, because there is nothing really created on the server, it's more updating the 'counter' on the existing PushMessageInformation object.

Thoughts?
-Matthias

_______________________________________________
aerogear-dev mailing list
aerogear-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/aerogear-dev



--

_______________________________________________
aerogear-dev mailing list
aerogear-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/aerogear-dev



--
-- Passos