getHumanTracking method
获取设备人形跟踪
Implementation
Future<bool> getHumanTracking(
{int timeout = 5, HumanTrackCallBack? humanTrackCallBack}) async {
bool ret = await _command
.writeCgi("trans_cmd_string.cgi?cmd=2127&command=1&", 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=2127;") && str.contains("command=1;");
}
return false;
}, timeout);
_command.removeCallback(24785);
_command.addCallback(24785, (cmd, result) {
Map data = result.getMap();
if (data.containsKey("track_status")) {
if (humanTrackCallBack != null) {
humanTrackStatus = int.tryParse(data["track_status"] ?? "0") ?? 0;
humanTrackCallBack(humanTrackStatus);
}
}
});
if (result.isSuccess == true) {
Map data = result.getMap();
humanTrackingEnable = int.tryParse(data["enable"] ?? "0") ?? 0;
humanTrackStatus = int.tryParse(data["track_status"] ?? "0") ?? 0;
return data["result"] == "0";
}
}
return false;
}