Introduction to the Nwave ecosystem

This document will familiarize you with our Infrastructure Management System (IMS), services which it provides and common operating procedures, it will walk you through our portal and show how it can help you to accomplish your tasks.

 

Contents Table

 

 

Entities

 

Device

Device refers to a sensor in your network.

Attributes:

  1. Device ID - a hexadecimal value which is a unique device identifier.

  2. Active - a boolean flag which shows you if a device is active or not;

    1. True: messages from a sensor are processed normally.

    2. False: messages from a sensor are not processed but stored in your log.

  3. Damaged - a sensor breakdown state:

    1. True: a sensor is damaged and not functioning properly. The occupancy status of these sensors is undefined in our occupancy APIs.

    2. False: a sensor is healthy.

Position

Position is a fixed physical location (spot) in your service area(s) to which a single device is bound. In other words it is essentially a digital twin of a parking space area.

Positions are static entities, binding points in the real world, once a position is registered, its attributes rarely change.

Attributes:

  1. Network ID - a unique identifier of a position in the network.

  2. Longitude - an east-west angular position on the earth’s surface.

  3. Latitude - a north-south angular position on the earth’s surface.

  4. Group Inner ID - a unique identifier of a position only within a group which it belongs to.

  5. Custom ID - a user-defined unique identifier of a position.

Group

Group is a set of positions used for structured data organisation and aggregation in the API calls. Typically it is a set of physically adjacent positions, e.g. row of spaces in parking lot.

Attributes:

  1. Group ID - a unique identifier for a group (integer).

  2. Group Name - a user-defined name for a group.

  3. Group Type - may be one of the following:

    1. Marked spaces - parking bays with individual boundary markings

    2. Unmarked parking bay - parking bays without individual space boundary markings;

    3. Standalone car counters - a single sensor car counter.

  4. Level - level object associated with a group.

*Please note that we recommend you giving meaningful names for your group in order to simplify your tracking and reporting (e.g. on-street and off-street).

 

Marked and Unmarked (Open) Parking Bay Illustration

(Approximate Sensor Placement)

Level

Level is an object that describes a horizontal plane on a map. It is useful for distinguishing different floors inside a multi-storey parking garage or underground parking structure.

Attributes:

  1. Level ID - a unique identifier for a level (integer).

  2. Name - a string describing a level e.g. ground floor, basement.

  3. Floor - numeric representation of a level. e.g. 0 for ground floor, -1 for basement.

Zone

Zone is a collection of device position groups used for another level of data aggregation.

Attributes:

  1. Zone ID - a unique identifier for a zone (integer).

  2. Zone Name - a user-defined name for a zone.

  3. Live Status - true/false value. Used to show you if a zone is active or not.

NB: All API routing is configured on a Zone level.

*Please note that we recommend you giving meaningful names to your zones in order to simplify your tracking and reporting.

Base Station

A base station is a piece of hardware that receives messages from your devices and forwards them to the cloud. Multiple base stations can be installed for redundancy in case one of them fails. Extra messages will be marked as duplicates on your dashboard.

Attributes:

  1. Base Station ID - a unique identifier for a base station (integer).

  2. Generation - a base station version.

  3. Frequency - a frequency at which a base station is receiving messages.

  4. Online Status - a connection status between a base station and the Internet. Becomes offline when a station does not ping for over than 20 minutes.

  5. Health Status - a connection status between a base station and related devices.

Project

A project is an aggregation of different entities which are parts of your network. Projects are used to isolate complete parts of your network from the rest.

For example:

A project called London may contain all zones and base stations that you have in that area.

Attributes:

  1. Project ID - a unique identifier of a project (integer).

  2. Project Name - a user defined project name.

Raw message

A message with an unprocessed payload.

Attributes:

  1. Payload - an unprocessed hexadecimal message representation.

  2. Receipt time - a time when a message was received by the cloud.

  3. Broker time - a time when a message was sent from a base station.

 

Integrations

Currently Nwave supports two ways of serving data to our clients - HTTP and Rabbit MQ.

HTTP

HTTP Template Suites

  • HTTP Template suites - is a collection of templates which are applied to messages before sending.

HTTP Templates

  • HTTP Template - is a processing rule that is applied to HTTP requests;

  • HTTP Templates can be configured for specific message types (e.g. Status Change, Heartbeat, Calibration);

  • HTTP Request Method, Headers, Url and Request Body may be configured in HTTP Templates.

HTTP Routes

  • HTTP Routes - looks like a message bridge between zones and HTTP Template Suites;

  • HTTP Routes may be deactivated to stop messages flow.

Rabbit MQ

Routes

  • Routes - looks like a bridge between zones and your Rabbit MQ endpoints;

  • Routes may be configured for specific message types (e.g. Status Change, Heartbeat, Calibration).

Endpoints

  • Rabbit MQ endpoints is a URL where your messages will be sent.

 

Services

RTA

RTA stands for Real Time Availability. It shows current devices occupancy status. RTA values may change very quickly as people are driving over/near devices without necessarily starting a parking session.

Session Logger

Session Logger tracks parking sessions for every device: start time, end time, unique session ID. It can restore parking session in case of a partial message loss. For open parking bays it filters out very short device occupancies (less than 60 seconds) and therefore these sessions will be registered with a delay compared to the RTA data.

Check-in

It provides two services:

  1. Spot Search - this service detects probability of sensor occupation by an app user.

  2. Check-in - this service assigns a parking session to the occupied state of a sensor.

 

Procedures

Firmware installation (Device Management App)

Device management app allows you to:

  1. Find nearby devices;

  2. Export devices list using box id;

  3. Install a device firmware;

  4. Run calibration;

  5. Run health checks.

Positioning (SPlace App)

Splace app is designed for sensors (devices) positioning on a map. It allows you to:

  1. Create groups;

  2. Create positions;

  3. Bind devices to positions and initiate sensors calibration;

  4. Align and move devices groups on a map.

Replacing (Replacing App)

This is an application designed to automate operations with sensors replacement.