Wednesday, February 19, 2014

Lightstreamer 6.0 Preview Release Available

We are very pleased to announce the early public availability of the next release of Lightstreamer Colosseo: version 6.0.

Lightstreamer now includes support for Mobile Push Notifications (MPN). Clients have new APIs to activate special subscriptions whose updates are delivered through push notifications. New MPN subscriptions are persistent, compatible with existing data adapters, and require only one call to be activated. Now, just one line of code separates your app from full push notification support!

This preview release includes MPN support for iOS and OS X SDKs, based on Apple Push Notification service (APNs). Support for more platforms will be rolled out progressively.

Version 6.0 provides also a new Monitoring Dashboard with a full JMX Tree, better control on remote adapter initialization and logging, new clearSnapshot API on the adapter SDK, as well as improved performance, scalability, and security.

Support for Mobile Push Notifications

*UPDATE* With the final release of Lightstreamer 6.0, the Mobile Push Notification API has changed slightly. Please check out the new tutorial.

MPN subscriptions are special subscriptions handled by an internal subsystem (codenamed MPN Module) of the Lightstreamer's kernel, which delivers updates through a push notifications service, such as Apple's APNs, Google GCM, etc. From a data adapter's point of view, they appear as any common subscription. The MPN Module takes care of listening for their updates even when the original session has been closed, and then formatting and delivering push notifications to the end user.

MPN subscriptions are persistent: they can be activated on a session and deactivated on another, and as such they require a database. The MPN Module provides a configurable database interface through Hibernate, and can be connected to any production-ready relational SQL database, such as OracleMySQL, and others.

Push notifications originated by an MPN subscription may be automatically formatted with the content of the update. Moreover, a special trigger expression may be assigned to an MPN subscription so that its push notifications are sent only at the verification of a specific condition. All these features make the MPN support of Lightstreamer 6.0 something you really want to check out to take your app to the next level.

New iOS and OS X SDKs

New versions of iOS and OS X SDKs are tagged 1.3 and 1.1 respectively. They introduce new MPN APIs, as well as numerous fixes and improvements.

Activating an MPN subscription is not different than a normal subscription: you need an LSTableInfo with specifications for the table to be subscribed, and an additional LSMPNInfo with the specifications on how to push its updates, i.e.:

  LSExtendedTableInfo *tableInfo= 
    [LSExtendedTableInfo extendedTableInfoWithItems:[NSArray arrayWithObject:@"item1"]
      fields:[NSArray arrayWithObject:@"last_price", @"stock_name", nil]

  LSMPNInfo *mpnInfo= 
    [LSMPNInfo mpnInfoWithSound:@"Default"
      format:@"Stock ${stock_name} is now ${last_price}"];

Once your specifications are ready, activating the MPN subscription is a matter of one line:

  LSMPNKey *mpnKey= [_client activateMPNForTable:tableInfo withInfo:mpnInfo];

Other APIs added for MPN support include: MPN subscription deactivation and status inquiry, device token registration and app's icon badge reset (yes, the app's icon badge can be handled automatically). To fully show the capabilities of the new APIs, the iOS sample demo app has been drastically improved and now includes a detail view with a real-time chart, and of course MPN support. Here is a screenshot from the iPad version:

Note the switch button that enables notifications on price change, as well as the red lines on the chart corresponding to price thresholds. Price thresholds make use of the above mentioned triggers.

New Monitoring Dashboard

The old Monitor Console has been superseded by the Monitoring Dashboard, which now includes counters for MPN activity. Moreover, a second tab opens the new JMX Tree, where you can take full control of the Lightstreamer Server instance without switching to separate clients:

Read through the detailed changelog to learn about all the changes to Lightstreamer Server and to the Client and Adapter APIs.

How to check out Lightstreamer 6.0 alpha

You can find Lightstreamer 6.0 alpha on the download page. After downloading, go through the GETTING_STARTED.TXT instructions to set up the server.

Please send your feedback on Lightstreamer 6.0 alpha to, to help us speed up the testing phase. That's very precious to us!

Further features will be added to Lightstreamer 6.0 in the next few months. Keep an eye on the Download page for updates, or follow @Lightstreamer on Twitter.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.