<div dir="ltr"><p style="margin-right:0px;margin-bottom:15px;margin-left:0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px;margin-top:0px!important">Today we are announcing the first beta release of our 1.0.0 version. After the big overhaul, including a brand new AdminUI with <a href="http://matthiaswessendorf.wordpress.com/2014/07/07/unifiedpush-0-11/" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">the last release</a> this release contains several enhancements:</p>
<ul class="" style="padding:0px 0px 0px 30px;margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px"><li>iOS8 interactive notification support</li><li>increased APNs payload (2k)</li>
<li>Pagination for analytics</li><li>improved callback for details on actual push delivery</li><li>optimisations and improvements</li></ul><p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">
The complete list of included items are avialble on our <a href="https://issues.jboss.org/browse/AGPUSH/fixforversion/12323753" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">JIRA instance</a>.</p><h3 style="margin:1em 0px 15px;line-height:1.7;font-size:1.5em;padding:0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif">
<a name="user-content-ios8-interactive-notifications" class="" href="https://gist.github.com/matzew/a87119d5c480cb357b24#ios8-interactive-notifications" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none;display:block;padding-right:6px;padding-left:30px"></a>iOS8 interactive notifications</h3>
<p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">Besides the work on the server, we have updated our <a href="https://github.com/aerogear/aerogear-unifiedpush-java-client" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">Java</a> and <a href="https://github.com/aerogear/aerogear-unifiedpush-nodejs-client" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">Node.js</a> sender libraries to support the new iOS8 interactive notification message format.</p>
<p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">If you curious about iOS8 notifications, <a href="https://twitter.com/corinnekrych" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">Corinne Krych</a> has a <a href="http://corinnekrych.blogspot.fr/2014/07/ios8-interactive-notification-available.html" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">detailed blog post</a> on it and how to use it with the AeroGear UnifiedPush Server.</p>
<h3 style="margin:1em 0px 15px;line-height:1.7;font-size:1.5em;padding:0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif"><a name="user-content-swift-support-for-ios" class="" href="https://gist.github.com/matzew/a87119d5c480cb357b24#swift-support-for-ios" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none;display:block;padding-right:6px;padding-left:30px"></a>Swift support for iOS</h3>
<p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">On the iOS client side Corinne Krych and <a href="https://twitter.com/cvasilak" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">Christos Vasilakis</a> were also busy starting some Swift work: our iOS registration SDK supports swift on this <a href="https://github.com/aerogear/aerogear-push-ios-registration/tree/swift" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">branch</a>. To give you an idea how it looks, here is some code:</p>
<div class="" style="color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px;background-image:initial;background-repeat:initial"><pre style="font-family:Consolas,&#39;Liberation Mono&#39;,Menlo,Courier,monospace;font-size:13px;margin-top:15px;margin-bottom:15px;border:1px solid rgb(221,221,221);line-height:19px;overflow:auto;padding:6px 10px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;word-wrap:normal;background-color:rgb(248,248,248)">
<span class="" style="font-weight:bold">func</span> <span class="" style="color:rgb(153,0,0);font-weight:bold">application</span><span class="">(</span><span class="">application</span><span class="">:</span> <span class="" style="color:rgb(153,153,153)">UIApplication</span><span class="" style="font-weight:bold">!</span><span class="">,</span> <span class="">didRegisterForRemoteNotificationsWithDeviceToken</span> <span class="">deviceToken</span><span class="">:</span> <span class="" style="color:rgb(153,153,153)">NSData</span><span class="" style="font-weight:bold">!</span><span class="">)</span> <span class="">{</span>
  <span class="" style="color:rgb(153,153,136);font-style:italic">// setup registration</span>
  <span class="" style="font-weight:bold">let</span> <span class="">registration</span> <span class="" style="font-weight:bold">=</span> 
  <span class="">AGDeviceRegistration</span><span class="">(</span><span class="">serverURL</span><span class="">:</span> <span class="" style="color:rgb(153,153,153)">NSURL</span><span class="">(</span><span class="">string</span><span class="">:</span> <span class="" style="color:rgb(221,17,68)">&quot;&lt;# URL of the running AeroGear UnifiedPush Server #&gt;&quot;</span><span class="">))</span>

    <span class="" style="color:rgb(153,153,136);font-style:italic">// attemp to register</span>
    <span class="">registration</span><span class="">.</span><span class="">registerWithClientInfo</span><span class="">({</span> <span class="">(</span><span class="">clientInfo</span><span class="">:</span> <span class="">AGClientDeviceInformation</span><span class="" style="font-weight:bold">!</span><span class="">)</span> <span class="" style="font-weight:bold">in</span>
        <span class="" style="color:rgb(153,153,136);font-style:italic">// setup configuration</span>
        <span class="">clientInfo</span><span class="">.</span><span class="">deviceToken</span> <span class="" style="font-weight:bold">=</span> <span class="">deviceToken</span>
        <span class="">clientInfo</span><span class="">.</span><span class="">variantID</span> <span class="" style="font-weight:bold">=</span> <span class="" style="color:rgb(221,17,68)">&quot;&lt;# Variant Id #&gt;&quot;</span>
        <span class="">clientInfo</span><span class="">.</span><span class="">variantSecret</span> <span class="" style="font-weight:bold">=</span> <span class="" style="color:rgb(221,17,68)">&quot;&lt;# Variant Secret #&gt;&quot;</span>

        <span class="" style="color:rgb(153,153,136);font-style:italic">// apply the token, to identify THIS device</span>
        <span class="" style="font-weight:bold">let</span> <span class="">currentDevice</span> <span class="" style="font-weight:bold">=</span> <span class="" style="color:rgb(153,153,153)">UIDevice</span><span class="">()</span>

        <span class="" style="color:rgb(153,153,136);font-style:italic">// --optional config--</span>
        <span class="" style="color:rgb(153,153,136);font-style:italic">// set some &#39;useful&#39; hardware information params</span>
        <span class="">clientInfo</span><span class="">.</span><span class="">operatingSystem</span> <span class="" style="font-weight:bold">=</span> <span class="">currentDevice</span><span class="">.</span><span class="">systemName</span>
        <span class="">clientInfo</span><span class="">.</span><span class="">osVersion</span> <span class="" style="font-weight:bold">=</span> <span class="">currentDevice</span><span class="">.</span><span class="">systemVersion</span>
        <span class="">clientInfo</span><span class="">.</span><span class="">deviceType</span> <span class="" style="font-weight:bold">=</span> <span class="">currentDevice</span><span class="">.</span><span class="">model</span>
        <span class="">},</span>

        <span class="">success</span><span class="">:</span> <span class="">{</span>
            <span class="">println</span><span class="">(</span><span class="" style="color:rgb(221,17,68)">&quot;UnifiedPush Server registration succeeded&quot;</span><span class="">)</span>
        <span class="">},</span>
        <span class="">failure</span><span class="">:</span> <span class="">{(</span><span class="">error</span><span class="">:</span> <span class="" style="color:rgb(153,153,153)">NSError</span><span class="" style="font-weight:bold">!</span><span class="">)</span> <span class="" style="font-weight:bold">in</span>
            <span class="">println</span><span class="">(</span><span class="" style="color:rgb(221,17,68)">&quot;failed to register, error: \(error.description)&quot;</span><span class="">)</span>
        <span class="">})</span>
<span class="">}</span>
</pre></div><h3 style="margin:1em 0px 15px;line-height:1.7;font-size:1.5em;padding:0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif"><a name="user-content-demos" class="" href="https://gist.github.com/matzew/a87119d5c480cb357b24#demos" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none;display:block;padding-right:6px;padding-left:30px"></a>Demos</h3>
<p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">To get easily started using the UnifiedPush Server we have a bunch of demos, supporting various client platforms:</p>
<ul class="" style="padding:0px 0px 0px 30px;margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px"><li>Android</li><li>Apache Cordova (with jQuery and Angular/Ionic)</li>
<li>iOS</li></ul><p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">The simple HelloWorld examples are located <a href="https://github.com/aerogear/aerogear-push-helloworld/releases/latest" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">here</a>. Some more advanced examples, including a Picketlink secured JAX-RS application, as well as a Fabric8 based Proxy, are available <a href="https://github.com/aerogear/aerogear-push-quickstarts/releases/latest" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">here</a>.</p>
<p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">For those of you who that are into Swift, there Swift branches for these demos as well:</p>
<ul class="" style="padding:0px 0px 0px 30px;margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px"><li><a href="https://github.com/aerogear/aerogear-push-helloworld/tree/swift/ios-swift" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">https://github.com/aerogear/aerogear-push-helloworld/tree/swift/ios-swift</a></li>
<li><a href="https://github.com/cvasilak/aerogear-push-quickstarts/tree/swift" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">https://github.com/cvasilak/aerogear-push-quickstarts/tree/swift</a></li></ul>
<h3 style="margin:1em 0px 15px;line-height:1.7;font-size:1.5em;padding:0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif"><a name="user-content-feedback" class="" href="https://gist.github.com/matzew/a87119d5c480cb357b24#feedback" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none;display:block;padding-right:6px;padding-left:30px"></a>Feedback</h3>
<p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">We hope you enjoy the bits and we do appreciate your feedback! Swing by on our <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" rel="noreferrer" style="color:rgb(65,131,196);text-decoration:none">mailing list</a>! We are looking forward to hear from you!</p>
<p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">NOTE: the Openshift online offering will be updated w/in the next day or two</p><p style="margin:15px 0px;color:rgb(51,51,51);font-family:Helvetica,arial,freesans,clean,sans-serif;font-size:15px;line-height:25.5px">
<br></p><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>