Skip to main content
This page lists the types the SDK exposes publicly. All field names are given as Swift property names.

Request parameters

MeetingCreateReq

Parameters for creating / updating a meeting. To construct:

MeetingEnterReq

Parameters for entering a meeting. To construct:

PageParam

ResourceListReq

ResourceCreateReq

Layout and recording parameters

McuStartReq, LayoutData, Watermark, Tag, Cell, DivList, and Attachment all provide initializers whose optional parameters have default values; they’re also Codable, so you can decode them from JSON delivered by your backend with JSONDecoder. For the mapping between fields and JSON keys, see Recording and composite layout.

Meeting and member info

RoomInfo

Room info of the current meeting, returned by getRoomInfo().

MeetingUserInfo

In-meeting member info, returned by getUserInfo(_:) / getUsersInfo() / getUsersInfoList().

MeetingInfo

Meeting details, returned by detailRoom(...), attendeeRoom(...), and attendedRoom(...).

ParticipantInfo

Attendance record, returned by roomParticipant(...).

OnlineMemberInfo

An online member, returned by adminListOnlineMember(...): userId, nickname, deviceType, joinAt.

NoEnterUserInfo

An invitee who hasn’t entered the meeting, returned by meetNotEnter(): id, nickname, mobile, avatar, role, relUid.

WaitingRoomUserInfo

A member in the waiting room, returned by adminWaitingRoomUsers(): userId, name, avatar, at.

SubMeetingInfo / SubMeetingUser

Sub-meeting info, returned by adminSubMeetingList(...).

AgentInfo

A device that can be invited, returned by agentList(...): id, name, type (AgentType), status (AgentStatus), contact, remark.

ResourceInfo

A resource, returned by resourcesList(...).

SignInfo / SignDetailInfo

Sign-in activities and sign-in details.

McuRecordConfig / McuRecordDetail

MeetingToken

The parsed contents of the login token. You usually don’t need it—the token is issued by your backend, and you just pass it to login(token:). If you need to check on the client in advance whether the token has expired, you can:

Pagination

PageResult

MetaRes: totalCount, pageCount, currentPage, perPage.

Event data types

Connection and members

Room state

Messages

Host commands and raise hand

Waiting room and sub-meetings

Sign-in, roll call, and devices

Out-of-meeting messages

All out-of-meeting message event data consists of two parts: base and content.

Enums

TrackDesc

Role

MicState / CameraState

ShareType

HandupType

UserHandupStep

ChatMsgType

MeetingType

MeetingMode

MeetingStatus

AttendType

EndType

EntryMutePolicy

MeetingStreamVendor

ook has been retired along with the server (2026-08) and is kept only for compatibility with existing deployments; don’t use it for new integrations. If you’re not sure which one to use, don’t pass it, and let the server decide based on the deployment configuration.

UserType

McuTaskType

McuTaskStatus

LayoutType

AgentType

AgentStatus

PresignedPutObjectType


Types from SRTC

The following types are defined in the underlying SRTC module and require import SRTC to use: LogLevel, CameraPreset, MicPreset, ScreenPreset, DeviceInfo, DisconnectReason, SRTCVideoView, SRTCVideoRenderer, ScreenCaptureSources, DisplaySource, WindowSource, LocalCameraTrack, LocalScreenTrack, RemoteVideoTrack, Track, SRTCBroadcastPicker. NativeVideoView is an alias SMeeting defines for the render view; its actual type is SRTCVideoRenderer.

Audio routing (iOS)

For why there are only two switchable states, see Audio routing.

Call quality

For value ranges and usage of the fields, see SRTC · Call quality and active speakers.

Receive stream status

Delivered by meeting(_:didChangeReceiveStreamStatus:), it determines per track whether a video track is still producing frames, which is a different matter from the quality tier of the whole connection; see Events.