How to show the travel times forecast at +30 minutes
The use case reflects the common need of a system integrator that must show of forecast results at +30 minutes on the GUI the layer.
GET
https://api.dev.myptv.com/mlf/v1/forecast/realtime
The result is an object description serialized with the protobuf format (for more details, see here).
When you get a protobuf object, you must decode it to obtain the object description.
Here is an example of a de-serialized object:
{
"streetForecast": [
{
"street": 0,
"fromnode": 0,
"openLRcode": "CwjonR3U/yKDbaDPAMYiM+k=",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 37.5,
"flow": 50,
"timezone": "UTC"
}
]
}
{
"street": 1,
"fromnode": 1,
"openLRcode": "Cwjonr1U/yKDbA3pAMYiM+k+",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 42.3,
"flow": 40,
"timezone": "UTC"
}
]
}
{
"street": 2,
"fromnode": 2,
"openLRcode": "Czjonr1U/yKDBA3pAMYi3+k=",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 21.5,
"flow": 50,
"timezone": "UTC"
}
]
}
{
"street": 3,
"fromnode": 3,
"openLRcode": "CzjOnr1U/yKDBa3pAmYi3+k1",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 56.7,
"flow": 40,
"timezone": "UTC"
}
]
}
]
}
In a de-serialized object, you can distinguish four streets identified by:
- street: N
- fromnode: N
- openLRcode: string
...with N=0,1,2,3
For every street, there is a specific set of parameters characterizing the forecast:
- start: the start time of the forecast period
- end: the end time of the forecast period
- flow_vaild: for future use
- speed_valid: currently always true
- speed: the value of the forecast speed
- flow: for future use
- timezone: the timezone associated with the API user
How to show the travel times forecast at +30 minutes
The use case reflects the common need of a system integrator that must show on the GUI the layer of forecast results at +30 minutes.
GET
https://api.dev.myptv.com/mlf/v1/forecast/realtime
The result is an object description serialized with the protobuf format (for more details, see here).
When you get a protobuf object, you must decode it to obtain the object description.
Here is an example of a de-serialized object:
{
"streetForecast": [
{
"street": 0,
"fromnode": 0,
"openLRcode": "CwjonR3U/yKDbaDPAMYiM+k=",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 37.5,
"flow": 50,
"timezone": "UTC"
}
]
}
{
"street": 1,
"fromnode": 1,
"openLRcode": "Cwjonr1U/yKDbA3pAMYiM+k+",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 42.3,
"flow": 40,
"timezone": "UTC"
}
]
}
{
"street": 2,
"fromnode": 2,
"openLRcode": "Czjonr1U/yKDBA3pAMYi3+k=",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 21.5,
"flow": 50,
"timezone": "UTC"
}
]
}
{
"street": 3,
"fromnode": 3,
"openLRcode": "CzjOnr1U/yKDBa3pAmYi3+k1",
"forecast": [
{
"start": "2023-12-21T16:08:44.554Z",
"end": "2023-12-21T16:38:44.554Z",
"flow_valid": true,
"speed_valid": true,
"speed": 56.7,
"flow": 40,
"timezone": "UTC"
}
]
}
]
}
In a de-serialized object, you can distinguish four streets identified by:
- street: N
- fromnode: N
- openLRcode: string
...with N=0,1,2,3
For every street, there is a specific set of parameters characterizing the forecast:
- start: the start time of the forecast period
- end: the end time of the forecast period
- flow_vaild: for a future use
- speed_valid: currently always true
- speed: the value of forecast speed
- flow: for future use
- timezone: the timezone associated with the API user