how to search a segmented route? - here-api

im implementing HERE route search in my app, i have at most 9 destinations as stops along the route, my problem is that in these routes could be vehicle change (like, car to plane), of course, in those case i donĀ“t expect to have a route, but for performance reasons and to avoid sending 10 route request, im sending all the waypoints, even the unneeded, the problem in this case is of there is a section of all the route with no route found, then i get a WebExcepion with no response. There is any option i could enable to get the legs with maneuvers when there is one, and a error in the legs without route? i want to avoid sending several requests for each route.

waypoints, legs, summary are the default attributes for a route. this can't be disable even if there is no route between the two waypoints. However the response can be optimised for legs attributes, which is not needed in your case. this needs to be handled during rendering at UI side to avoid displaying route if there isn't any route,

Related

Is there a way to retrieve information about a previously calculated route without a routeHandle in HERE Maps Routing API v8?

I have downloaded a bunch of routes from HERE Maps Routing API v8. At the time, I wasn't aware about the routeHandler parameter, so I didn't return it from my requests.
Now I need to acquire duration times with different departure times from these previously downloaded routes. Is there a way I can retrieve/calculate the routeHandler with all other information I have about the route? Or to retrieve the duration times for the routes without a routeHandler? (maybe with the route's id or polyline)
I thought of recalculating the routes, giving the same origin/destination, but I'm afraid the results may differ from my previous routes, since the API may return different routes based on departure time.
I found out that the Routing API v7 has a way to retrieve the route with routeID, but it doesn't work with the id returned by v8.
EDIT: I thought of making a request with the time the original routes were donwloaded as the departure time, in order to get the routeHandler, but I'm not sure the routes returned will be the same as the ones I have, because the departure time was set to 'now', and I don't know if requesting past times returns the same thing as before.
If you didn't specify parameter return=routeHandle in the request then you can't get previously calculated route (or routeHandle) neither by polyline nor route's id(doesn't exist in v8) nor by something else.
You are right, if you recalculate a route then you get different route response because it will be another traffic situation on the roads at departure time.
Caution: when you will decode route by routeHandle (/routes/{routeHandle}) and with different departure times then it will be used anyway always previously encoded route polyline(but of course with another penalties) therefore for some waypoints (origin, destination, via) combinations recalculated route could return more effizient route at particular departure time.

About routing between multiple locations with truck

I have the following content in the link (https://www.developer.here.com/documentation/android-premium/dev_guide/topics/routing.html):
You can use RouteWaypoint to add more waypoint details to your route calculations. These details include whether the waypoint is a deliberate stopover or a crossing point through which the route must pass. This affects routing because the path containing the stopover or route may be different. For example, the calculated route may suggest a U-turn maneuver after a stopover, while a route containing the same location as the waypoint is recommended to continue on the same street. The via waypoint type is only supported in car routes and is not supported in other route types.
I guess this passage means that your company's SDK supports path planning between multiple points, but it seems to only support the "car" type. I want to confirm if the truck type is supported.
Adding multiple waypoints for Trucks is supported, but waypoints will always be of type "Stop_Over" , you cannot have a waypoint as type "Via_point" when using Truck Routing. More details can be found in https://www.developer.here.com/documentation/android-premium/api_reference_java/com/here/android/mpa/routing/RouteWaypoint.Type.html
VIA_WAYPOINT
public static final RouteWaypoint.Type VIA_WAYPOINT
No maneuver is generated for a VIA waypoint. After the VIA waypoint, route will continue in the same direction as when it's approached.
Via waypoints will "force" the route to pass through them, but they will not cause any guidance, announcement or maneuvers.
VIA waypoints are not considered during Guidance triggered re-routing nor do they trigger any callbacks upon arrival at the waypoint.
This is only supported by RouteOptions.TransportMode.CAR . It's ignored for other transport modes.

Deeplinking complex route in Here WeGo

For our use case, we need a turn-by-turn navigation on a mobile device but using a custom route.
Please let me know if the following usage scenario is possible:
Given an array of points (lat/long) that the route needs to pass through, get a route using CalculateRoute.
Create a deeplink for HERE WeGo (e.g. iOS) using the sequence of waypoints obtained in step #1
Navigate turn by turn in HERE WeGo along the route
So far I was successful in #1 but could not create a deeplink with the same route for HERE WeGo. When I create a link, the app simplifies the route to only include origin and destination points and omits all "via" points.
Would appreciate advice on this.
In general passing the waypoints one after the other should open the route with the intermediate points (at least on wego.here.com) , not so sure if this work out of the box in HERE WE Go https://developer.here.com/documentation/deeplink-web/dev_guide/topics/share-route.html

Google Directions API (Transit mode) returns only one alternative route per request

I have built an small application which calls the Google Directions API in Transit mode. It works - nevertheless it returns only one possible route, so it shows no alternatives. Usually I expect 3-4 options to choose from.
Example:
http://maps.googleapis.com/maps/api/directions/json?origin=bieberstrasse,+dusseldorf&destination=norf,+neuss&sensor=false&mode=transit&departure_time=1399399424
The returned JSON structure has the expected "routes" array, but this array always has only one element. I have tried it with addresses in Brazil and Germany - it doesn't matter the country, I only get one single route.
Did I miss some parameter? Could someone help me with it?
If you want alternative routes, specify the request parameter alternatives=true:
http://maps.googleapis.com/maps/api/directions/json?alternatives=true&origin=bieberstrasse,+dusseldorf&destination=norf,+neuss&sensor=false&mode=transit&departure_time=1399399424

Asp.net web routing. Same url pattern without any constraints

Hi every one i am working on asp.net web routing. I need same url pattern without any constraints.
i need following multiple URL pattern.
"CountryRoute","{country_name}" "~/country.aspx" => www.abc.com/australia/
"PageRoute","{page_url}" "~/page.aspx" => www.abc.com/contact_us/
"keywordRoute","{keyword_url}" "~/keyword.aspx" => www.abc.com/keywordName/
i can't apply any constraints.
You can't have one common URL for two different resources (without magic, that is). That's like suggesting one road could take you to two different places.
You know that en URL is kind of the address of a web page, right? Consider the similar properties in comparison with a real address of a real house; It would be OK to have two addresses for one house, but if two different houses had the same address (in the same town, county, country etc.) then how would the postman be able to tell which house a certain letter should be delivered to?
If you wanted to, you could build your own route handling but that wouldn't change the fact that at one point or another you need to do the job of the postman and identify some unique feature of the request or its context, that points towards one resource or the other. It could be the querystring, a session object, whether the call was made from a computer i China or Germany or whatever -- you need to decide what makes sense in your case. "Both link going to different destination page but URL are same", as you wrote in your answer to my comment, does not.

Resources