По возникающей периодически(раз в месяц) производственной необходимости снимать показания приборов учета эл. энергии была разработана программа для комплексного сбора данных со всех объектов в зоне ответственности
метод запроса информации:
activeP = undefined;
month_curr=undefined;
month_last=undefined;
request_counter_activeP = undefined;
request_counter_month_last = undefined;
html = rtps_ip + get_account_password(rtps_ip)
request_counter_activeP = http_get(html);
trace("отправлен запрос = ", html);
html = string_replace(html, "/electric_meter/", "/electric_meter/energy/")
request_counter_month_last= http_get(html);
trace("отправлен запрос = ", html);
Получение ответа:
/// @description получение ответа показаний счётчиков
//Site: MidaDev.ru
//Author: Dimusikus
//EMail: Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.
//
if ds_map_find_value(async_load, "id") == request_counter_activeP
{
if ds_map_find_value(async_load, "status") == 0
{
r_str = ds_map_find_value(async_load, "result");
//trace(r_str);
if string_pos("Гостевой вход", r_str) then {trace(rtps_city, " = ", "просит гостевой вход"); return; };
//activeP
activeP = string_get_teg(r_str, "По сумме тарифов</td><t");
if !is_undefined(activeP) then activeP = round(activeP);
trace(activeP);
}
}
if ds_map_find_value(async_load, "id") == request_counter_month_last
{
if ds_map_find_value(async_load, "status") == 0
{
r_str = ds_map_find_value(async_load, "result");
//trace(r_str);
if string_pos("Гостевой вход", r_str) then {trace(rtps_city, " = ", "просит гостевой вход"); return; };
month_curr = string_get_teg(r_str, get_string_month(current_month) + "</b></td><t");
month_last = string_get_teg(r_str, get_string_month(current_month-1) + "</b></td><t");
if !is_undefined(month_curr) then month_curr = round(month_curr);
if !is_undefined(month_last) then month_last = round(month_last);
//activeP = string_get_teg(r_str, "По сумме тарифов</td><t");
//trace(activeP);
}
}