parseMemberEventData function

PresenceMember? parseMemberEventData(
  1. String data
)

Implementation

PresenceMember? parseMemberEventData(String data) {
  if (!_isBoundedPresenceFrame(data)) return null;
  Object? parsed;
  try {
    parsed = jsonDecode(data);
  } on FormatException {
    return null;
  }
  if (parsed is! Map<String, dynamic>) return null;
  final userId = parsed['user_id'];
  if (userId is! String || userId.isEmpty) return null;
  final userInfo = parsed['user_info'];
  return PresenceMember(
    userId: userId,
    userInfo: userInfo is Map<String, dynamic> ? userInfo : const {},
  );
}