Friday, February 27, 2015

Meet our Customers: OOCL

A short interview with Ronald Chan, responsible for enterprise framework design and maintenance at OOCL, a world leader in logistics and transportation. OOCL opted for Lightstreamer to deliver important business information and tasks to the organization.

Let’s talk about your organization. What is your core business?

"Hong Kong-based OOCL is an International Container Transport and Logistics service provider. OOCL provides transportation services to companies throughout Asia, Europe, North America, the Mediterranean, the Indian sub-continent, the Middle East, and Australia/New Zealand."

 Could you let us know any further information?
"OOCL is a wholly-owned subsidiary of Orient Overseas (International) Limited (OOIL), publicly listed on the Hong Kong Stock Exchange. The company has more than 280 offices in 55 countries around the world, providing 78 services covering international trading markets with a fleet of more than 270 ships, including Grand Alliance member line vessels, feeder and OOCL-owned and operated vessels. In 2014 the company has recorded an impressive 5,585,516 TEUs lifted, and almost 6 billion USD in revenues (source). As a leader in its industry, the number of awards and accoladed won by OOCL so far is huge."

Thursday, February 26, 2015

Introduction to Mobile Push Notifications with Lightstreamer 6.0

With the release of version 6.0 final, mobile push notifications (MPN for short) are now an integral part of Lightstreamer. Since our original post about 6.0 alpha, the MPN APIs have been streamlined, enhanced and extended to Android. With this blog post we take a second look at these new functionality, with code samples for both iOS/OS X and Android.

How MPNs Are Handled in Lightstreamer 6.0

Mobile push notifications are simply real-time push notifications diverted to a different channel. For this reason, they share many properties with their real-time counterpart:
  • they are initiated on the client with a subscription and terminated with an unsubscription;
  • each notification is originated by a data adapter real-time update.

This means that any subscription to any existing data adapter may be used for MPNs, with only a few restrictions:
  • COMMAND and RAW modes may not be used;
  • the unfiltered mode is not supported;
  • the selector is not supported.

Wednesday, February 18, 2015

New NSError Pattern Support in iOS and OS X Clients

Remember our blog post about developing iOS apps with Swift and Lightstreamer? It was 7 months ago, Swift had been introduced by Apple only a few weeks before, and object-oriented programming fans (like me) were wondering why there was no support for structured exception handling.

Our iOS and OS X client libraries used to rely on exceptions. Both to maintain an interface reasonably similar to other client libraries (Java/Android, mainly), and to use a well-established pattern for error handling.

Now, seven months have passed and there are still no traces of exception handling in Swift. Not even in the just-announced version 1.2 of the language. So, with version 1.4 of the iOS client library, and version 1.2 of the OS X, we have introduced an alternative signature for exception-throwing methods that supports the common NSError pattern of Cocoa and Cocoa Touch. To the benefit of developers using Swift and of all the developers out there that simply don't like exceptions (and there are many).

Tuesday, February 17, 2015

Writing Remote PHP Adapters for Lightstreamer

As most (if not all) of you know, PHP is a widely adopted server-side scripting language, mainly focused on web development through the availability of web server native's module.

However, PHP could also be used for command-line scripting through the PHP Commnad Line Interface. This way you can leverage its power and simplicity to create general-purpose applications running in a shell.

In this post we will use such feature to illustrate the development of custom Remote Adapter Sets for Lightstreamer, written in PHP.

Wednesday, January 28, 2015

A Simple Ember.js Demo for Lightstreamer

In this post we are going to make a simple exercise to show how quickly you can integrate Lightstreamer with Ember.js, a popular JavaScript MVC framework aimed at making easier the development of so-called Single Page Applications.

Wednesday, January 21, 2015

Lightstreamer 6.0 Is Out!

We are extremely excited to announce that Lightstreamer 6.0 is now publicly available.

Many new features and improvements have been included in this release.

Here is a very quick summary of what's new.

Wednesday, January 14, 2015

A Python Client Example for Lightstreamer

Recently, some folks asked on our forum for some advice on how to properly create a Lightstreamer client based on the Python language.

An official release of a Lightstreamer Python client is not available yet, so it seems a good moment to show an example of a simple client application written in this wonderful language.

The proposed script provides a very simple version of the well known Stock-List demo. In this new adaption, soon after submitting a single subscription to a set of items with related fields, the real-time data coming from the server are displayed on the console until the user hits the CR key.

Tuesday, December 23, 2014

Lightstreamer 6 Is Coming...

We over here at Lightstreamer would like to extend our warmest wishes to all our clients, partners, supporters, and friends for an amazing holiday season and a prosperous new year.

2015 will begin with big news from our team. Lightstreamer 6 will be released in the course of January, with tons of new features and improvements. Stay tuned!

The Lightstreamer Team

Thursday, October 30, 2014

Authentication & Authorization With Lightstreamer

This short article will guide you through authentication and authorization in Lightstreamer and will introduce a live example with full source code.


Most, if not all, Lightstreamer applications will, at some point, require some sort of authentication mechanism to validate their users. Moreover, there usually is an authentication mechanism already in place when Lightstreamer is introduced in the system.

So, let's see how to introduce Lightstreamer in an environment where Authentication is already handled by a Web/Application server.

Thursday, October 16, 2014

Protecting Lightstreamer Against POODLE (SSLv3)

Google's researchers recently discovered a new vulnerability affecting the SSL protocol. POODLE, which stands for Padding Oracle On Downgraded Legacy Encryption, allows an attacker (a man-in-the-middle) to decrypt ciphertext using a padding oracle side-channel attack. Full details are available in this Google paper.

POODLE affects older standards of encryption, specifically Secure Socket Layer (SSL) version 3.0. It does not affect Transport Layer Security (TLS), the newer encryption mechanism.

Lightstreamer relies on the underlying Java Virtual Machine (JVM) for the implementation of the SSL and TLS encryption and cipher suites. While waiting for the availability of a JVM upgrades that avoids SSL 3.0 by default, we recommend configuring Lightstreamer Server to prevent the use of SSL 3.0 for all HTTPS and WSS connections.

Thursday, September 25, 2014

Meet our Customers: Finanex

A short interview with Dejan Milosevic, CTO at Finanex.

Let’s talk about your organization. What is your core business?

"Finanex is a financial services company that allows individual investors to trade on an equal basis, without facing dealers as counterparts through its TargetTrade platform, which will be launched soon".

 Could you let us know any further information?

"The company intends to license its TargetTrade trading platform to white labels".

Tuesday, July 22, 2014

Lightstreamer 5.1.2 Released

A maintenance release of Lightstreamer is now publicly available for download. It contains several fixes and improvements.

For paid editions, no license updates are necessary to upgrade, provided that a license for server 5.1 and JS client 6.1 is already in use and the maintenance contract is active.

Please contact if you have any questions.

Below is a list of the changed components.

Friday, July 18, 2014

Developing Swift Apps on iOS with Lightstreamer

Unless you have been living under a rock in the last month or so, you should know Apple introduced a new programming language during WWDC 2014. Like a typical Steve Jobs' "One more thing" move, Craig Federighi introduced Swift at the very end of the keynote. The intention of the new language is to leave behind some of the C legacy that burdens Objective-C.

So far, Swift has been welcomed by developers and has generated a lot of articles in popular platforms like Stack Overflow. The aim of this article is to contribute to the growing popularity of the language with some sample code to connect, subscribe and send messages to Lightstreamer. 

The code presented here has been written and tested with Xcode 6.0 beta3 and the Lightstreamer iOS client 1.3 (due to be released shortly), but it is compatible with client version 1.2.x (released with Server 5.x).

If you prefer a complete example, in place of a step by step tutorial, take a look at the iOS Swift Chat demo. More informations at the end of the article.

Thursday, July 17, 2014

Exploiting Static Exception Checking in Asynchronous Java Code

Hierarchical exception handling and static exception checking are among the most significant features offered by the Java language; however, their support is limited to procedural code and can only be exploited in hierarchies of function calls. So, there is nothing similar to assist us when it comes to event-driven programming or asynchronous programming, where the work is scattered among many functions that are independent from one another. This is particularly frustrating in some architectures, where the logical design is strictly hierarchical and the control flow is actually sequential, but asynchronous API calls are involved.
The present article deals with the latter case; we show how, by writing code that follows a specific pattern and leans on a suitable support library, the benefits of hierarchical exception handling and static exception checking can be achieved. This technique was applied in some parts of Lightstreamer Server with proficiency.

Monday, July 14, 2014

Meet our Customers:

We talked with Fabrizio Capobianco, Founder and CEO of, the company behind an innovative Lightstreamer-powered second screen application. apps allow people to talk with friends while watching sports events like FIFA World Cup on TV. We recently discussed about TOK apps here, and showed how they work here.

Fabrizio is a true industry veteran and serial entrepreneur. As an advisory board member at M31 USA and Mind the Bridge Foundation, he is helping Italian tech startups to succeed in Silicon Valley. In 1995 he launched and lead to success Internet Graffiti, the first Italian Web Company, developing many Internet projects and web sites as CTO. Besides, Fabrizio is in charge as President and Chairman of Funambol, which he founded in 2003 and guided to be one of the leading personal cloud companies in the world. He cooperated with Wireless magazine in writing the "Wireless Valley" column, among many other things.

Thursday, June 26, 2014

Enjoying FIFA World Cup with Simple, yet Powerful Technologies

As expected, this edition of the FIFA World Cup hasn't spared emotions for soccer fans so far. We watched epic challenges. We have been surprised by some excellent defeats (Spain, England, Italy and more). We discovered Suarez appetite for glory and Van Persie's abilities for a new career in olympic diving.
But the real big thing of this edition is how technologies are helping making the World Cup even more fair, competitive and enjoyable.

The Goal-Line technology has been deployed and is giving a valuable contribution determining when the ball has completely crossed the goal line with the assistance of electronic devices and at the same time assisting the referee in awarding a goal or not.  Clubs and national teams are already using Big Data and tracking technologies that can measure the tendencies of players in very specific situations, helping coaches taking better decisions on team strategy and players' positions.

Thursday, June 12, 2014

Follow Your Favourite #WorldCup2014 Team With Lightstreamer-Powered Apps

The waiting is over! Starting from today, 24 national teams will try to enter the soccer olympus conquering the World Cup 2014 in Brazil. Ready to grab a fresh beer or soda and enjoy the matches in the living room with your friends? Now you can support your team even if your friends are away, or simply follow the real-time data and statistics feed of the matches on your iOS/Android mobile phone if you can't see the match from the couch at home., an innovative second screen technologies company, just launched a set of innovative Lightstreamer-powered mobile and tablet apps that allows to talk - not write - with up to 4 friends, while watching your national team during the World Cup games.

Tuesday, June 3, 2014

Meet our Partners: Blue Turtle

A short interview with Tommy Erlank, General Manager (Enterprise Application Management) at Blue
Turtle, a South African IT and advisory consulting company which provides solutions for optimising, enhancing and leveraging existing IT investment.

Let’s talk about your organization. What is your core business?

"Established in 2003, Blue Turtle Technologies is a South African company which provides solutions for optimising, enhancing and leveraging existing IT investment, and supporting the cost effective delivery of new technology initiatives. We deliver solutions for the effective management of IT infrastructures employing innovative software products, backed by ‘best-practice’ implementation services".

 Could you let us know any further information?
"Blue Turtle currently serves more than 500 customers with software products and services throughout Southern Africa".

Monday, March 10, 2014

Updates to Lightstreamer JavaScript, iOS, and OS X Client Libs

A new release of the stable version of Lightstreamer is now available, containing updates to:
  • JavaScript client library
  • iOS client library
  • OS X client library

Thursday, February 20, 2014

How NASA Is Using Lightstreamer

Collaboration between Lightstreamer and NASA dates back to 2010. NASA chose Lightstreamer as the push streaming engine for delivering real-time telemetry data from the International Space Station to web and mobile applications.

Several resources, including articles and public apps, have been made available across the years on the ISS Live project. I would like to collect and resume some of those resources here, to keep a clear snapshot of how Lightstreamer is being used by NASA. (Obviously, only public information will be reported and nothing else will be disclosed).