setAlarmCustomeZone method
设置侦测区域
Implementation
Future<bool> setAlarmCustomeZone(
{required List records,
required int command,
int timeout = 5,
int sensor = 0}) async {
String reignString = "md_";
switch (command) {
case 0: //CustomAreaType_MoveDetect 设置移动侦测区域
reignString = "md_";
break;
case 2: //CustomAreaType_HumanDetect 设置人形侦测区域
reignString = "pd_";
break;
case 4: //CustomAreaType_OffDuty 设置离岗侦测区域
reignString = "depart_";
break;
case 6: //CustomAreaType_FaceDetect 设置人脸侦测区域
reignString = "face_detect_";
break;
case 8: //CustomAreaType_FaceDiscernment 设置人脸识别区域
reignString = "face_recognition_";
break;
default:
break;
}
bool ret = await writeCgi(
"trans_cmd_string.cgi?cmd=2123&command=$command&sensor=${sensor}&"
"${reignString}reign0=${records[0]}&"
"${reignString}reign1=${records[1]}&"
"${reignString}reign2=${records[2]}&"
"${reignString}reign3=${records[3]}&"
"${reignString}reign4=${records[4]}&"
"${reignString}reign5=${records[5]}&"
"${reignString}reign6=${records[6]}&"
"${reignString}reign7=${records[7]}&"
"${reignString}reign8=${records[8]}&"
"${reignString}reign9=${records[9]}&"
"${reignString}reign10=${records[10]}&"
"${reignString}reign11=${records[11]}&"
"${reignString}reign12=${records[12]}&"
"${reignString}reign13=${records[13]}&"
"${reignString}reign14=${records[14]}&"
"${reignString}reign15=${records[15]}&"
"${reignString}reign16=${records[16]}&"
"${reignString}reign17=${records[17]}&",
timeout: timeout);
if (ret) {
CommandResult result = await waitCommandResult((int cmd, Uint8List data) {
if (cmd == 24785) {
String str = utf8.decode(data);
return str.contains("cmd=2123;") && str.contains("command=$command;");
}
return false;
}, timeout);
if (result.isSuccess) {
Map data = result.getMap();
if (data["status"] == "0" || data["result"] == "0") {
return true;
}
}
}
return false;
}