Open rcavaliere opened 4 months ago
@rcavaliere I've been working on the traveltimes, and I have a version online that should work, but I'm seeing inconsistencies in the data sent by the provider and it's unable to map the data:
The data collector maps the value of fields lds and pesanti_lds to a description and value, defined in this CSV here: https://github.com/noi-techpark/bdp-commons/blob/main/data-collectors/traveltimes-a22/src/main/resources/it/bz/noi/a22/traveltimes/a22traveltimesdatatypes.properties
Now I'm getting errors, because the value being sent by the API is "F", which has no mapping in our CSV.
In the spec document it lists "F" as "code a tratti " / 3
, which in the CSV is currently mapped to "C"
Could you provide me with the full up to date mapping?
@clezag the new mapping is the one you see in the updated spec document (v12). So please change all the old mappings accordingly.
@rcavaliere The spec doesn't say anything about the numerical value associated to the mappings. The mapping will change from this
a22traveltimes.datatype.lds_leggeri.mapping.A.desc=traffico scorrevole
a22traveltimes.datatype.lds_leggeri.mapping.A.val=1
a22traveltimes.datatype.lds_leggeri.mapping.B.desc=rallentamenti
a22traveltimes.datatype.lds_leggeri.mapping.B.val=2
a22traveltimes.datatype.lds_leggeri.mapping.C.desc=code a tratti
a22traveltimes.datatype.lds_leggeri.mapping.C.val=3
a22traveltimes.datatype.lds_leggeri.mapping.D.desc=code
a22traveltimes.datatype.lds_leggeri.mapping.D.val=4
a22traveltimes.datatype.lds_leggeri.mapping.E.desc=traffico scorrevole
a22traveltimes.datatype.lds_leggeri.mapping.E.val=5
a22traveltimes.datatype.lds_leggeri.mapping.Z.desc=non definito
a22traveltimes.datatype.lds_leggeri.mapping.Z.val=99
to this:
a22traveltimes.datatype.lds_leggeri.mapping.A.desc=traffico scorrevole
a22traveltimes.datatype.lds_leggeri.mapping.A.val=1
a22traveltimes.datatype.lds_leggeri.mapping.B.desc=traffico scorrevole
a22traveltimes.datatype.lds_leggeri.mapping.B.val=2
a22traveltimes.datatype.lds_leggeri.mapping.C.desc=rallentamenti
a22traveltimes.datatype.lds_leggeri.mapping.C.val=3
a22traveltimes.datatype.lds_leggeri.mapping.D.desc=rallentamenti
a22traveltimes.datatype.lds_leggeri.mapping.D.val=4
a22traveltimes.datatype.lds_leggeri.mapping.E.desc=traffico rallentato con code
a22traveltimes.datatype.lds_leggeri.mapping.E.val=5
a22traveltimes.datatype.lds_leggeri.mapping.F.desc=code a tratti
a22traveltimes.datatype.lds_leggeri.mapping.F.val=6
a22traveltimes.datatype.lds_leggeri.mapping.Z.desc=traffico critico
a22traveltimes.datatype.lds_leggeri.mapping.Z.val=99
As it is set up currently, the old data will remain with the old data types, and new ones are created both for light and heavy vehicles. In the initial issue description you asked for the data types to be "renamed", but the old data should remain as it is (datatype without prefix/suffix), right?
@rcavaliere Regarding the single vehicle traffic connector, I'm not getting the new fields in the API call yet. Is there a testing instance or something?
I've implemented the changes and put them up in testing, as soon as the API has the new fields, we should see them in testing DB, then we can go into production
@rcavaliere The spec doesn't say anything about the numerical value associated to the mappings. The mapping will change from this
a22traveltimes.datatype.lds_leggeri.mapping.A.desc=traffico scorrevole a22traveltimes.datatype.lds_leggeri.mapping.A.val=1 a22traveltimes.datatype.lds_leggeri.mapping.B.desc=rallentamenti a22traveltimes.datatype.lds_leggeri.mapping.B.val=2 a22traveltimes.datatype.lds_leggeri.mapping.C.desc=code a tratti a22traveltimes.datatype.lds_leggeri.mapping.C.val=3 a22traveltimes.datatype.lds_leggeri.mapping.D.desc=code a22traveltimes.datatype.lds_leggeri.mapping.D.val=4 a22traveltimes.datatype.lds_leggeri.mapping.E.desc=traffico scorrevole a22traveltimes.datatype.lds_leggeri.mapping.E.val=5 a22traveltimes.datatype.lds_leggeri.mapping.Z.desc=non definito a22traveltimes.datatype.lds_leggeri.mapping.Z.val=99
to this:
a22traveltimes.datatype.lds_leggeri.mapping.A.desc=traffico scorrevole a22traveltimes.datatype.lds_leggeri.mapping.A.val=1 a22traveltimes.datatype.lds_leggeri.mapping.B.desc=traffico scorrevole a22traveltimes.datatype.lds_leggeri.mapping.B.val=2 a22traveltimes.datatype.lds_leggeri.mapping.C.desc=rallentamenti a22traveltimes.datatype.lds_leggeri.mapping.C.val=3 a22traveltimes.datatype.lds_leggeri.mapping.D.desc=rallentamenti a22traveltimes.datatype.lds_leggeri.mapping.D.val=4 a22traveltimes.datatype.lds_leggeri.mapping.E.desc=traffico rallentato con code a22traveltimes.datatype.lds_leggeri.mapping.E.val=5 a22traveltimes.datatype.lds_leggeri.mapping.F.desc=code a tratti a22traveltimes.datatype.lds_leggeri.mapping.F.val=6 a22traveltimes.datatype.lds_leggeri.mapping.Z.desc=traffico critico a22traveltimes.datatype.lds_leggeri.mapping.Z.val=99
As it is set up currently, the old data will remain with the old data types, and new ones are created both for light and heavy vehicles. In the initial issue description you asked for the data types to be "renamed", but the old data should remain as it is (datatype without prefix/suffix), right?
ok, if the mapping changed also for light vehicles then I agree with you to also foresee new types also for light vehicles as well. So let's create new types such as leggeri_tempo, leggeri_velocita and leggeri_lds, the old data types will be not updated any more and just refer to old data. You can start refer historical measurements to these new data types since 10.07.2024, which is the date in which the Data Provider changed the API.
@rcavaliere Regarding the single vehicle traffic connector, I'm not getting the new fields in the API call yet. Is there a testing instance or something?
I've implemented the changes and put them up in testing, as soon as the API has the new fields, we should see them in testing DB, then we can go into production
Sure? This data should be available. Pay attention that not all traffic sensors have this, just traffic stations that are cameras. Can you put here an example of request / response?
@rcavaliere I've tried about 15 stations (also the ones called TVCC), even the one they have in the example call in the spec document, and the fields are always missing. If you know a specific station that should have them, please let me know and I can test that
{
"descr": "TVCC TRAFFICO KM 000.120 SUD",
"id": 6023
}
{
"descr": "TVCC TRAFFICO KM 000.120 NORD",
"id": 6024
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 0,2 - BRENNERO GALLERIA",
"id": 678
}
{
"descr": "KM 000+200 - BRENNERO GALLERIA",
"id": 6119
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 012,200 RADAR",
"id": 5414
}
{
"descr": "TVCC TRAFFICO KM 012.220 SUD",
"id": 6025
}
{
"descr": "TVCC TRAFFICO KM 012.220 NORD",
"id": 6026
}
{
"descr": "KM 012+200 RADAR",
"id": 6149
}
{
"descr": "KM 019+000 RADAR",
"id": 6150
}
{
"descr": "TVCC TRAFFICO KM 019.000 NORD",
"id": 6028
}
{
"descr": "TVCC TRAFFICO KM 019.000 SUD",
"id": 6027
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 019,000 RADAR",
"id": 5415
}
{
"descr": "TVCC TRAFFICO KM 033.585 SUD",
"id": 6029
}
{
"descr": "TVCC TRAFFICO KM 033.585 NORD",
"id": 6030
}
{
"descr": "KM 036+700 - FORTEZZA GALLERIA",
"id": 6120
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 36,7 - FORTEZZA GALLERIA",
"id": 677
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 47,7 - BRESSANONE ZONA IND.",
"id": 666
}
{
"descr": "KM 047+700 - BRESSANONE ZONA IND.",
"id": 6121
}
{
"descr": "TVCC TRAFFICO KM 056.050 SUD",
"id": 6031
}
{
"descr": "TVCC TRAFFICO KM 056.050 NORD",
"id": 6032
}
{
"descr": "KM 063+500 - KOFLER PRESSO GALLERIA",
"id": 6122
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 63,5 - KOFLER PRESSO GALLERIA",
"id": 676
}
{
"descr": "TVCC TRAFFICO KM 076.600 SUD",
"id": 6033
}
{
"descr": "TVCC TRAFFICO KM 076.600 NORD",
"id": 6034
}
{
"descr": "KM 076+600 RADAR",
"id": 6151
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 076,600 RADAR",
"id": 5416
}
{
"descr": "KM 081+200 - GALLERIA VIRGOLO NORD",
"id": 6123
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 81,2 - GALLERIA VIRGOLO NORD",
"id": 684
}
{
"descr": "KM 087+800 - BOLZANO SUD",
"id": 6124
}
{
"descr": "TVCC TRAFFICO KM 087.875 NORD",
"id": 6036
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 87,8 - BOLZANO SUD",
"id": 679
}
{
"descr": "TVCC TRAFFICO KM 087.875 SUD",
"id": 6035
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 103+700 - EGNA ORA",
"id": 5687
}
{
"descr": "KM 103+700 - EGNA ORA",
"id": 6125
}
{
"descr": "TVCC TRAFFICO KM 105.163 SUD",
"id": 5936
}
{
"descr": "TVCC TRAFFICO KM 105.163 NORD",
"id": 5954
}
{
"descr": "KM 107+000 - S.FLORIANO",
"id": 6126
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 107,0 - S.FLORIANO",
"id": 680
}
{
"descr": "TVCC TRAFFICO KM 123.900 SUD",
"id": 5937
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 123,9 - S.MICHELE RADAR",
"id": 685
}
{
"descr": "TVCC TRAFFICO KM 123.900 NORD",
"id": 5953
}
{
"descr": "KM 123+900 - S.MICHELE RADAR",
"id": 6152
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 123,960 - S.MICHELE",
"id": 668
}
{
"descr": "KM 123+960 - S.MICHELE",
"id": 6127
}
{
"descr": "TVCC ADS KM 129.000 OVEST INGRESSO",
"id": 5996
}
{
"descr": "TVCC ADS KM 129.000 OVEST USCITA",
"id": 5997
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 132+800 RADAR",
"id": 5807
}
{
"descr": "KM 132+800 RADAR",
"id": 6153
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 138,1 - PIEDICASTELLO",
"id": 674
}
{
"descr": "KM 138+100 - PIEDICASTELLO",
"id": 6128
}
{
"descr": "TVCC TRAFFICO KM 138.415 SUD",
"id": 5938
}
{
"descr": "TVCC TRAFFICO KM 138.415 NORD",
"id": 5955
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 140,605 RADAR",
"id": 5417
}
{
"descr": "KM 140+605 RADAR",
"id": 6154
}
{
"descr": "KM 144+930 RADAR",
"id": 6155
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 144,930 RADAR",
"id": 5418
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 151,050 RADAR",
"id": 5419
}
{
"descr": "KM 151+050 RADAR",
"id": 6156
}
{
"descr": "TVCC TRAFFICO KM 156.595 NORD",
"id": 5960
}
{
"descr": "KM 156+595 - ROVERETO NORD PMV",
"id": 6129
}
{
"descr": "TVCC TRAFFICO KM 156.595 SUD",
"id": 5939
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 156,595 - ROVERETO NORD PMV",
"id": 1886
}
{
"descr": "KM 159+200 - ROVERETO NORD RADAR",
"id": 6157
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 159,2 - ROVERETO NORD RADAR",
"id": 889
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 161,6 - ROVERETO SUD RADAR",
"id": 890
}
{
"descr": "KM 161+600 - ROVERETO SUD RADAR",
"id": 6158
}
{
"descr": "KM 164+300 - ROVERETO SUD",
"id": 5553
}
{
"descr": "KM 164+300 - ROVERETO SUD",
"id": 6130
}
{
"descr": "KM 164+355 - ROVERETO SUD PMV",
"id": 6131
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 164,355 - ROVERETO SUD PMV",
"id": 1887
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 167,9 - ROVERETO SUD PMV",
"id": 686
}
{
"descr": "KM 167+900 - ROVERETO SUD PMV",
"id": 6132
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 177,6 - ALA AVIO",
"id": 687
}
{
"descr": "KM 177+600 - ALA AVIO",
"id": 6133
}
{
"descr": "TVCC TRAFFICO KM 177.600 NORD",
"id": 5959
}
{
"descr": "TVCC TRAFFICO KM 177.600 SUD",
"id": 5958
}
{
"descr": "KM 187+000 - ADIGE EST",
"id": 6134
}
{
"descr": "KM 187+000 - ADIGE EST",
"id": 5438
}
{
"descr": "TVCC TRAFFICO KM 205.165 SUD",
"id": 5956
}
{
"descr": "TVCC TRAFFICO KM 205.165 NORD",
"id": 5957
}
{
"descr": "KM 205+500 - PORTALE AFFI",
"id": 6135
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 205,5 - PORTALE AFFI",
"id": 683
}
{
"descr": "KM 216+500 - AFFI",
"id": 6136
}
{
"descr": "KM 216+500 - AFFI",
"id": 5753
}
{
"descr": "TVCC TRAFFICO KM 223.385 SUD",
"id": 6103
}
{
"descr": "TVCC TRAFFICO KM 223.385 NORD",
"id": 6102
}
{
"descr": "KM 228+100 - ALLACCIAMENTO A22 - A4 SUD",
"id": 6137
}
{
"descr": "SEZIONE DI RILEVAMENTO ALLACCIAMENTO A22 - A4 SUD",
"id": 657
}
{
"descr": "SEZIONE DI RILEVAMENTO ALLACCIAMENTO A4 - A22 NORD",
"id": 660
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 227+600",
"id": 1871
}
{
"descr": "KM 227+600 - ALLACCIAMENTO A4 - A22 NORD",
"id": 6138
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 228+200",
"id": 1872
}
{
"descr": "KM 228+200 - ALLACCIAMENTO A4 - A22 SUD",
"id": 6140
}
{
"descr": "SEZIONE DI RILEVAMENTO ALLACCIAMENTO A4 - A22 SUD",
"id": 658
}
{
"descr": "SEZIONE DI RILEVAMENTO ALLACCIAMENTO A22 - A4 NORD",
"id": 659
}
{
"descr": "ALLACCIAMENTO A22 - A4 NORD",
"id": 6139
}
{
"descr": "TVCC TRAFFICO KM 228.900 NORD",
"id": 6106
}
{
"descr": "TVCC TRAFFICO KM 228.900 SUD",
"id": 6107
}
{
"descr": "TVCC TRAFFICO KM 241.300 SUD",
"id": 6109
}
{
"descr": "TVCC TRAFFICO KM 241.300 NORD",
"id": 6108
}
{
"descr": "KM 242+500 - NOGAROLE ROCCA",
"id": 6141
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 242,5 - NOGAROLE ROCCA",
"id": 663
}
{
"descr": "KM 247+900 - MANTOVA NORD",
"id": 6142
}
{
"descr": "KM 247+900 - MANTOVA NORD",
"id": 5776
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 261,400 - MANTOVA NORD",
"id": 671
}
{
"descr": "KM 261+400 - MANTOVA NORD",
"id": 6143
}
{
"descr": "TVCC TRAFFICO KM 261.400 SUD",
"id": 6111
}
{
"descr": "TVCC TRAFFICO KM 261.400 NORD",
"id": 6110
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 271,900 - MANTOVA SUD",
"id": 672
}
{
"descr": "KM 271+900 - MANTOVA SUD",
"id": 6144
}
{
"descr": "TVCC TRAFFICO KM 279.975 NORD",
"id": 6112
}
{
"descr": "TVCC TRAFFICO KM 279.975 SUD",
"id": 6113
}
{
"descr": "KM 283+300 - PEGOGNAGA",
"id": 6145
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 283,3 - PEGOGNAGA",
"id": 661
}
{
"descr": "TVCC TRAFFICO KM 300.100 SUD",
"id": 6115
}
{
"descr": "TVCC TRAFFICO KM 300.100 NORD",
"id": 6114
}
{
"descr": "KM 301+200 - CARPI",
"id": 6146
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 301,2 - CARPI",
"id": 681
}
{
"descr": "KM 305+200 - CARPI",
"id": 6147
}
{
"descr": "KM 305+200 - CARPI",
"id": 5845
}
{
"descr": "TVCC TRAFFICO KM 311.000 SUD",
"id": 6117
}
{
"descr": "TVCC TRAFFICO KM 311.000 NORD",
"id": 6116
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 313 - RACCORDO AUTOSOLE NORD",
"id": 5767
}
{
"descr": "KM 313+000 - RACCORDO AUTOSOLE",
"id": 6148
}
{
"descr": "SEZIONE DI RILEVAMENTO KM. 313 - RACCORDO AUTOSOLE SUD",
"id": 673
}
@clezag can you provide me an example of a raw record associated to one of these stations?
@rcavaliere This is for station 5954, "TVCC TRAFFICO KM 105.163 NORD", timeframe today 0:00-0:10
{
"Traffico_GetTransitiResult": [
{
"assi": 0,
"avanzamento": 19,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730242806000+0100)\/",
"direzione": 0,
"distanza": 18,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 87
},
{
"assi": 0,
"avanzamento": 0,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730242806000+0100)\/",
"direzione": 0,
"distanza": 1,
"idsensore": 2,
"idspira": 5954,
"lunghezza": 500,
"velocita": 141
},
{
"assi": 0,
"avanzamento": 44,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730242850000+0100)\/",
"direzione": 0,
"distanza": 43,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 145
},
{
"assi": 0,
"avanzamento": 5,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730242855000+0100)\/",
"direzione": 0,
"distanza": 4,
"idsensore": 2,
"idspira": 5954,
"lunghezza": 500,
"velocita": 159
},
{
"assi": 0,
"avanzamento": 11,
"classe": 2,
"controsenso": false,
"data": "\/Date(1730242866000+0100)\/",
"direzione": 0,
"distanza": 10,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 600,
"velocita": 127
},
{
"assi": 0,
"avanzamento": 4,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730242870000+0100)\/",
"direzione": 0,
"distanza": 3,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 148
},
{
"assi": 0,
"avanzamento": 3,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730242873000+0100)\/",
"direzione": 0,
"distanza": 2,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 142
},
{
"assi": 0,
"avanzamento": 18,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730242891000+0100)\/",
"direzione": 0,
"distanza": 17,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 132
},
{
"assi": 0,
"avanzamento": 5,
"classe": 2,
"controsenso": false,
"data": "\/Date(1730242896000+0100)\/",
"direzione": 0,
"distanza": 4,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 600,
"velocita": 101
},
{
"assi": 0,
"avanzamento": 25,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730242921000+0100)\/",
"direzione": 0,
"distanza": 24,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 123
},
{
"assi": 0,
"avanzamento": 14,
"classe": 2,
"controsenso": false,
"data": "\/Date(1730242935000+0100)\/",
"direzione": 0,
"distanza": 13,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 600,
"velocita": 103
},
{
"assi": 0,
"avanzamento": 39,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730242974000+0100)\/",
"direzione": 0,
"distanza": 38,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 80
},
{
"assi": 0,
"avanzamento": 2,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730242976000+0100)\/",
"direzione": 0,
"distanza": 1,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 81
},
{
"assi": 0,
"avanzamento": 8,
"classe": 2,
"controsenso": false,
"data": "\/Date(1730242984000+0100)\/",
"direzione": 0,
"distanza": 7,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 600,
"velocita": 98
},
{
"assi": 0,
"avanzamento": 19,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243003000+0100)\/",
"direzione": 0,
"distanza": 18,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 116
},
{
"assi": 0,
"avanzamento": 9,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243012000+0100)\/",
"direzione": 0,
"distanza": 8,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 124
},
{
"assi": 0,
"avanzamento": 16,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730243028000+0100)\/",
"direzione": 0,
"distanza": 15,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 81
},
{
"assi": 0,
"avanzamento": 47,
"classe": 2,
"controsenso": false,
"data": "\/Date(1730243075000+0100)\/",
"direzione": 0,
"distanza": 46,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 600,
"velocita": 118
},
{
"assi": 0,
"avanzamento": 18,
"classe": 2,
"controsenso": false,
"data": "\/Date(1730243093000+0100)\/",
"direzione": 0,
"distanza": 17,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 600,
"velocita": 94
},
{
"assi": 0,
"avanzamento": 3,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243096000+0100)\/",
"direzione": 0,
"distanza": 2,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 114
},
{
"assi": 0,
"avanzamento": 6,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243102000+0100)\/",
"direzione": 0,
"distanza": 5,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 123
},
{
"assi": 0,
"avanzamento": 13,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243115000+0100)\/",
"direzione": 0,
"distanza": 12,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 155
},
{
"assi": 0,
"avanzamento": 13,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243128000+0100)\/",
"direzione": 0,
"distanza": 12,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 94
},
{
"assi": 0,
"avanzamento": 107,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730243235000+0100)\/",
"direzione": 0,
"distanza": 106,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 78
},
{
"assi": 0,
"avanzamento": 5,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730243240000+0100)\/",
"direzione": 0,
"distanza": 4,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 80
},
{
"assi": 0,
"avanzamento": 5,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243245000+0100)\/",
"direzione": 0,
"distanza": 4,
"idsensore": 2,
"idspira": 5954,
"lunghezza": 500,
"velocita": 127
},
{
"assi": 0,
"avanzamento": 40,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243285000+0100)\/",
"direzione": 0,
"distanza": 39,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 103
},
{
"assi": 0,
"avanzamento": 24,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243309000+0100)\/",
"direzione": 0,
"distanza": 23,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 116
},
{
"assi": 0,
"avanzamento": 35,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730243344000+0100)\/",
"direzione": 0,
"distanza": 34,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 81
},
{
"assi": 0,
"avanzamento": 12,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243356000+0100)\/",
"direzione": 0,
"distanza": 11,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 115
},
{
"assi": 0,
"avanzamento": 10,
"classe": 5,
"controsenso": false,
"data": "\/Date(1730243366000+0100)\/",
"direzione": 0,
"distanza": 9,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 1800,
"velocita": 82
},
{
"assi": 0,
"avanzamento": 12,
"classe": 1,
"controsenso": false,
"data": "\/Date(1730243378000+0100)\/",
"direzione": 0,
"distanza": 11,
"idsensore": 1,
"idspira": 5954,
"lunghezza": 500,
"velocita": 159
}
]
}
@clezag OK, let me investigate. Please wait until I give you feedback, in the meantime go ahead with the other development of this user story
@clezag I have got a feedback about the fact that the data is here. Which end-point are you actually considering? the correct one is e.g. https://cau.autobrennero.it/Vega/A22DataBrennerlec/A22DataIIS.svc/traffico/transiti
@clezag yes, please now consider the end-point https://cau.autobrennero.it/Vega/A22DataBrennerlec/A22DataIIS.svc for all A22 services! Sorry but this fact was not so clear, and it could be the reason for many issues I am seeing with A22 data...
@rcavaliere I'm getting the new fields on this endpoint, looks like this was indeed the issue
@rcavaliere traveltime is now fixed in testing and loading the data since 10.07.2024 e.g. station 1840-1841 does already have new data with types.
I have not yet migrated any old data. I think we can just delete the old history from the starting date on, and let the data collector import it again with the new data types. Their API still has all the historical data and the data collector can handle it.
If the data looks good to you, I will do a full import again in testing, to confirm that it works
@rcavaliere The traffic connector is now also writing the two new fields in testing. You have to look at the a22 db within the test-postgres database to see it, though.
@clezag many thanks for this. I will check your developments and let you know about bringing all this in production
@rcavaliere The traffic connector is now also writing the two new fields in testing. You have to look at the a22 db within the test-postgres database to see it, though.
This part is OK, but for the field country I would not store the id of the country but the correspondent string "sigla", so that the data is immediately evaluated.
@rcavaliere traveltime is now fixed in testing and loading the data since 10.07.2024 e.g. station 1840-1841 does already have new data with types.
I have not yet migrated any old data. I think we can just delete the old history from the starting date on, and let the data collector import it again with the new data types. Their API still has all the historical data and the data collector can handle it.
If the data looks good to you, I will do a full import again in testing, to confirm that it works
Sorry @clezag but I don't see the upgrade in the testing environment. I always see just the previous 3 data types and the data not updated since 18.6.2024. Can you check and let me know?
@rcavaliere traveltime is now fixed in testing and loading the data since 10.07.2024 e.g. station 1840-1841 does already have new data with types. I have not yet migrated any old data. I think we can just delete the old history from the starting date on, and let the data collector import it again with the new data types. Their API still has all the historical data and the data collector can handle it. If the data looks good to you, I will do a full import again in testing, to confirm that it works
Sorry @clezag but I don't see the upgrade in the testing environment. I always see just the previous 3 data types and the data not updated since 18.6.2024. Can you check and let me know?
@rcavaliere which application or frontend are you using to verify? I just interrogated the API: https://mobility.api.opendatahub.testingmachine.eu/v2/flat/LinkStation/*/latest/?where=sorigin.eq.A22,scode.eq.%221840-1841%22 (you have to pass an authentication token)
{
"offset": 0,
"data": [
{
"_timestamp": "2024-06-18 14:09:51.000+0000",
"tdescription": "Livello di servizio",
"tmetadata": {},
"tname": "lds_desc",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2021-01-29 00:00:35.811+0000",
"mvalidtime": "2024-06-18 14:09:51.000+0000",
"mvalue": "traffico scorrevole",
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "a826cb45973bb4abb2d44fb09f03c28610bc772e",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-06-18 14:09:51.000+0000",
"tdescription": "Tempo di percorrenza",
"tmetadata": {},
"tname": "tempo",
"ttype": "false",
"tunit": "[s]",
"mperiod": 1,
"mtransactiontime": "2021-01-29 00:00:42.378+0000",
"mvalidtime": "2024-06-18 14:09:51.000+0000",
"mvalue": 100,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "a826cb45973bb4abb2d44fb09f03c28610bc772e",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-06-18 14:09:51.000+0000",
"tdescription": "Velocità di percorrenza",
"tmetadata": {},
"tname": "velocita",
"ttype": "Mean",
"tunit": "[km/h]",
"mperiod": 1,
"mtransactiontime": "2021-01-29 00:00:45.644+0000",
"mvalidtime": "2024-06-18 14:09:51.000+0000",
"mvalue": 54,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "a826cb45973bb4abb2d44fb09f03c28610bc772e",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-06-18 14:09:51.000+0000",
"tdescription": "Livello di servizio",
"tmetadata": {},
"tname": "lds",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2021-01-29 00:00:32.220+0000",
"mvalidtime": "2024-06-18 14:09:51.000+0000",
"mvalue": "E",
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "a826cb45973bb4abb2d44fb09f03c28610bc772e",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-06-18 14:09:51.000+0000",
"tdescription": "Livello di servizio",
"tmetadata": {},
"tname": "lds_val",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2021-01-29 00:00:39.077+0000",
"mvalidtime": "2024-06-18 14:09:51.000+0000",
"mvalue": 5,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "a826cb45973bb4abb2d44fb09f03c28610bc772e",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Velocità di percorrenza mezzi leggeri",
"tmetadata": {},
"tname": "velocita_leggeri",
"ttype": "Mean",
"tunit": "[km/h]",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:41.157+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": 81,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Velocità di percorrenza mezzi pesanti",
"tmetadata": {},
"tname": "velocita_pesanti",
"ttype": "Mean",
"tunit": "[km/h]",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:43.860+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": 81,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Livello di servizio mezzi leggeri",
"tmetadata": {},
"tname": "lds_leggeri",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:24.198+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": "D",
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Livello di servizio mezzi leggeri",
"tmetadata": {},
"tname": "lds_leggeri_desc",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:26.349+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": "rallentamenti",
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Livello di servizio mezzi pesanti",
"tmetadata": {},
"tname": "lds_pesanti",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:30.505+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": "D",
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Livello di servizio mezzi pesanti",
"tmetadata": {},
"tname": "lds_pesanti_desc",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:32.541+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": "rallentamenti",
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Livello di servizio mezzi leggeri",
"tmetadata": {},
"tname": "lds_leggeri_val",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:28.372+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": 4,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Livello di servizio mezzi pesanti",
"tmetadata": {},
"tname": "lds_pesanti_val",
"ttype": "Mean",
"tunit": "",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:34.613+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": 4,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Tempo di percorrenza mezzi leggeri",
"tmetadata": {},
"tname": "tempo_leggeri",
"ttype": "false",
"tunit": "[s]",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:36.890+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": 67,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
},
{
"_timestamp": "2024-11-09 09:45:46.000+0000",
"tdescription": "Tempo di percorrenza mezzi pesanti",
"tmetadata": {},
"tname": "tempo_pesanti",
"ttype": "false",
"tunit": "[s]",
"mperiod": 1,
"mtransactiontime": "2024-11-07 12:35:38.971+0000",
"mvalidtime": "2024-11-09 09:45:46.000+0000",
"mvalue": 67,
"prlineage": "A22",
"prname": "odh-mobility-dc-traveltimes-a22",
"prversion": "600d16616f04592d266cb69717169493a8ec18e2",
"sactive": true,
"savailable": true,
"scode": "1840-1841",
"smetadata": {
"lunghezza": 1500,
"metrofine": 1500,
"iddirezione": "Sud",
"metroinizio": 0,
"latitudinefine": 46.99307655,
"longitudinefine": 11.49954984,
"latitudineinizio": 47.00413531,
"longitudininizio": 11.50765671
},
"sname": "BRENNERO CONFINE - BRENNERO PAESE",
"sorigin": "A22",
"stype": "LinkStation"
}
],
"limit": -1
}
@clezag I am querying directly the DB. How are you storing the new types?
I'm not doing anything out of the ordinary, the types should be there in the DB (or they wouldn't be visible on the API). Can you send me the query you are using?
@clezag yes of course:
select * from intimev2.station where origin = 'A22' and stationtype = 'LinkStation' order by name
select * from intimev2.measurement where station_id = 343025
select * from intimev2.measurementstring where station_id = 343025
(in the testing infrastructure - travel times data)
There was an issue that led to the data collector failing partway through, so some stations never got loaded. Now they should be all there
This part is OK, but for the field country I would not store the id of the country but the correspondent string "sigla", so that the data is immediately evaluated.
Implemented country codes now.
Data is again being updated in testing. I've noted that their API is quite slow (but I have no data if it always was), and if the data collector falls behind due to an outage, it gets into a state where it can't catch up.
I've managed to speed up our side of the data collection a bit, but now it's spending all it's time on the API call
Looking forward to your feedback
There was an issue that led to the data collector failing partway through, so some stations never got loaded. Now they should be all there
@clezag ok understood, now I see the improvements. I see that you have also foreseen 3 new data types for the light vehicles - you are right, better to do so, in this way we have more clear separation between new and old data types. For me the development is OK, we can start integrating the historical data here and bring all this to production. One thing connected to this development: we should check that all A22 Data Collectors are now connected to the new end-point, this might be the issue that we have here.
This part is OK, but for the field country I would not store the id of the country but the correspondent string "sigla", so that the data is immediately evaluated.
Implemented country codes now.
Data is again being updated in testing. I've noted that their API is quite slow (but I have no data if it always was), and if the data collector falls behind due to an outage, it gets into a state where it can't catch up.
I've managed to speed up our side of the data collection a bit, but now it's spending all it's time on the API call
Looking forward to your feedback
OK, I don't have direct access to this DB but I trust you. For the performance issue, maybe if you are in contact in these days with C. Mair for the DB upgrade maybe you can ask him a feedback, he made this implementation.
Traveltimes: I've deleted all the data related to the new data types, and am doing a full import starting at 10.07.2024.
If all goes well with the import (it will run over the weekend), we can simply delete all the old data types from 10.07.2024 on, and we should have a clean transition. This way we can avoid manual ad-hoc migrations of the old data types.
A22 with its technological supplier of their Traffic Management Center has made a new release of its API. Thanks to this new release, additional data is made available, which are mainly related to a new network of Automatic Number Plate Recognition (ANPR) cameras installed over the whole highway. Following aspects have to be checked / added:
idNazionalita
andtargaIniziali
are also imported. They contain, when available the nationality of the vehicle (see method traffico/nazionalità) and the first two letters of the number plate.tempo
,velocita
andlds
now just refer to the light vehicles, so the associated Open Data Hub types have to be renamed accordingly (e.g. with a prefix/suffix "leggeri"). The additional fieldspesanti_tempo
,pesanti_velocita
andpesanti_lds
have to be integrated with different data types (forpesanti_lds
three data types have to be generated as currently implemented for the light vehicles)Reference A22 API specification:
240710_Softech_SpecificheAPI_V22_v12.pdf