- Based on the customer’s proprietary Wi-Fi network
- Providing licensed media content, including live TV
- Serving as an ad-publishing platform for advertisers
- An integrated, multifunctional entertainment application for those traveling on medium-haul
- Available to users before, during and after the ﬂight both on mobile and on the web
Technologies Used: Node.js, MOI Pro, MongoDB, Microsoft Azure, React, Nimble Streamer, React Native, Avconv
A German fast-growing company turned to HQSoftware to help them bring their innovative, patent-supported idea first to an MVP and then up to a finished marketable product. The goal was to create a system that would allow those traveling on medium-haul flights to enjoy live TV programs, video on demand (VOD), hotel booking, car reservations, weather forecasts and many more – on board a plane, at the airport and in the city.
The key challenges were to:
- ensure smooth integration with multiple third-party services, such as hotel and car booking, live TV streaming, DRM, ad exchanges and more
- enable secure streaming of licensed media content
- make the application accessible within the customer’s proprietary Wi-Fi spots, developed by HQSoftware’s hardware producing partner, both on and off a plane
- incorporate personalized display ads as part of the customer’s revenue generation strategy
The solution enables the BYOD approach, where users can connect to the customer’s Wi-Fi spots located on board, at the airport and in the place of destination with their own devices running either on iOS or Android. The range of app’s features depends on whether the user is only getting ready for a flight (that is, in the city or at the airport), already boarded or has arrived at the destination. This accommodates the customer’s strategy to provide a tailored pre-flight, on-flight and post-flight experience with a choice of relevant content and features.
HQSoftware’s team paid a special attention to enabling correct data exchange and processing within distributed networks so that content would reach users’ devices always intact.
Once accessed on board, the app opens a rich library of media content allowing users to watch live TV and on-demand video. With TV content, this is where the customer’s patented technology comes into play: taking into account that onboard traffic is extremely expensive, there is a possibility to upload licensed TV content to the server upfront – before the plane takes off – and then show it at a programmed time and not earlier. Each piece of licensed content is showed in an in-built, DRM-enabled media player. More functions available on board include the options to call for a flight attendant, shop duty-free products and check the flight location at the moment.
Pre-flight and post-flight
Tailored for those users who are at the airport or in the place of their destination, the app provides extensive capabilities for booking accommodation, renting a car or looking up weather forecasts and news.
The project team has been integrating the customer’s own advertising server with the app to show personalized display ads from selected advertisers. For the latter, this includes rich geographic and demographic targeting options and in-depth statistical reporting.
How It Works
Live TV streaming
The MOI Pro IPTV streamer receives a satellite signal – that is, video content in MPEG2 – and translates it into TCP/IP for further transmission over the Wi-Fi network. To allow this content on mobile devices, avconv transcodes the signal, converting its format from MPEG2 to H.264 as well as the container format – from Matroska to HLS. The video signal is then streamed to mobile devices by Nimble Streamer.
To enable viewing a list of programs scheduled for the next few hours up, the system uses EPG programming and scheduling information delivered along with the satellite signal. Coming in the MPEG2 format, this data is transcoded by avconv and stored in the MongoDB, which hosts the entire business logic. The mobile app invokes this data through the API when a user wants to view a channel’s program.
Recorded TV content delivery
Apart from streaming live TV content, the system is able to record it for further streaming on demand. When recording live streams, EPG data is used by the TV streamer to automatically split the content into separate items – for example, a news bulletin, a talk show and so on. This content is then moved to the recorded content storage and delivered to mobile devices by Nimble streaming upon a request.
A .NET ad server and an Azure ad asset storage were deployed to allow advertisers to reach targeted travelers with relevant content based on data from user profiles. This way, advertisers can access a dedicated interface for managing their ad campaigns.
Hotel booking, car rental and other integrated services
The project team developed a server that would aggregate offerings from third-party service providers such as Booking.com, Airbnb, Hertz and more, thus increasing user engagement and allowing the customer to maximize revenue opportunities.
Backend and Frontend
To make sure that this compound integration results in a flawless user experience, HQSoftware implemented:
- a powerful Node.js backend to handle the complex system logic
- a cross-platform, React Native mobile app containing the entire functionality
- a web interface written in ReactJS and offering a quick access to the key features with no need to install the app on a user’s device
As the product is being constantly shaped by the customer’s insights, the team adopted the Agile methodology to quickly incorporate new requirements. The bi-weekly pace of deliverables allows the customer to stay in control of how their unique vision feeds into the product.
Over the 8+ month project, HQSoftware’s team became the company’s trusted partner. At the moment, the solution is going through the testing stage and is about to be rolled out to the market.
Kick Off With Your Project Today
Let’s talk about your business needs and figure out the best solution. Just fill in this form and get a free individual proposal from your personal manager.