getAiDetectPlan method
Implementation
Future<bool> getAiDetectPlan(int type, {int timeout = 5}) async {
bool ret = await _command.writeCgi(
"trans_cmd_string.cgi?cmd=2017&command=11&mark=1&type=$type&",
timeout: timeout);
if (ret) {
CommandResult result =
await _command.waitCommandResult((int cmd, Uint8List data) {
if (cmd == 24785) {
String str = utf8.decode(data);
return str.contains("cmd=2017;") &&
str.contains("command=11;") &&
str.contains("type=$type;");
}
return false;
}, timeout);
if (result.isSuccess) {
Map data = result.getMap();
print('==>>获取到AI检测类型:${type}的结果:${data}');
if (type == 12) {
//获取火计划
if (data.containsKey("fire_plan_enable")) {
firePlanData = data;
}
} else if (type == 14) {
//获取区域入侵计划
if (data.containsKey("region_entry_plan_enable")) {
areaIntrusionPlanData = data;
}
} else if (type == 15) {
//获取人逗留计划
if (data.containsKey("person_stay_plan_enable")) {
personStayPlanData = data;
}
} else if (type == 16) {
//获取车违停计划
if (data.containsKey("car_stay_plan_enable")) {
illegalParkingPlanData = data;
}
} else if (type == 17) {
//获取越线检测计划
if (data.containsKey("line_cross_plan_enable")) {
crossBorderPlanData = data;
}
} else if (type == 18) {
//获取离岗检测计划
if (data.containsKey("person_onduty_plan_enable")) {
offPostMonitorPlanData = data;
}
} else if (type == 19) {
//获取车辆逆行计划
if (data.containsKey("car_retrograde_plan_enable")) {
carRetrogradePlanData = data;
}
} else if (type == 20) {
//包裹计划
if (data.containsKey("package_detect_plan_enable")) {
packageDetectPlanData = data;
}
}
return data["result"] == "0";
}
}
return false;
}