Документация для версии Авто-Интеллект 6.1. Документация на другие версии также доступна.

Предыдущая страница Общие сведения о скриптах  Приложение 3. Процедуры для взаимодействия БД Авто-Интеллект с ПО для выписки штрафов Следующая страница


В ПК Авто-Интеллект часто используются следующие скрипты.

№п/п

Назначение скрипта

Скрипт

1

Запуск программного модуля Авто-УРАГАН

if(Event.SourceType == "MACRO" && Event.SourceId == "1" && Event.Action == "RUN"){

DoReactStr("ULPR","1","START","");

}

2

Завершение работы программного модуля Авто-УРАГАН

if(Event.SourceType == "MACRO" && Event.SourceId == "1" && Event.Action == "RUN"){

DoReactStr("ULPR","1","STOP","");

}

3

Вызов окна запроса оператора по результатам найденного во внешней БД распознанного номера ТС

if(Event.SourceType == "LPRDB" && Event.SourceId == "1" && Event.Action == "SEARCH_RESULT")

{

DoReactStr("ULPR","1","STOP","");

var msg=Event.Clone();

var m=msg.GetParam("comment");

var d=msg.GetParam("date");

var number=msg.GetParam("column.0.value");

DoReactStr("DIALOG","black_list","RUN","param0<"+number+">,column.4.value<"+m+">,date<"+d+">");

}

4

Конвертация видеоролика с записью ТС, номер которого распознан, в формат AVI

function printDate(temp)

{

    var dateStr = padStr(temp.getDate())+"-"+

                  padStr(temp.getMonth()) +"-"+

                  padStr(temp.getFullYear()) +" "+

                  padStr(temp.getHours()) +":"+

                  padStr(temp.getMinutes()) +":"+

                  padStr(temp.getSeconds());

return dateStr;

}

function padStr(i)

{

if(i > 1000)

{

var temp = ""+i;

temp = temp.substr(2,2);

return  temp;

}

    return (i < 10) ? "0" + i : "" + i;

}

if(Event.Action == "NUMBER_DETECTED" && Event.SourceType=="ULPR" && Event.SourceId=="1")

{

var plate = Event.GetParam("plate");

debugger;

if(plate == "о270са99")

//if(Event.Action == "RUN" && Event.SourceType=="MACRO" && Event.SourceId=="1")

{

DoReactStr("CAM","1","REC_STOP","");

DoReactStr("CAM","1","REC","delay<500>");

var time = Event.GetParam("time");

var date = Event.GetParam("date");

var tArr = time.split(":");

var dArr = date.split("-");

var shift = new Date("20"+dArr[2],dArr[1],dArr[0],tArr[0],tArr[1], tArr[2]);

shift.setSeconds(shift.getSeconds()+30);

var time1 = printDate(shift);

var filename = date+"_"+time+".avi";

filename = filename.replace(/:/g,"_");

filename = filename.replace(/-/g,"_");

var oShell = new ActiveXObject("Shell.Application");

var commandtoRun = "C:\\Program Files (x86)\\Интеллект\\Tools\\Converter.exe";

var arguments = "\"c:\\backup\\"+filename+"\",\"1\",\" "+date+" "+time+"\",\" "+time1+"\"";

DebugLogString(arguments);

oShell.ShellExecute(commandtoRun,arguments,"","open","1");

}

}

5

Поднятие шлагбаума 

if(Event.SourceType == "LPRDB" && Event.SourceId == "1" && Event.Action == "SEARCH_RESULT")

{

DoReactStr("GRELE","1","ON","");

Sleep(5000);

DoReactStr("GRELE","1","OFF","");

}

6

Создание события о проезде, информация отображается в Оперативном мониторе и идет в БД:

  1. Вызов без параметров − выдается пустой результат с неопределенным номером;
  2. Вызов с параметром plate − выдается результат с номером. Если не указаны координаты номера (plate_left, plate_top, plate_right,plate_bottom), то кадр будет взят полностью;
  3. Вызов с любыми параметрами из БД, которые отображаются в оперативном мониторе. например, plate_left, plate_top, plate_right, plate_bottom − координаты номера, confidence − достоверность, direction −  направление, hazard_class − класс опасности.
  1. DoReactStr("ULPR","1","CREATE_EVENT","");                               
  2. DoReactStr("ULPR","1","CREATE_EVENT","plate<A777AA777>");
  3. DoReactStr("ULPR","1","CREATE_EVENT","plate<A777AA777>,plate_left<200>,plate_top<200>,plate_right<300>,
    plate_bottom<300>,confidence<15>,direction<2>,hazard_class<Очень опасно>");
  • No labels