Menu
Close

Tracking with viaPoints

Sample Implementation

 

  <html>
  <head>
    <title>Tracking with viaPoints</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Tracking with viaPoints">

        <script src="https://sdk.mappls.com/map/sdk/web?v=3.0&access_token=Token&callback=initMap1"></script>
          <script src="https://sdk.mappls.com/map/sdk/plugins?access_token=Token&v=3.0"></script>
          <style>
        body {
            margin: 0;
        }

        #map {
            width: 100%;
            height: 100vh;
            margin: 0;
            padding: 0;
        }
    </style>
    </head>

    <body>
        <div id="map"></div>
                <script>
            /*Map Initialization*/
            var map;

            function initMap1() {
                map = new mappls.Map('map', {
                    center: [28.62988695137534, 77.4224575062193],
                    zoom: 12
                });
                map.addListener('load', function() {

                    window.mappls.addControl({
                        map: map,
                        html: `<button id="via1Btn">via 1</button>
                       <button id="via2Btn">via 2</button>
                       <button id="via3Btn">via 3</button>
                       <button id="removeBtn">Remove via 1 & via 2</button>`,
                        position: "top-left",
                    });

                    document.getElementById("via1Btn").addEventListener('click', function() {
                        handleUserCall("via1");
                    });
                    document.getElementById("via2Btn").addEventListener('click', function() {
                        handleUserCall("via2");
                    });
                    document.getElementById("via3Btn").addEventListener('click', function() {
                        handleUserCall("via3");
                    });
                    document.getElementById("removeBtn").addEventListener('click', function() {
                        handleUserCall("via1,via2");
                    });

                    function handleUserCall(viaId) {
                        data1.removeVia(viaId, function(data) {
                            console.log(`Removed Via(s): ${viaId}`, data.data[0]);
                        });
                    }

                    /*tracking plugin initialization*/
                    var tracking_option = {
                        map: map,
                        start: {
                            geoposition: "28.4124010064198,77.5541"
                        },
                        end: {
                            geoposition: "28.326158042209002,77.55039445822257"
                        },
                        fitBounds: true,
                        ccpIconWidth: 70,
                        strokeWidth: 7,
                        routeColor: "blue",
                        via: [{
                                geoposition: "28.42856320576533,77.5266396473998",
                                id: "via1",
                                icon: {
                                    url: "https://apis.mapmyindia.com/map_v3/2.png",
                                    popupHtml: "Via 1",
                                    width: 30,
                                    height: 45,
                                    popupOptions: {
                                        offset: {
                                            bottom: [0, -20]
                                        },
                                        openPopup: false,
                                    },
                                    /* offset:[0,0] */
                                },
                            },
                            {
                                geoposition: "28.44275991192795,77.51372861117522",
                                id: "via2",
                                icon: {
                                    url: "https://apis.mapmyindia.com/map_v3/1.png",
                                    popupHtml: "Via 2",
                                    width: 30,
                                    height: 45,
                                    popupOptions: {
                                        offset: {
                                            bottom: [0, -20]
                                        },
                                        openPopup: false,
                                    },
                                    /* offset:[0,0] */
                                },
                            },
                            {
                                geoposition: "28.452552810748116,77.49571088868709",
                                id: "via3",
                                icon: {
                                    url: "https://apis.mapmyindia.com/map_v3/2.png",
                                    popupHtml: "Via 3",
                                    width: 30,
                                    height: 45,
                                    popupOptions: {
                                        offset: {
                                            bottom: [0, -20]
                                        },
                                        openPopup: false,
                                    },
                                    /* offset:[0,0] */
                                },
                            },
                        ]
                    }
                    tracking_plugin = mappls.tracking(tracking_option, function(data) {
                        data1 = data;
                    });
                });

                map.on('click', function(e) {
                    var user = [e.lngLat.lng, e.lngLat.lat];
                    data1.trackingCall({
                        location: user,
                        reRoute: true,
                        heading: true,
                        mapCenter: false,
                        buffer: 50,
                        delay: 3000,
                        fitBounds: false,
                        fitboundsOptions: {
                            padding: 80
                        },
                        callback: function(data) {
                            console.log(data)
                        }
                    });
                });
            }
        </script>
        </body>
  </html>

Call at Mappls
Request Call Back

Personalisation SDK, by Mappls, is India's first O2O engagement tool that can 3X your customer engagement, retention and conversion.

There's so much that Mappls MapmyIndia can do for your enterprise or individual requirements. Explore our website to learn more or request a callback/email if you'd like us to connect with you.

or