here is, including device registration:<div><br></div><div><a href="https://github.com/matzew/ag-unified-push-api/blob/master/src/test/java/org/jboss/aerogear/push/UnifiedPushManagerTest.java#L41-L81">https://github.com/matzew/ag-unified-push-api/blob/master/src/test/java/org/jboss/aerogear/push/UnifiedPushManagerTest.java#L41-L81</a></div>
<div><br></div><div>All hammered in java... since this is a test - most of the code will be executed, when interacting with HTTP endpoints of the thing;</div><div><br></div><div>Yes, there is no JS application in the test - but we do have an abstraction interface for it:</div>
<div><a href="https://github.com/matzew/ag-unified-push-api/blob/master/src/main/java/org/jboss/aerogear/push/application/ConnectedJavaScriptApplication.java">https://github.com/matzew/ag-unified-push-api/blob/master/src/main/java/org/jboss/aerogear/push/application/ConnectedJavaScriptApplication.java</a></div>
<div><br></div><div>Connected? Since only &quot;online&quot; JS clients are receiving message - there no real &quot;push to device&quot; for the JS world...</div><div><br></div><div>-Matthias<br><br><div class="gmail_quote">
On Thu, Mar 14, 2013 at 3:41 PM, Matthias Wessendorf <span dir="ltr">&lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Pushed FIRST/TEST impl + actually test case.....<div><br></div><div><a href="https://github.com/matzew/ag-unified-push-api" target="_blank">https://github.com/matzew/ag-unified-push-api</a></div><div><br></div><div>YEs.... I have &#39;xxx&#39;d out the KEY and certs :) <div>
<div class="h5"><br>
<br><div class="gmail_quote">On Thu, Mar 14, 2013 at 11:04 AM, Matthias Wessendorf <span dir="ltr">&lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

My UNIT test looks (currently) like:<div><br></div><div><a href="https://gist.github.com/matzew/3d7f9915afd8f6705da5" target="_blank">https://gist.github.com/matzew/3d7f9915afd8f6705da5</a></div><span><font color="#888888"><div>

<br></div><div><br></div><div><br></div>
<div>-M</div></font></span><div><div><div><br></div><div><br></div><div><br><br><div class="gmail_quote">On Wed, Mar 13, 2013 at 11:03 PM, Matthias Wessendorf <span dir="ltr">&lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br><br><div class="gmail_quote"><div>On Wed, Mar 13, 2013 at 10:06 PM, <a href="mailto:tech4j@gmail.com" target="_blank">tech4j@gmail.com</a> <span dir="ltr">&lt;<a href="mailto:tech4j@gmail.com" target="_blank">tech4j@gmail.com</a>&gt;</span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I think this is look really good!<div><br></div><div>Here some thoughts, and/or possible additional use-cases</div>



<div><br></div><div>* How do we want to handle multiple devices for one user?</div></div></blockquote><div><br></div></div><div>Instance of &#39;MobileApplicationInstance&#39;; each device has (per app) a different token;</div>



<div>What the apps do themselves, with multiple installs is something different.</div><div><br></div><div>Twitter, for instance, sends the push-messages to EVERY device - but that&#39;s app specific sync</div><div>(yes, i wish there was something like IMAP, for twitter)</div>


<div>
<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">
<div><br></div><div>* How do we want to handle the other side of unified push (non-native)?</div><div>** Might just not be there yet, but want to make sure we&#39;re still thinking the same thing :-)</div>
<div>** Would there be an additional abstraction above this for that?</div></div></blockquote><div><br></div></div><div>some sub type of &#39;MobileApplication&#39; can/will cover that &quot;mobile web&quot; (JS client) side:</div>



<div><a href="https://github.com/matzew/ag-unified-push-api/blob/master/src/main/java/org/jboss/aerogear/push/application/MobileApplication.java#L23" target="_blank">https://github.com/matzew/ag-unified-push-api/blob/master/src/main/java/org/jboss/aerogear/push/application/MobileApplication.java#L23</a></div>


<div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>* I&#39;m assuming there is no good way for apps to notify you when they are uninstalled?</div>



<div>** As a way of removing clutter in our tables.</div></div></blockquote><div><br></div></div><div>In apple land these are invalid tokens (see <a href="https://github.com/notnoop/java-apns/blob/master/src/main/java/com/notnoop/apns/ApnsService.java#L161" target="_blank">https://github.com/notnoop/java-apns/blob/master/src/main/java/com/notnoop/apns/ApnsService.java#L161</a>)</div>



<div>So, on a scheduled base they can be remove;</div><div><br></div><div>Google has similar API (on their MulticastResult (returned by the sender))</div><div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div dir="ltr">
<div><br></div><div>* Push filtering - I would think IDM would be very good here. </div><div>** Sending to roles, groups, etc...</div></div></blockquote><div><br></div></div><div>have different users (==roles), but not spec&#39;d out</div>


<div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>** When we store the device and app info what sub-system are you thinking?</div>
<div>*** I know you were using mongo for some of the prototyping</div><div>*** Would be possible to abstract to the IDM?</div></div></blockquote><div><br></div></div><div>yes, it should be possible (desirable) to use IDM - but does not really matter</div>



<div><br></div><div><br></div><div>Thanks for the feedback!!!</div><span><font color="#888888"><div><br></div><div>-Matthias</div></font></span><div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div dir="ltr"><div class="gmail_extra"><div><div><br><div class="gmail_quote">On Wed, Mar 13, 2013 at 12:58 PM, Douglas Campos <span dir="ltr">&lt;<a href="mailto:qmx@qmx.me" target="_blank">qmx@qmx.me</a>&gt;</span> wrote:<br>




<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br>
On 13/03/2013, at 10:28, Matthias Wessendorf &lt;<a href="mailto:matzew@apache.org" target="_blank">matzew@apache.org</a>&gt; wrote:<br>
<br>
&gt; ome more APIs, for some basic (initial) functionality:<br>
&gt;<br>
&gt; <a href="https://gist.github.com/matzew/c5fbc23bc97dfead46e1" target="_blank">https://gist.github.com/matzew/c5fbc23bc97dfead46e1</a><br>
<br>
</div>I like the current form, but I&#39;m sure we&#39;ll get asked about more OO(ish) APIs, like device.send(Message) - is this on the plans?<br>
<div><br>
&gt; User/Dev enrollment can be addressed by (hopefully) reusing the ag-security.<br>
<br>
</div>+1<br>
<br>
-- qmx<br>
<div><div><br>
<br>
_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div></div></div><span><font color="#888888">-- <br>blog: <a href="http://in.relation.to/Bloggers/Jay" target="_blank">http://in.relation.to/Bloggers/Jay</a>
</font></span></div></div>
<br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div></div><br><br clear="all"><div><br></div>-- <br><div>
<div>Matthias Wessendorf <br>
<br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>



twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br><br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>


sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br><br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>

sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br><br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div>