简体   繁体   中英

HERE LinkId from route not found in PDE (Platform Data Extension)

UPDATE: It's happening again, also with Fleet API. Please see additional examples at end of the post.

I'm using HERE's REST API to calculate a route, then ask for additional data for each link / route segment by querying HERE's Platform Data Extension (PDE). This usually works fine, but now I've run into a link id that is not recognised by PDE.

Are these services not in sync, or am I doing something wrong?

I didn't have any issue in the past weeks, and it still works fine for most link ids, so this could either be a new problem or a very singular issue. I searched in the HERE API documentation and on Stackoverflow, but couldn't find anything related.

Route request (A24 Berlin towards Hamburg): https://route.api.here.com/routing/7.2/calculateroute.json?waypoint0=geo!52.7091,13.0356&waypoint1=geo!52.7193,12.9608&mode=fastest;car;traffic:disabled&representation=navigation&app_id=xxx&app_code=yyy

The json response (below) contains a link with permanent id 1199057935 at Anschlussstelle Kremmen.

The PDE request gives an empty response: https://pde.api.here.com/1/index.json?layer=ROAD_GEOM_FCn&attributes=LINK_ID&values=1199057935&app_id=xxx&app_code=yyy

{"Layers":[]}

Instead, I would expect the data of the containing tile, eg what I get for 119905793 6

{"Layers":[{"layer":"ROAD_GEOM_FC1","level":9,"tileXYs":[{"x":548,"y":405}]}]}

I also tried the PDE request with ROAD_GEOM_FC1 and prefixing the id with + (values=+1199057935). Other link ids of the route return the expected tile information.

For completeness, here's the link's json from the routing response:

{
 "linkId":"+1199057935",
 "shape":["52.7175629,12.976613","52.7177131,12.9749393"],
 "firstPoint":28,
 "lastPoint":29,
 "length":114,
 "remainDistance":1095,
 "remainTime":39,
 "nextLink":"+1199057936",
 "maneuver":"M2",
 "speedLimit":33.3333359,
 "dynamicSpeedInfo":{"trafficSpeed":16.3888893,"trafficTime":7,"baseSpeed":27.5,"baseTime":4,"jamFactor":5.7118645},
 "flags":["motorway"],
 "functionalClass":1,
 "roadNumber":"A24",
 "timezone":"+0100",
 "roadName":"",
 "consumption":0,
 "_type":"PrivateTransportLinkType"
}

UPDATE 2019-05-27:

I get a route that contains link id 1239826684 from https://route.api.here.com/routing/7.2/calculateroute.json?waypoint0=geo!52.5066,13.4299&waypoint1=geo!52.5282,13.4265&mode=fastest;car;traffic:disabled&representation=navigation&app_id=xxx&app_code=yyy

Using fleet endpoint redirects to same call as above, including link id 1239826684: https://fleet.api.here.com/2/calculateroute.json?waypoint0=geo!52.5066,13.4299&waypoint1=geo!52.5282,13.4265&mode=fastest;car;traffic:disabled&representation=navigation&app_id=xxx&app_code=yyy

PDE returns [] for that link id: https://pde.api.here.com/1/index.json?layer=ROAD_GEOM_FCn&attributes=LINK_ID&values=1239826684&app_id=xxx&app_code=yyy

Fleet API returns [] for that link id: http://fleet.cit.api.here.com/1/index.json?layer=ROAD_GEOM_FCn&attributes=LINK_ID&values=1239826684&app_id=xxx&app_code=yyy

Seems the underlying geo-data is not in sync, and using different APIs does not help. Any other solution?

You can try Fleet telematics group of API's over basic routing and PDE as Fleet Telematics provides whole routing solution .

Please find the below API request which is giving expected response for the id-1199057935

http://fleet.cit.api.here.com/1/index.json?layer=ROAD_GEOM_FCn&attributes=LINK_ID&values=1199057935&app_id=xxxx&app_code=yyyy

Response : { Layers: [ { layer: "ROAD_GEOM_FC1", level: 9, tileXYs: [ { x: 548, y: 405 } ] } ] }

for more information kindly go through the below documentation

https://developer.here.com/documentation/fleet-telematics/api-reference.html#operation%2FindexJSONUsingGET

Hope this will help.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM