跳到主要内容

设备分组

更新时间:2026-06-16 17:21:46
// 导入头文件
import 'package:airtc_engine/src/device_center/rtcx_device_group.dart';

对用户下的设备进行分组管理

class RTCXFluDeviceGroupApi {
/// 创建设备分组
@async
RTCXFluGroupResult groupCreate(RTCXFluGroupCreateReq req);

/// 删除设备分组
@async
RTCXFluGroupResult groupDelete(RTCXFluGroupDeleteReq req);

/// 更新设备分组信息
@async
RTCXFluGroupResult groupUpdate(RTCXFluGroupUpdateReq req);

/// 设备分组列表
@async
RTCXFluGroupListRsp groupList(RTCXFluGroupListReq req);

/// 添加设备到分组
@async
RTCXFluGroupResult groupAddDevice(RTCXFluGroupAddDeviceReq req);

/// 分组中删除设备
@async
RTCXFluGroupResult groupDeleteDevice(RTCXFluGroupDeleteDeviceReq req);
}
// 设备分组api
final RTCXFluDeviceGroupApi deviceGroupApi = RTCXFluDeviceGroupApi();

使用RTCXFluDeviceGroupApi调用示例如下:

创建设备分组

void groupCreate() {
RTCXFluGroupCreateReq req = RTCXFluGroupCreateReq(
name: "分组名称",
);
deviceGroupApi
.groupCreate(req)
.then((result) {
print("groupCreate result:$result");
})
.catchError((err) {
print("groupCreate catchError:$err");
});
}

删除设备分组

void groupDelete(int groupId) {
RTCXFluGroupDeleteReq req = RTCXFluGroupDeleteReq(groupId: groupId);
deviceGroupApi
.groupDelete(req)
.then((result) {
print("groupDelete result:${result.result}");
})
.catchError((err) {
print("groupDelete catchError:$err");
});
}

更新设备分组信息

void groupUpdate(int groupId) {
RTCXFluGroupUpdateReq req = RTCXFluGroupUpdateReq(
groupId: groupId,
name: "更改后的名字",
);
deviceGroupApi
.groupUpdate(req)
.then((result) {
print("groupUpdate result:$result");
})
.catchError((err) {
print("groupUpdate catchError:$err");
});
}

设备分组列表

void getGroupList() {
RTCXFluGroupListReq req = RTCXFluGroupListReq(pageNo: 1, pageSize: 20);
print("getGroupList");

deviceGroupApi
.groupList(req)
.then((RTCXFluGroupListRsp data) {
if (data.items != null) {
groupInfoItems = data.items!;
}
setState(() {});
})
.catchError((err) {
print("getGroupList catchError:$err");
});
}

添加设备到分组

void addDeviceToGroup(int groupId, List<String> iotIdList) {
RTCXFluGroupAddDeviceReq req = RTCXFluGroupAddDeviceReq(groupId: groupId, iotIdList: iotIdList);
deviceGroupApi
.groupAddDevice(req)
.then((result) {
print("groupAddDevice result:$result");
})
.catchError((err) {
print("groupAddDevice catchError:$err");
});
}

分组中删除设备

void deleteDeviceFromGroup(int groupId, List<String> iotIdList) {
RTCXFluGroupDeleteDeviceReq req = RTCXFluGroupDeleteDeviceReq(groupId: groupId, iotIdList: iotIdList);
deviceGroupApi
.groupDeleteDevice(req)
.then((result) {
print("groupDeleteDevice result:$result");
})
.catchError((err) {
print("groupDeleteDevice catchError:$err");
});
}