Energy Reporting App

Energy Reporting App

Customer

Our Customer is an international company that provides professional energy, waste and environment management solutions for sustainable society, including various complex environmental reporting tools and sophisticated systems for measuring and collecting monitoring data.

Challenge

Company provides several sustainable solutions for environment management and requires modern mobile tool to enable an efficient energy consumption reporting. Application is targeted for energy companies, following the goal of CO2 emissions reduction, saving on energy consumption and costs.

Main requirements for electricity reporting application were:

  • Universal application (Android, iOS and Web platforms)
  • Code reuse for all supported platforms, cross-platform tools needed
  • Interaction with existing customer’s API
  • QR-code scanning and Push Notification features for iOS and Android
  • REST client written on AngularJS
  • Dashboard to check consumption levels by period of time and by certain building
  • Embedded map to check energy meters by location.

Solution

We made a review of available cross-platform tools at the pre-development phase. PhoneGap and ngCordova created by Ionic Framework maintainers were finally chosen due to relative simplicity and wide community support. ngCordova is a set of essential cross-platform plugins which allows to integrate specific features such as QR-code scanning and Push Notifications with a few lines of code on AngularJS. Backend API had been provided and the development began.

Web application is written on AngularJS and wrapped using PhoneGap in order to support platform-specific plugins. AngularJS allowed us to build an efficient easy-to-use UI without a big effort. The most important feature of the application is energy consumption reporting. Energy meter ID can be entered manually or using QR-code to save time. This option is implemented using BarcodeScanner plugin from ngCordova. We had developed an architecture with an ability to browse consumption levels in the past and compare consumption by building using Dashboard and multiple report templates. Another important requirement from the Customer was to create a map of energy meters. This is achieved using Google Map component showing markers to provide quick overview.

The backend integration was done completely using AngularJS as a REST client. We had developed an application being multi branded in mind. It means that Customer can supply the product to several partners worldwide and provide customized styling and branding options for their business needs. Backend endpoints can be easily modified in settings section if changes are required. Mobile applications are enabled to save energy meter readings in offline mode, which is an extra key feature, which enables to continue reporting in the areas with low network penetration, such as basements and ground floors, where meters are usually installed in the building. 

Results / Benefits

The Customer got a modern application to manage and control energy consumption levels, supporting several ways to represent information, being simple, but at the same time powerful tool for reporting and analyzing readings.

Using cross-platform approach Customer received applications for each platform — Android, iOS and Web. Mobile applications were developed to support platform-specific features such as QR-code scanning and Push Notifications providing up-to-date information from the server.

Technologies

Electronic Guide App
Vocational Education App