One of the most exciting features of Micello maps is the ability to navigate from one geometry on the map to any other. The navigation controls are exposed to the user inside of the default popup window, allowing them to navigate between two geometries.

Navigation requests that span levels will direct the user through an appropriate level change ( stairs or escalator ).

There may be a time when the developer wishes to show a predefined navigation path when the map loads, or as the result of an event being triggered. For this, first we need to create start and end route objects. 

var routeFrom = [{
    t: "gid",
    gid: 6311507,
    lid: 53615
}];

var routeTo = [{
    t: "gid",
    gid: 6242480,
    lid: 53615
}];

Here we are navigating between two geometries and input is geometry id so the type "t" for each should be "gid". Other input property in route object is level id(lid). Here we are navigating between different levels, hence the different level ids.

Now we will create our navigation object and initiate the route using routeInit function. Route from and to objects are the mandatory parameter while route detail is optional. Route detail will be used to display source and destination label.

var routeFrom = [{
    t: "gid",
    gid: 6311507,
    lid: 53615
}];

var routeTo = [{
    t: "gid",
    gid: 6311534,
    lid: 53615
}];

var routeDetails = {
    fromName: "Source",
    toName: "Destination"
}
var nav = community.getNavigation();
nav.routeInit (routeFrom, routeTo, routeDetails);

Make sure you initiate the route request after geometries are loaded. You can use "indoorLevelGeomLoaded" event for this.