FMLiveSwitchMessage Class Reference

A message. More...

Instance Methods

(NSString *) - apiServiceId
 Gets the API Service identifier. More...
 
(NSString *) - apiVersion
 Gets the API Version. More...
 
(NSString *) - applicationId
 Gets the application identifier. More...
 
(NSString *) - channelId
 Gets the channel identifier. More...
 
(NSMutableArray *) - channelReports
 Gets the channel reports. More...
 
(NSString *) - clientId
 Gets the client identifier. More...
 
(NSString *) - clientProtocol
 Gets the client protocol. More...
 
(NSMutableArray *) - clientReports
 Gets the client reports. More...
 
(NSMutableArray *) - clientRoles
 Gets the client roles. More...
 
(NSString *) - clientTag
 Gets the client tag. More...
 
(FMLiveSwitchMessage *) - clone
 Creates a copy of the Message. More...
 
(NSString *) - connectionId
 Gets the connection identifier. More...
 
(FMLiveSwitchNullableInt *) - connectionLayoutPriority
 Gets the connection LayoutPriority. More...
 
(NSString *) - connectionLayoutZone
 Gets the connection LayoutZone. More...
 
(NSString *) - connectionTag
 Gets the connection tag. More...
 
(NSString *) - connectionType
 Gets the connection type. More...
 
(NSString *) - connectorId
 Gets the Connector identifer. More...
 
(NSString *) - deviceAlias
 Gets the device alias. More...
 
(NSString *) - deviceId
 Gets the device identifier. More...
 
(NSString *) - iceServers
 Gets the payload. More...
 
(bool) - isErrorWithErrorType:
 Gets whether this message is an error of a particular type. More...
 
(bool) - isHiddenObserver
 Gets if the offerer is a hidden observer. More...
 
(NSString *) - mediaId
 Gets the broadcast identifier. More...
 
(NSString *) - mediaServerId
 Gets the Media Server identifier. More...
 
(bool) - noHostCandidates
 Gets the value indicating whether the client should avoid using local host ICE candidates. More...
 
(NSString *) - payload
 Gets the payload. More...
 
(NSString *) - preferredMediaServerId
 Gets the preferred Media Server identifier. More...
 
(NSString *) - preferredWebSocketMediaServerId
 Gets the preferred WebSocket Media Server identifier. More...
 
(NSString *) - recordingMonitorId
 Gets the Recording Monitor identifer. More...
 
(NSString *) - recordingMoverId
 Gets the Recording Mover identifer. More...
 
(NSString *) - recordingMuxerId
 Gets the Recording Muxer identifer. More...
 
(NSString *) - region
 Gets the region. More...
 
(NSString *) - remoteClientId
 Gets the remote client identifier. More...
 
(NSString *) - remoteConnectionId
 Gets the remote connection identifier. More...
 
(NSString *) - remoteDeviceId
 Gets the remote device identifier. More...
 
(NSString *) - remoteMediaId
 Gets the remote broadcast identifier. More...
 
(NSString *) - remoteUserId
 Gets the remote user identifier. More...
 
(bool) - requestIceServers
 Gets the value indicating whether ICE Servers have been requested. More...
 
(void) - setApiServiceId:
 Sets the API Service identifier. More...
 
(void) - setApiVersion:
 Sets the API Version. More...
 
(void) - setApplicationId:
 Sets the application identifier. More...
 
(void) - setChannelId:
 Sets the channel identifier. More...
 
(void) - setChannelReports:
 Sets the channel reports. More...
 
(void) - setClientId:
 Sets the client identifier. More...
 
(void) - setClientProtocol:
 Sets the client protocol. More...
 
(void) - setClientReports:
 Sets the client reports. More...
 
(void) - setClientRoles:
 Sets the client roles. More...
 
(void) - setClientTag:
 Sets the client tag. More...
 
(void) - setConnectionId:
 Sets the connection identifier. More...
 
(void) - setConnectionLayoutPriority:
 Sets the connection LayoutPriority. More...
 
(void) - setConnectionLayoutZone:
 Sets the connection LayoutZone. More...
 
(void) - setConnectionTag:
 Sets the connection tag. More...
 
(void) - setConnectionType:
 Sets the connection type. More...
 
(void) - setConnectorId:
 Sets the Connector identifer. More...
 
(void) - setDeviceAlias:
 Sets the device alias. More...
 
(void) - setDeviceId:
 Sets the device identifier. More...
 
(void) - setIceServers:
 Sets the payload. More...
 
(void) - setIsHiddenObserver:
 Sets if the offerer is a hidden observer. More...
 
(void) - setMediaId:
 Sets the broadcast identifier. More...
 
(void) - setMediaServerId:
 Sets the Media Server identifier. More...
 
(void) - setNoHostCandidates:
 Sets the value indicating whether the client should avoid using local host ICE candidates. More...
 
(void) - setPayload:
 Sets the payload. More...
 
(void) - setPreferredMediaServerId:
 Sets the preferred Media Server identifier. More...
 
(void) - setPreferredWebSocketMediaServerId:
 Sets the preferred WebSocket Media Server identifier. More...
 
(void) - setRecordingMonitorId:
 Sets the Recording Monitor identifer. More...
 
(void) - setRecordingMoverId:
 Sets the Recording Mover identifer. More...
 
(void) - setRecordingMuxerId:
 Sets the Recording Muxer identifer. More...
 
(void) - setRegion:
 Sets the region. More...
 
(void) - setRemoteClientId:
 Sets the remote client identifier. More...
 
(void) - setRemoteConnectionId:
 Sets the remote connection identifier. More...
 
(void) - setRemoteDeviceId:
 Sets the remote device identifier. More...
 
(void) - setRemoteMediaId:
 Sets the remote broadcast identifier. More...
 
(void) - setRemoteUserId:
 Sets the remote user identifier. More...
 
(void) - setRequestIceServers:
 Sets the value indicating whether ICE Servers have been requested. More...
 
(void) - setTimestamp:
 Sets the message timestamp. More...
 
(void) - setToken:
 Sets the token. More...
 
(void) - setTransactionId:
 Sets the transaction identifier. More...
 
(void) - setType:
 Sets the type. More...
 
(void) - setUserAlias:
 Sets the user alias. More...
 
(void) - setUserId:
 Sets the user identifier. More...
 
(void) - setWebSocketMediaServerId:
 Sets the Media Server identifier. More...
 
(long long) - timestamp
 Gets the message timestamp. More...
 
(NSString *) - toJson
 Serializes this instance to JSON. More...
 
(NSString *) - token
 Gets the token. More...
 
(NSString *) - transactionId
 Gets the transaction identifier. More...
 
(NSString *) - type
 Gets the type. More...
 
(NSString *) - userAlias
 Gets the user alias. More...
 
(NSString *) - userId
 Gets the user identifier. More...
 
(NSString *) - webSocketMediaServerId
 Gets the Media Server identifier. More...
 
- Instance Methods inherited from FMLiveSwitchDynamic
(NSMutableDictionary< NSString *, id > *) - dynamicProperties
 Gets all dynamic properties on this instance. More...
 
(id- getDynamicValueWithKey:
 Gets a property value from the local cache. More...
 
(instancetype) - init
 Initializes a new instance of the FMLiveSwitchSerializable class. More...
 
(void) - setDynamicValueWithKey:value:
 Sets a property value in the local cache. More...
 
(bool) - unsetDynamicValueWithKey:
 Removes a property value from the local cache. More...
 

Class Methods

(FMLiveSwitchMessage *) + createBitrateNotificationMessageWithBitrateNotification:
 Creates a "bitrateNotification" message. More...
 
(FMLiveSwitchMessage *) + createBitrateNotificationMessageWithBitrateNotifications:
 Creates a "bitrateNotification" message. More...
 
(FMLiveSwitchMessage *) + createBitrateRequestMessageWithBitrateRequest:
 Creates a "bitrateRequest" message. More...
 
(FMLiveSwitchMessage *) + createBitrateRequestMessageWithBitrateRequests:
 Creates a "bitrateRequest" message. More...
 
(FMLiveSwitchMessage *) + createCancelInviteMessageWithUserId:protocol:
 Creates a "cancelInvite" message. More...
 
(FMLiveSwitchMessage *) + createCandidateMessageWithCandidateJson:
 Creates a "candidate" message. More...
 
(FMLiveSwitchMessage *) + createCloseMessage
 Creates a "close" message. More...
 
(FMLiveSwitchMessage *) + createDtmfTonesMessageWithDtmfTones:
 Creates a "dtmfTones" message. More...
 
(FMLiveSwitchMessage *) + createErrorMessageWithError:
 Creates a "error" message. More...
 
(FMLiveSwitchMessage *) + createErrorMessageWithError:remoteUserId:remoteDeviceId:remoteClientId:
 Creates a "error" message. More...
 
(FMLiveSwitchMessage *) + createEventMessageWithEventInfoJson:
 Creates an "event" message. More...
 
(FMLiveSwitchMessage *) + createIceServersMessage
 Creates an "iceServers" message. More...
 
(FMLiveSwitchMessage *) + createInviteMessageWithUserId:protocol:
 Creates a "invite" message. More...
 
(FMLiveSwitchMessage *) + createJoinMessageWithChannelId:token:
 Creates a "join" message. More...
 
(FMLiveSwitchMessage *) + createKeyFrameRequestMessageWithSynchronizationSources:
 Creates a "keyFrameRequest" message. More...
 
(FMLiveSwitchMessage *) + createKickMessageWithChannelId:clientId:
 Creates a "kick" message. More...
 
(FMLiveSwitchMessage *) + createKickMessageWithRemoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:
 Creates a "kick" message. More...
 
(FMLiveSwitchMessage *) + createLayoutMessageWithConfigJson:remoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:
 Creates a "layout" message. More...
 
(FMLiveSwitchMessage *) + createLeaveMessageWithChannelId:channelReport:
 Creates a "leave" message. More...
 
(FMLiveSwitchMessage *) + createMcuOfferMessageWithLayoutZone:layoutPriority:tag:offerJson:
 Creates an MCU "offer" message. More...
 
(FMLiveSwitchMessage *) + createMcuOfferMessageWithTag:offerJson:
 Creates an MCU "offer" message. More...
 
(FMLiveSwitchMessage *) + createMessageMessage:
 Creates a "message" message. More...
 
(FMLiveSwitchMessage *) + createMessageMessage:remoteUserId:
 Creates a "message" message. More...
 
(FMLiveSwitchMessage *) + createMessageMessage:remoteUserId:remoteDeviceId:
 Creates a "message" message. More...
 
(FMLiveSwitchMessage *) + createMessageMessage:remoteUserId:remoteDeviceId:remoteClientId:
 Creates a "message" message. More...
 
(FMLiveSwitchMessage *) + createPeerAnswerMessageWithTag:answerJson:remoteUserId:remoteDeviceId:remoteClientId:
 Creates a peer "answer" message. More...
 
(FMLiveSwitchMessage *) + createPeerCandidateMessageWithCandidateJson:remoteUserId:remoteDeviceId:remoteClientId:
 Creates a "candidate" message. More...
 
(FMLiveSwitchMessage *) + createPeerCloseMessageWithRemoteUserId:remoteDeviceId:remoteClientId:
 Creates a "close" message. More...
 
(FMLiveSwitchMessage *) + createPeerOfferMessageWithTag:offerJson:remoteUserId:remoteDeviceId:remoteClientId:
 Creates a peer "offer" message. More...
 
(FMLiveSwitchMessage *) + createPeerRejectMessageWithRemoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:
 Creates a "reject" message. More...
 
(FMLiveSwitchMessage *) + createRegisterMessageWithApplicationId:userId:userAlias:deviceId:deviceAlias:clientId:clientTag:clientRoles:region:token:
 Creates a "register" message. More...
 
(FMLiveSwitchMessage *) + createRtcpDataChannelSignallingActivationMessageWithSupportedMessageTypes:
 Creates a "activateInbandSignalling" message. More...
 
(FMLiveSwitchMessage *) + createSfuOfferMessageWithLayoutZone:layoutPriority:tag:offerJson:
 Creates an SFU upstream "offer" message. More...
 
(FMLiveSwitchMessage *) + createSfuOfferMessageWithTag:offerJson:
 Creates an SFU upstream "offer" message. More...
 
(FMLiveSwitchMessage *) + createSfuOfferMessageWithTag:offerJson:remoteMediaId:
 Creates an SFU downstream "offer" message. More...
 
(FMLiveSwitchMessage *) + createSfuOfferMessageWithTag:offerJson:remoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:
 Creates an SFU downstream "offer" message. More...
 
(FMLiveSwitchMessage *) + createUnregisterMessage
 Creates an "unregister" message. More...
 
(FMLiveSwitchMessage *) + createUnregisterMessageWithClientReport:channelReports:
 Creates an "unregister" message. More...
 
(FMLiveSwitchMessage *) + createUpdateMessageWithConfigJson:
 Creates an "update" message. More...
 
(FMLiveSwitchMessage *) + createUpdateMessageWithConfigJson:remoteUserId:remoteDeviceId:remoteClientId:
 Creates an "update" message. More...
 
(FMLiveSwitchMessage *) + createUpdateMessageWithConfigJson:remoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:
 Creates an "update" message. More...
 
(NSMutableArray *) + fromJsonArrayWithMessagesJson:
 Deserializes an array of instances from JSON. More...
 
(FMLiveSwitchMessage *) + fromJsonWithMessageJson:
 Deserializes an instance from JSON. More...
 
(NSString *) + toJsonArrayWithMessages:
 Serializes an array of instances to JSON. More...
 
(NSString *) + toJsonWithMessage:
 Serializes an instance to JSON. More...
 
(NSString *) + toJsonWithMessage:forceTimestamp:
 Serializes an instance to JSON and forces timestamp regardless of what generates Json. More...
 
- Class Methods inherited from FMLiveSwitchDynamic
(FMLiveSwitchDynamic *) + dynamic
 
- Class Methods inherited from FMLiveSwitchSerializable
(FMLiveSwitchSerializable *) + serializable
 Initializes a new instance of the FMLiveSwitchSerializable class. More...
 

Detailed Description

A message.

Method Documentation

◆ apiServiceId

- (NSString*) apiServiceId

Gets the API Service identifier.

◆ apiVersion

- (NSString*) apiVersion

Gets the API Version.

◆ applicationId

- (NSString*) applicationId

Gets the application identifier.

◆ channelId

- (NSString*) channelId

Gets the channel identifier.

◆ channelReports

- (NSMutableArray*) channelReports

Gets the channel reports.

◆ clientId

- (NSString*) clientId

Gets the client identifier.

◆ clientProtocol

- (NSString*) clientProtocol

Gets the client protocol.

◆ clientReports

- (NSMutableArray*) clientReports

Gets the client reports.

◆ clientRoles

- (NSMutableArray*) clientRoles

Gets the client roles.

◆ clientTag

- (NSString*) clientTag

Gets the client tag.

◆ clone

- (FMLiveSwitchMessage*) clone

Creates a copy of the Message.

◆ connectionId

- (NSString*) connectionId

Gets the connection identifier.

◆ connectionLayoutPriority

- (FMLiveSwitchNullableInt*) connectionLayoutPriority

Gets the connection LayoutPriority.

◆ connectionLayoutZone

- (NSString*) connectionLayoutZone

Gets the connection LayoutZone.

◆ connectionTag

- (NSString*) connectionTag

Gets the connection tag.

◆ connectionType

- (NSString*) connectionType

Gets the connection type.

◆ connectorId

- (NSString*) connectorId

Gets the Connector identifer.

◆ createBitrateNotificationMessageWithBitrateNotification:

+ (FMLiveSwitchMessage*) createBitrateNotificationMessageWithBitrateNotification: (FMLiveSwitchBitrateNotification *)  bitrateNotification

Creates a "bitrateNotification" message.

◆ createBitrateNotificationMessageWithBitrateNotifications:

+ (FMLiveSwitchMessage*) createBitrateNotificationMessageWithBitrateNotifications: (NSMutableArray *)  bitrateNotifications

Creates a "bitrateNotification" message.

◆ createBitrateRequestMessageWithBitrateRequest:

+ (FMLiveSwitchMessage*) createBitrateRequestMessageWithBitrateRequest: (FMLiveSwitchBitrateRequest *)  bitrateRequest

Creates a "bitrateRequest" message.

◆ createBitrateRequestMessageWithBitrateRequests:

+ (FMLiveSwitchMessage*) createBitrateRequestMessageWithBitrateRequests: (NSMutableArray *)  bitrateRequests

Creates a "bitrateRequest" message.

◆ createCancelInviteMessageWithUserId:protocol:

+ (FMLiveSwitchMessage*) createCancelInviteMessageWithUserId: (NSString *)  userId
protocol: (NSString *)  protocol 

Creates a "cancelInvite" message.

◆ createCandidateMessageWithCandidateJson:

+ (FMLiveSwitchMessage*) createCandidateMessageWithCandidateJson: (NSString *)  candidateJson

Creates a "candidate" message.

Parameters
candidateJsonThe candidate.

◆ createCloseMessage

+ (FMLiveSwitchMessage*) createCloseMessage

Creates a "close" message.

◆ createDtmfTonesMessageWithDtmfTones:

+ (FMLiveSwitchMessage*) createDtmfTonesMessageWithDtmfTones: (NSMutableArray *)  dtmfTones

Creates a "dtmfTones" message.

◆ createErrorMessageWithError:

+ (FMLiveSwitchMessage*) createErrorMessageWithError: (NSString *)  error

Creates a "error" message.

Parameters
errorThe error type.

◆ createErrorMessageWithError:remoteUserId:remoteDeviceId:remoteClientId:

+ (FMLiveSwitchMessage*) createErrorMessageWithError: (NSString *)  error
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId 

Creates a "error" message.

Parameters
errorThe error type.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.

◆ createEventMessageWithEventInfoJson:

+ (FMLiveSwitchMessage*) createEventMessageWithEventInfoJson: (NSString *)  eventInfoJson

Creates an "event" message.

◆ createIceServersMessage

+ (FMLiveSwitchMessage*) createIceServersMessage

Creates an "iceServers" message.

◆ createInviteMessageWithUserId:protocol:

+ (FMLiveSwitchMessage*) createInviteMessageWithUserId: (NSString *)  userId
protocol: (NSString *)  protocol 

Creates a "invite" message.

◆ createJoinMessageWithChannelId:token:

+ (FMLiveSwitchMessage*) createJoinMessageWithChannelId: (NSString *)  channelId
token: (NSString *)  token 

Creates a "join" message.

Parameters
channelIdThe channel to join.
tokenThe auth token.

◆ createKeyFrameRequestMessageWithSynchronizationSources:

+ (FMLiveSwitchMessage*) createKeyFrameRequestMessageWithSynchronizationSources: (NSMutableArray *)  synchronizationSources

Creates a "keyFrameRequest" message.

◆ createKickMessageWithChannelId:clientId:

+ (FMLiveSwitchMessage*) createKickMessageWithChannelId: (NSString *)  channelId
clientId: (NSString *)  clientId 

Creates a "kick" message.

Parameters
channelIdThe channel identifier.
clientIdThe ID of the client to kick.

◆ createKickMessageWithRemoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:

+ (FMLiveSwitchMessage*) createKickMessageWithRemoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId
remoteConnectionId: (NSString *)  remoteConnectionId 

Creates a "kick" message.

Parameters
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.
remoteConnectionIdThe remote connection identifier.

◆ createLayoutMessageWithConfigJson:remoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:

+ (FMLiveSwitchMessage*) createLayoutMessageWithConfigJson: (NSString *)  configJson
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId
remoteConnectionId: (NSString *)  remoteConnectionId 

Creates a "layout" message.

Parameters
configJsonThe layout config to send to the server.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.
remoteConnectionIdThe remote connection identifier.

◆ createLeaveMessageWithChannelId:channelReport:

+ (FMLiveSwitchMessage*) createLeaveMessageWithChannelId: (NSString *)  channelId
channelReport: (FMLiveSwitchChannelReport *)  channelReport 

Creates a "leave" message.

Parameters
channelIdThe channel to leave.
channelReportThe channel report.

◆ createMcuOfferMessageWithLayoutZone:layoutPriority:tag:offerJson:

+ (FMLiveSwitchMessage*) createMcuOfferMessageWithLayoutZone: (NSString *)  layoutZone
layoutPriority: (FMLiveSwitchNullableInt *)  layoutPriority
tag: (NSString *)  tag
offerJson: (NSString *)  offerJson 

Creates an MCU "offer" message.

Parameters
tagThe tag
layoutZoneThe connection LayoutZone
layoutPriorityThe connection LayoutPriority
offerJsonThe offer.

◆ createMcuOfferMessageWithTag:offerJson:

+ (FMLiveSwitchMessage*) createMcuOfferMessageWithTag: (NSString *)  tag
offerJson: (NSString *)  offerJson 

Creates an MCU "offer" message.

Parameters
tagThe tag.
offerJsonThe offer.

◆ createMessageMessage:

+ (FMLiveSwitchMessage*) createMessageMessage: (NSString *)  message

Creates a "message" message.

Parameters
messageThe message.

◆ createMessageMessage:remoteUserId:

+ (FMLiveSwitchMessage*) createMessageMessage: (NSString *)  message
remoteUserId: (NSString *)  remoteUserId 

Creates a "message" message.

Parameters
messageThe message.
remoteUserIdThe remote user identifier.

◆ createMessageMessage:remoteUserId:remoteDeviceId:

+ (FMLiveSwitchMessage*) createMessageMessage: (NSString *)  message
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId 

Creates a "message" message.

Parameters
messageThe message.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.

◆ createMessageMessage:remoteUserId:remoteDeviceId:remoteClientId:

+ (FMLiveSwitchMessage*) createMessageMessage: (NSString *)  message
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId 

Creates a "message" message.

Parameters
messageThe message.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.

◆ createPeerAnswerMessageWithTag:answerJson:remoteUserId:remoteDeviceId:remoteClientId:

+ (FMLiveSwitchMessage*) createPeerAnswerMessageWithTag: (NSString *)  tag
answerJson: (NSString *)  answerJson
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId 

Creates a peer "answer" message.

Parameters
tagThe tag.
answerJsonThe answer.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.

◆ createPeerCandidateMessageWithCandidateJson:remoteUserId:remoteDeviceId:remoteClientId:

+ (FMLiveSwitchMessage*) createPeerCandidateMessageWithCandidateJson: (NSString *)  candidateJson
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId 

Creates a "candidate" message.

Parameters
candidateJsonThe candidate.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.

◆ createPeerCloseMessageWithRemoteUserId:remoteDeviceId:remoteClientId:

+ (FMLiveSwitchMessage*) createPeerCloseMessageWithRemoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId 

Creates a "close" message.

Parameters
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.

◆ createPeerOfferMessageWithTag:offerJson:remoteUserId:remoteDeviceId:remoteClientId:

+ (FMLiveSwitchMessage*) createPeerOfferMessageWithTag: (NSString *)  tag
offerJson: (NSString *)  offerJson
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId 

Creates a peer "offer" message.

Parameters
tagThe tag.
offerJsonThe offer.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.

◆ createPeerRejectMessageWithRemoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:

+ (FMLiveSwitchMessage*) createPeerRejectMessageWithRemoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId
remoteConnectionId: (NSString *)  remoteConnectionId 

Creates a "reject" message.

Parameters
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.
remoteConnectionIdThe remote connection identifier.

◆ createRegisterMessageWithApplicationId:userId:userAlias:deviceId:deviceAlias:clientId:clientTag:clientRoles:region:token:

+ (FMLiveSwitchMessage*) createRegisterMessageWithApplicationId: (NSString *)  applicationId
userId: (NSString *)  userId
userAlias: (NSString *)  userAlias
deviceId: (NSString *)  deviceId
deviceAlias: (NSString *)  deviceAlias
clientId: (NSString *)  clientId
clientTag: (NSString *)  clientTag
clientRoles: (NSMutableArray *)  clientRoles
region: (NSString *)  region
token: (NSString *)  token 

Creates a "register" message.

Parameters
applicationIdThe application identifier.
userIdThe user identifier.
userAliasThe user alias.
deviceIdThe device identifier.
deviceAliasThe device alias.
clientIdThe client identifier.
clientTagThe client tag.
clientRolesThe client roles.
regionThe region.
tokenThe auth token.

◆ createRtcpDataChannelSignallingActivationMessageWithSupportedMessageTypes:

+ (FMLiveSwitchMessage*) createRtcpDataChannelSignallingActivationMessageWithSupportedMessageTypes: (FMLiveSwitchRtcpDataChannelSignallingActivation *)  supportedMessageTypes

Creates a "activateInbandSignalling" message.

◆ createSfuOfferMessageWithLayoutZone:layoutPriority:tag:offerJson:

+ (FMLiveSwitchMessage*) createSfuOfferMessageWithLayoutZone: (NSString *)  layoutZone
layoutPriority: (FMLiveSwitchNullableInt *)  layoutPriority
tag: (NSString *)  tag
offerJson: (NSString *)  offerJson 

Creates an SFU upstream "offer" message.

Parameters
tagThe tag
layoutZoneThe connection LayoutZone
layoutPriorityThe connection LayoutPriority
offerJsonThe offer.

◆ createSfuOfferMessageWithTag:offerJson:

+ (FMLiveSwitchMessage*) createSfuOfferMessageWithTag: (NSString *)  tag
offerJson: (NSString *)  offerJson 

Creates an SFU upstream "offer" message.

Parameters
tagThe tag.
offerJsonThe offer.

◆ createSfuOfferMessageWithTag:offerJson:remoteMediaId:

+ (FMLiveSwitchMessage*) createSfuOfferMessageWithTag: (NSString *)  tag
offerJson: (NSString *)  offerJson
remoteMediaId: (NSString *)  remoteMediaId 

Creates an SFU downstream "offer" message.

Parameters
tagThe tag.
offerJsonThe offer.
remoteMediaIdThe remote media identifier.

◆ createSfuOfferMessageWithTag:offerJson:remoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:

+ (FMLiveSwitchMessage*) createSfuOfferMessageWithTag: (NSString *)  tag
offerJson: (NSString *)  offerJson
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId
remoteConnectionId: (NSString *)  remoteConnectionId 

Creates an SFU downstream "offer" message.

Parameters
tagThe tag.
offerJsonThe offer.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.
remoteConnectionIdThe remote connection identifier.

◆ createUnregisterMessage

+ (FMLiveSwitchMessage*) createUnregisterMessage

Creates an "unregister" message.

◆ createUnregisterMessageWithClientReport:channelReports:

+ (FMLiveSwitchMessage*) createUnregisterMessageWithClientReport: (FMLiveSwitchClientReport *)  clientReport
channelReports: (NSMutableArray *)  channelReports 

Creates an "unregister" message.

Parameters
clientReportThe client report.
channelReportsThe channel reports.

◆ createUpdateMessageWithConfigJson:

+ (FMLiveSwitchMessage*) createUpdateMessageWithConfigJson: (NSString *)  configJson

Creates an "update" message.

Parameters
configJsonThe config to send to the server.

◆ createUpdateMessageWithConfigJson:remoteUserId:remoteDeviceId:remoteClientId:

+ (FMLiveSwitchMessage*) createUpdateMessageWithConfigJson: (NSString *)  configJson
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId 

Creates an "update" message.

Parameters
configJsonThe config to send to the server.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.

◆ createUpdateMessageWithConfigJson:remoteUserId:remoteDeviceId:remoteClientId:remoteConnectionId:

+ (FMLiveSwitchMessage*) createUpdateMessageWithConfigJson: (NSString *)  configJson
remoteUserId: (NSString *)  remoteUserId
remoteDeviceId: (NSString *)  remoteDeviceId
remoteClientId: (NSString *)  remoteClientId
remoteConnectionId: (NSString *)  remoteConnectionId 

Creates an "update" message.

Parameters
configJsonThe config to send to the server.
remoteUserIdThe remote user identifier.
remoteDeviceIdThe remote device identifier.
remoteClientIdThe remote client identifier.
remoteConnectionIdThe remote connection identifier.

◆ deviceAlias

- (NSString*) deviceAlias

Gets the device alias.

◆ deviceId

- (NSString*) deviceId

Gets the device identifier.

◆ fromJsonArrayWithMessagesJson:

+ (NSMutableArray*) fromJsonArrayWithMessagesJson: (NSString *)  messagesJson

Deserializes an array of instances from JSON.

Parameters
messagesJsonThe JSON to deserialize.
Returns
The deserialized messages.

◆ fromJsonWithMessageJson:

+ (FMLiveSwitchMessage*) fromJsonWithMessageJson: (NSString *)  messageJson

Deserializes an instance from JSON.

Parameters
messageJsonThe JSON to deserialize.
Returns
The deserialized message.

◆ iceServers

- (NSString*) iceServers

Gets the payload.

◆ isErrorWithErrorType:

- (bool) isErrorWithErrorType: (NSString *)  errorType

Gets whether this message is an error of a particular type.

Parameters
errorTypeThe error type.
Returns
true if this message is an error of the particular type; otherwise, false.

◆ isHiddenObserver

- (bool) isHiddenObserver

Gets if the offerer is a hidden observer.

◆ mediaId

- (NSString*) mediaId

Gets the broadcast identifier.

◆ mediaServerId

- (NSString*) mediaServerId

Gets the Media Server identifier.

◆ noHostCandidates

- (bool) noHostCandidates

Gets the value indicating whether the client should avoid using local host ICE candidates.

Client can override this request.

◆ payload

- (NSString*) payload

Gets the payload.

◆ preferredMediaServerId

- (NSString*) preferredMediaServerId

Gets the preferred Media Server identifier.

◆ preferredWebSocketMediaServerId

- (NSString*) preferredWebSocketMediaServerId

Gets the preferred WebSocket Media Server identifier.

◆ recordingMonitorId

- (NSString*) recordingMonitorId

Gets the Recording Monitor identifer.

◆ recordingMoverId

- (NSString*) recordingMoverId

Gets the Recording Mover identifer.

◆ recordingMuxerId

- (NSString*) recordingMuxerId

Gets the Recording Muxer identifer.

◆ region

- (NSString*) region

Gets the region.

◆ remoteClientId

- (NSString*) remoteClientId

Gets the remote client identifier.

◆ remoteConnectionId

- (NSString*) remoteConnectionId

Gets the remote connection identifier.

◆ remoteDeviceId

- (NSString*) remoteDeviceId

Gets the remote device identifier.

◆ remoteMediaId

- (NSString*) remoteMediaId

Gets the remote broadcast identifier.

◆ remoteUserId

- (NSString*) remoteUserId

Gets the remote user identifier.

◆ requestIceServers

- (bool) requestIceServers

Gets the value indicating whether ICE Servers have been requested.

◆ setApiServiceId:

- (void) setApiServiceId: (NSString *)  value

Sets the API Service identifier.

◆ setApiVersion:

- (void) setApiVersion: (NSString *)  value

Sets the API Version.

◆ setApplicationId:

- (void) setApplicationId: (NSString *)  value

Sets the application identifier.

◆ setChannelId:

- (void) setChannelId: (NSString *)  value

Sets the channel identifier.

◆ setChannelReports:

- (void) setChannelReports: (NSMutableArray *)  value

Sets the channel reports.

◆ setClientId:

- (void) setClientId: (NSString *)  value

Sets the client identifier.

◆ setClientProtocol:

- (void) setClientProtocol: (NSString *)  value

Sets the client protocol.

◆ setClientReports:

- (void) setClientReports: (NSMutableArray *)  value

Sets the client reports.

◆ setClientRoles:

- (void) setClientRoles: (NSMutableArray *)  value

Sets the client roles.

◆ setClientTag:

- (void) setClientTag: (NSString *)  value

Sets the client tag.

◆ setConnectionId:

- (void) setConnectionId: (NSString *)  value

Sets the connection identifier.

◆ setConnectionLayoutPriority:

- (void) setConnectionLayoutPriority: (FMLiveSwitchNullableInt *)  value

Sets the connection LayoutPriority.

◆ setConnectionLayoutZone:

- (void) setConnectionLayoutZone: (NSString *)  value

Sets the connection LayoutZone.

◆ setConnectionTag:

- (void) setConnectionTag: (NSString *)  value

Sets the connection tag.

◆ setConnectionType:

- (void) setConnectionType: (NSString *)  value

Sets the connection type.

◆ setConnectorId:

- (void) setConnectorId: (NSString *)  value

Sets the Connector identifer.

◆ setDeviceAlias:

- (void) setDeviceAlias: (NSString *)  value

Sets the device alias.

◆ setDeviceId:

- (void) setDeviceId: (NSString *)  value

Sets the device identifier.

◆ setIceServers:

- (void) setIceServers: (NSString *)  value

Sets the payload.

◆ setIsHiddenObserver:

- (void) setIsHiddenObserver: (bool)  value

Sets if the offerer is a hidden observer.

◆ setMediaId:

- (void) setMediaId: (NSString *)  value

Sets the broadcast identifier.

◆ setMediaServerId:

- (void) setMediaServerId: (NSString *)  value

Sets the Media Server identifier.

◆ setNoHostCandidates:

- (void) setNoHostCandidates: (bool)  value

Sets the value indicating whether the client should avoid using local host ICE candidates.

Client can override this request.

◆ setPayload:

- (void) setPayload: (NSString *)  value

Sets the payload.

◆ setPreferredMediaServerId:

- (void) setPreferredMediaServerId: (NSString *)  value

Sets the preferred Media Server identifier.

◆ setPreferredWebSocketMediaServerId:

- (void) setPreferredWebSocketMediaServerId: (NSString *)  value

Sets the preferred WebSocket Media Server identifier.

◆ setRecordingMonitorId:

- (void) setRecordingMonitorId: (NSString *)  value

Sets the Recording Monitor identifer.

◆ setRecordingMoverId:

- (void) setRecordingMoverId: (NSString *)  value

Sets the Recording Mover identifer.

◆ setRecordingMuxerId:

- (void) setRecordingMuxerId: (NSString *)  value

Sets the Recording Muxer identifer.

◆ setRegion:

- (void) setRegion: (NSString *)  value

Sets the region.

◆ setRemoteClientId:

- (void) setRemoteClientId: (NSString *)  value

Sets the remote client identifier.

◆ setRemoteConnectionId:

- (void) setRemoteConnectionId: (NSString *)  value

Sets the remote connection identifier.

◆ setRemoteDeviceId:

- (void) setRemoteDeviceId: (NSString *)  value

Sets the remote device identifier.

◆ setRemoteMediaId:

- (void) setRemoteMediaId: (NSString *)  value

Sets the remote broadcast identifier.

◆ setRemoteUserId:

- (void) setRemoteUserId: (NSString *)  value

Sets the remote user identifier.

◆ setRequestIceServers:

- (void) setRequestIceServers: (bool)  value

Sets the value indicating whether ICE Servers have been requested.

◆ setTimestamp:

- (void) setTimestamp: (long long)  value

Sets the message timestamp.

◆ setToken:

- (void) setToken: (NSString *)  value

Sets the token.

◆ setTransactionId:

- (void) setTransactionId: (NSString *)  value

Sets the transaction identifier.

◆ setType:

- (void) setType: (NSString *)  value

Sets the type.

◆ setUserAlias:

- (void) setUserAlias: (NSString *)  value

Sets the user alias.

◆ setUserId:

- (void) setUserId: (NSString *)  value

Sets the user identifier.

◆ setWebSocketMediaServerId:

- (void) setWebSocketMediaServerId: (NSString *)  value

Sets the Media Server identifier.

◆ timestamp

- (long long) timestamp

Gets the message timestamp.

◆ toJson

- (NSString*) toJson

Serializes this instance to JSON.

◆ toJsonArrayWithMessages:

+ (NSString*) toJsonArrayWithMessages: (NSMutableArray *)  messages

Serializes an array of instances to JSON.

Parameters
messagesThe messages to serialize.
Returns
The serialized JSON.

◆ toJsonWithMessage:

+ (NSString*) toJsonWithMessage: (FMLiveSwitchMessage *)  message

Serializes an instance to JSON.

Parameters
messageThe message to serialize.
Returns
The serialized JSON.

◆ toJsonWithMessage:forceTimestamp:

+ (NSString*) toJsonWithMessage: (FMLiveSwitchMessage *)  message
forceTimestamp: (bool)  forceTimestamp 

Serializes an instance to JSON and forces timestamp regardless of what generates Json.

Parameters
messageThe message to serialize.
forceTimestampIndicates whether timestamp must be included regardless of where serialization occurs.
Returns
The serialized JSON.

◆ token

- (NSString*) token

Gets the token.

◆ transactionId

- (NSString*) transactionId

Gets the transaction identifier.

◆ type

- (NSString*) type

Gets the type.

◆ userAlias

- (NSString*) userAlias

Gets the user alias.

◆ userId

- (NSString*) userId

Gets the user identifier.

◆ webSocketMediaServerId

- (NSString*) webSocketMediaServerId

Gets the Media Server identifier.