1

Скрипт для сбора данных.

(04/02/2019 16:21:15 отредактировано Su.Artem)

Тема: Скрипт для сбора данных.

Необходимо создать скрипт для сбора определенных данных. С помощью следующего скрипта нахожу координаты.

var map, marker; 
function msg(text) { $("#log").prepend(text + "<br/>"); }
function init() { 
    var sess = wialon.core.Session.getInstance();
    var flags = wialon.item.Item.dataFlag.base | wialon.item.Unit.dataFlag.lastMessage;

    sess.loadLibrary("itemIcon"); 
    sess.updateDataFlags( 
        [{type: "type", data: "avl_unit", flags: flags,mode: 0}], 
        function (code) { 
            if (code) { msg(wialon.core.Errors.getErrorText(code)); return; }             
            var units = sess.getItems("avl_unit"); 
            if (!units || !units.length){ msg("No units found"); return; } 
            for (var i = 0; i< units.length; i++) 
                $("#units").append("<option value='"+ units[i].getId() +"'>"+ units[i].getName()+"</option>");
            $("#units").change( showUnit );
    });
}


function showUnit(){ 
    var val = $("#units").val(); 
    if(!val) return; 
    var unit = wialon.core.Session.getInstance().getItem(val); 
    if(!unit) return; 
    var pos = unit.getPosition(); 
    if(!pos) return;  
    msg("<img src='"+ unit.getIconUrl(32) +"'/> " + unit.getName()+" selected. Position "+"  "+"Lat="+ pos.x+"   Lon="+pos.y+"   Id="+unit.getId());
}
$(document).ready(function () {
      wialon.core.Session.getInstance().initSession("https://hst-api.wialon.com"); 
wialon.core.Session.getInstance().loginToken("5dce19710a5e26ab8b7b8986cb3c49e58C291791B7F0A7AEB8AFBFCEED7DC03BC48FF5F8", "",
        function (code) {       
            if (code){ msg(wialon.core.Errors.getErrorText(code)); return; }
            msg("Logged successfully");
      msg(["id", "lat", "lon"]);
            init(); 
    });
  
});

Не могли бы объяснить какие переменные (и их  источник) необходимо использовать что бы можно было таким же образом найти скорость, id, высоту, tsp с последнего сообщения трекера.

2

Скрипт для сбора данных.

(04/02/2019 16:34:31 отредактировано RedRock)

Re: Скрипт для сбора данных.

Вам видимо сюда.
https://sdk.wialon.com/api/index.html#wialon.item.Unit
Не силен в JS, но вам возможно поможет:
http://qaru.site/questions/10730/how-ca … ipt-object

FFA0-0BBB-8911-15BB

https://www.reg.ru
3

Скрипт для сбора данных.

(08/02/2019 15:30:14 отредактировано Diana)

Re: Скрипт для сбора данных.

Su.Artem пишет:

Необходимо создать скрипт для сбора определенных данных. С помощью следующего скрипта нахожу координаты.

var map, marker; 
function msg(text) { $("#log").prepend(text + "<br/>"); }
function init() { 
    var sess = wialon.core.Session.getInstance();
    var flags = wialon.item.Item.dataFlag.base | wialon.item.Unit.dataFlag.lastMessage;

    sess.loadLibrary("itemIcon"); 
    sess.updateDataFlags( 
        [{type: "type", data: "avl_unit", flags: flags,mode: 0}], 
        function (code) { 
            if (code) { msg(wialon.core.Errors.getErrorText(code)); return; }             
            var units = sess.getItems("avl_unit"); 
            if (!units || !units.length){ msg("No units found"); return; } 
            for (var i = 0; i< units.length; i++) 
                $("#units").append("<option value='"+ units[i].getId() +"'>"+ units[i].getName()+"</option>");
            $("#units").change( showUnit );
    });
}


function showUnit(){ 
    var val = $("#units").val(); 
    if(!val) return; 
    var unit = wialon.core.Session.getInstance().getItem(val); 
    if(!unit) return; 
    var pos = unit.getPosition(); 
    if(!pos) return;  
    msg("<img src='"+ unit.getIconUrl(32) +"'/> " + unit.getName()+" selected. Position "+"  "+"Lat="+ pos.x+"   Lon="+pos.y+"   Id="+unit.getId());
}
$(document).ready(function () {
      wialon.core.Session.getInstance().initSession("https://hst-api.wialon.com"); 
wialon.core.Session.getInstance().loginToken("5dce19710a5e26ab8b7b8986cb3c49e58C291791B7F0A7AEB8AFBFCEED7DC03BC48FF5F8", "",
        function (code) {       
            if (code){ msg(wialon.core.Errors.getErrorText(code)); return; }
            msg("Logged successfully");
      msg(["id", "lat", "lon"]);
            init(); 
    });
  
});

Не могли бы объяснить какие переменные (и их  источник) необходимо использовать что бы можно было таким же образом найти скорость, id, высоту, tsp с последнего сообщения трекера.

Параметры для последнего сообщения см здесь , к примеру, в вашем коде будет pos.s - скорость, pos.z - высота  и т.д

касательно id - чего именно? сообщения, объекта ?

Diana Cheley
Wialon Hosting Expert
Gurtam
4

Скрипт для сбора данных.

(11/02/2019 14:07:13 отредактировано Su.Artem)

Re: Скрипт для сбора данных.

Мне необходимо вытащить параметры следующего вида.
[
{
"id": "1",  //Уникальный id объекта
"dev": "3520-080-9143_6268", //Уникальный идентификатор локатора
"lat": 52.17237393, //Широта, взятая от передатчика GPS
"lon": 21.1941930753, //Долгота, взятая от передатчика GPS
"tsp": 1539186656000000, //Отметка времени, содержащая дату и время, полученные от передатчика GPS, связанные с географическим положением записи
"alt": 108.96,  //Высота, полученная от передатчика GPS
"acc": 24.0,  //Точность определения местоположения от передатчика GPS
"brg": 1.0,  //  Азимут
"spd": 1.0  // Скорость движения, взятая с GPS-передатчика
},
{"id": "2",
"dev": "3520-080-9143_6267"
,"lat": 51.17237393,
"lon": 20.1941930753,
"tsp": 1539186676000000,
"alt": 8.96,
"acc": 2.0,
"brg": 360.0,
"spd": 10.0
}
]
Соответственно мне нужно для нескольких объектов. Переменные можно не все.