Jätkäsaari Open Data Catalog
General
This document describes open data interfaces for Conveqs open data. Currently there are two ways for accessing the data: 1) connecting to the websocket interface for stream of messages, and 2) fetching the data via REST interface. Both interfaces provide similar json format (described below).
Accessing the data
REST interface
TO BE ADDED LATER
Websocket connections
Connecting to websocket server
In order to get the data stream via websocket, one has to connect to the server (jatkasaari.conveqs.fi
) with wss protocol. The streams for radar data are located at wss://jatkasaari.conveqs.fi/ws/radar/json
. In addition to URL one needs to set the query parameters to the URL, namely the [SUBJECT]
and [TOKEN]
.
A full websocket request will be like:
wss://jatkasaari.conveqs.fi/ws/radar/json/?subject=[SUBJECT]&token=[TOKEN]
The streamns currently available are: | Stream | Type | Description | Note |
---|---|---|---|---|
radar.[X].objects_geo.json |
json | Geodata | [X] defines the radar id |
Token is a public key, you can request from jatkasaari@conveqs.fi. An exampole code for connecting can be found in the following chapter
Sample code, Python
One can access the websocket stream for radar 1 with following code:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Sample client for testing the Conveqs radar data connection
This module demonstrates usage of Conveqs radar data stream by making a
connection to one radar and subscribing to geacoordinate data in json-format.
After subscriotion, the data are priunted to screen.
Example:
$ python client.py
"""
import websocket
# Callback functions
def on_message(ws, message):
print(message)
def on_error(ws, error):
print(error)
def on_close(ws):
print("### closed ###")
def on_open(ws):
print("### closed ###")
if __name__ == "__main__":
websocket.enableTrace(True)
url = "wss://jatkasaari.conveqs.fi/ws/radar/json"
subject = "radar.1.objects_geo.json"
token = "ADD YOUR TOKEN HERE"
wsc_url = "%s/?subject=%s&token=%s" % (url, subject, token)
ws = websocket.WebSocketApp(
wsc_url,
on_message=on_message,
on_error=on_error,
on_close=on_close)
ws.run_forever()
Note: in order to work, you will need a valid web-token. You can request one from jatkasaari@conveqs.fi
Data types
Radar Geocoordinate data (JSON)
General
This data includes location measurements from Smart Micro radars. The radar tracks moving objects appearing in it's beam covering up to eight lanes of traffic up to 150 meters from radar location, a typical set up can be seen in Figure 1. In addition to location, radar measures the speed and length of the object. Measurement is updated 10 times per second, and each object is tracked by assigning a uniquer id numbber for it.
In addition to location and speed vectors, accuracy information, vehicle type and lane id are provided with the data. Detailed description of the data fields are given in following chapter.
Data fields
Each message contains header fields describing the message and a list of detections and a list of objects followed by the radar
Key | Type | Unit | Description |
---|---|---|---|
source | string | - | Data source identifier |
status | string | - | Sender status message |
tstamp | int | Unix time | |
nobjects | int | count | Number of objects in message |
After the header there is a list of detections containing following fields:
Key | Type | Unit | Description |
---|---|---|---|
lat | float | Degrees | Latitude gegrees |
lon | float | Degrees | Longitude degrees |
v_n | float | m/s | Speed towards north |
v_e | float | m/s | Speed towards west[?] |
len | float | meters | Length of the object |
id | int | - | Internal id-number cycles from 0 to 254 |
lane | int | lane id | Lane id number |
class | int | object type | Object type determined by the radar *) |
cyc_ago | int | - | Number of cycles since last detection |
quality | float | percentage | Detection quality determined by the radar |
Sample data
{
"source": "radar.1.objects_geo.json",
"status": "OK",
"tstamp": 1601279853465,
"nobjects": 1,
"objects_geo": [
{
"lat": 60.16093739873581,
"lon": 24.92177615985368,
"v_n": -1.05,
"v_e": -0.25,
"len": 1.0,
"id": 137,
"lane": 0,
"class": 1,
"cyc_ago": 3,
"quality": 58.82
}
]
}
JSON Schema
The schema fo this data type can be found here
Vehicle Trip data (JSON)
TO BE ADDED LATER
LOS data
TO BE ADDED LATER
More information
For more information, please contact jatkasaari@conveqs.fi