fetchLoggedInDevices method

Future<List<EMDeviceInfo>> fetchLoggedInDevices(
  1. {required String userId,
  2. required String pwdOrToken,
  3. bool isPwd = true}
)

获取指定账号下登录的在线设备列表。

Param userId 用户 ID。

Param pwdOrToken 密码或者 token。

Param isPwd 是否使用密码或 token:(默认)true:使用密码;false:使用 token。

Return 获取到到设备列表。

Throws 如果有异常会在这里抛出,包含错误码和错误描述,详见 EMError

Implementation

Future<List<EMDeviceInfo>> fetchLoggedInDevices({
  required String userId,
  required String pwdOrToken,
  bool isPwd = true,
}) async {
  Map req = {'username': userId, 'password': pwdOrToken, 'isPwd': isPwd};
  Map result = await ClientChannel.invokeMethod(
      ChatMethodKeys.getLoggedInDevicesFromServer, req);
  try {
    EMError.hasErrorFromResult(result);
    List<EMDeviceInfo> list = [];
    result[ChatMethodKeys.getLoggedInDevicesFromServer]?.forEach((info) {
      list.add(EMDeviceInfo.fromJson(info));
    });
    return list;
  } on EMError catch (e) {
    throw e;
  }
}