Topic: JS API: Getting Geofences
hello developers, 
 how i can get user geo zone options?
New account creation is currently unavailable. Existing members can continue reading and joining discussions.
hello developers, 
 how i can get user geo zone options?
wialon.core.Session.getInstance().loadLibrary("resourceZones");            
            var spec = [{type: "type", 
                    data: "avl_resource",                     
                    flags: wialon.item.Item.dataFlag.base | wialon.item.Resource.dataFlag.zones,
                    mode: 0}];                        
            wialon.core.Session.getInstance().updateDataFlags(spec,function (code) {
                if (code != 0) {                            
                    alert(wialon.core.Errors.getErrorText(code));
                    return;
                }                
                var resources =  wialon.core.Session.getInstance().getItems("avl_resource");  
                if(resources && resources[0]) {
                    var zones = resources[0].getZones();
                    for( var i in zones) {
                        console.log(zones[i]);
                    }
                }
            });
http://docs.gurtam.com/en/hosting/sdk/w … pdate_zone
http://docs.gurtam.com/en/hosting/sdk/w … _zone_data
thanks your answers is very helpful ![]()
http://docs.gurtam.com/en/hosting/sdk/w … _zone_data
здесь есть параметр "w" в котором должно приходить значение радиуса в метрах, но в JS API полученных этим кодом:
wialon.core.Session.getInstance().loadLibrary("resourceZones");            
            var spec = [{type: "type", 
                    data: "avl_resource",                     
                    flags: wialon.item.Item.dataFlag.base | wialon.item.Resource.dataFlag.zones,
                    mode: 0}];                        
            wialon.core.Session.getInstance().updateDataFlags(spec,function (code) {
                if (code != 0) {                            
                    alert(wialon.core.Errors.getErrorText(code));
                    return;
                }                
                var resources =  wialon.core.Session.getInstance().getItems("avl_resource");  
                if(resources && resources[0]) {
                    var zones = resources[0].getZones();
                    for( var i in zones) {
                        console.log(zones[i]);
                    }
                }
            });
среи параметров нет никакого "w"... В консоли приходит только это:
Object
b: Object
d: ""
e: 31470
f: 0
id: 1
n: "Геозона"
t: 3
__proto__: Object
Как видно "w" отсутвует, как ее вывести?
Метод getZones возвращает объекты с неполным набором свойств, для того чтобы получить объект со всеми свойствами вам нужно использовать getZonesData(arrayOfZonesIds, callback)
wialon.core.Session.getInstance().loadLibrary("resourceZones");            
            var spec = [{type: "type", 
                    data: "avl_resource",                     
                    flags: wialon.item.Item.dataFlag.base | wialon.item.Resource.dataFlag.zones,
                    mode: 0}];                        
            wialon.core.Session.getInstance().updateDataFlags(spec,function (code) {
                if (code != 0) {                            
                    alert(wialon.core.Errors.getErrorText(code));
                    return;
                }                
                var resources =  wialon.core.Session.getInstance().getItems("avl_resource");  
                if(resources && resources[0]) {                    
                    var zones = [];                    
                    for( var i in resources[0].getZones()) {
                        zones.push(resources[0].getZones()[i].id);                        
                    }
                    resources[0].getZonesData(zones, function(code, col) {
                        if (code != 0) {                            
                            alert(wialon.core.Errors.getErrorText(code));
                            return;
                         }
                        for(var i=0; i<col.length; i++)
                            console.log(col[i]);                        
                    });
                }
            });
hello ,
you can use the following example
https://sdk.wialon.com/playground/demo/get_geofences