Agora Interactive Whiteboard Objective-C Overview Document

Agora provides interactive whiteboard with high reliability and rich features though a virtual global network and flexible combinations of APIs.

SDK initialization

Method Description
initWithWhiteBoardView Initializes a WhiteSDK object and sets callbacks.
initWithWhiteBoardView Initializes a WhiteRoom object and sets callbacks and audio mixing.
WhiteCommonCallbacks Sets common callbacks.
joinRoomWithConfig Sets the configurations and event callbacks of whiteboard room and joins the live interactive whiteboard room.
setupFontFaces Declares the fonts that can be used in the local whiteboard.
loadFontFaces Declares the fonts that can be used in the local whiteboard and preloads them.
updateTextFont Sets the fonts used by the text tool in the local whiteboard.

Common events

Event Description
throwError Reports an uncaught global error during SDK runtime.
urlInterrupter Occurs when the SDK intercepts an image URL address.
pptMediaPlay Occurs when the audio and video in dynamic PPT slides start playing.
pptMediaPause Occurs when the audio and video in dynamic PPT slides pause playing.
customMessage Occurs when the user receives a message from the web page.
sdkSetupFail Reports the failure of the SDK initialization.

Room management

Method Description
observerId The user ID.
setWritable Sets whether a user is in interactive mode in the room.
disableDeviceInputs Disables the whiteboard from responding to users' operations.
disconnect Disconnects from the live Interactive Whiteboard room.
setGlobalState Modifies the global state of the live Interactive Whiteboard room.
disconnectedBySelf Gets whether the SDK calls disconnect to disconnect from the live Interactive Whiteboard room.
writable Gets whether the local user is in interactive mode in the room.
globalState Gets the global state of the room (synchronous).
getGlobalStateWithResult Gets the global state of the room (asynchronous).
roomMembers Gets the list of members in the room (synchronous).
getRoomMembersWithResult Gets the list of members in the room. (asynchronous).
phase Gets the connection state of the room. (synchronous).
getRoomPhaseWithResult Gets the connection state of the room (asynchronous).
state Gets the current room state (synchronous).
getRoomStateWithResult Gets the current room state (asynchronous).

Whiteboard tool

Method Description
setMemberState Modifies the state of the whiteboard tool currently in use.
memberState Gets the state of the whiteboard tool currently in use (synchronous).
getMemberStateWithResult Gets the state of the whiteboard tool currently in use (asynchronous).
copy Copies the selected content.
paste Pastes the copied content.
duplicate Duplicates the selected content.
deleteOperation Deletes the selected content.
disableSerialization Disables/Enables the local serialization.
redo Redoes an undone action.
undo Undoes an action.
disableEraseImage Disables the eraser from erasing images on the whiteboard.
disableDeviceInputs Disables the whiteboard from responding to users' operations.

View management

Method Description
setViewMode Sets the view mode of the user.
setCameraBound Sets the boundary of the user’s view.
disableCameraTransform Disables the user from adjusting the view.
moveCamera Adjusts the view.
moveCameraToContainer Adjusts the view to ensure the complete display of the view rectangle.
scalePptToFit Adjusts the view in the specified mode to ensure the complete display of the PPT slide.
disableCameraTransform Disables the local user from adjusting the view of the whiteboard.
broadcastState Gets the view state of the user (synchronous).
getBroadcastStateWithResult Gets the view state of the user (asynchronous).

Scene management

Method Description
insertImage1 Inserts an image placeholder on the whiteboard.
completeImageUploadWithUuid Displays an image in the specified image placeholder.
insertImage2 Inserts and displays an image on the whiteboard.
insertText Inserts text at a specified position.
sceneState Gets the state of the scenes under the current scene directory (synchronous).
getSceneStateWithResult Gets the state of the scenes under the current scene directory (asynchronous).
getScenesWithResult Gets the state of the scenes under the current scene directory (asynchronous).
setScenePath Switches to the specified scene (synchronous).
setScenePath Switches to the specified scene (asynchronous).
setSceneIndex Switches to the specified scene under the current scene directory.
putScenes Inserts multiples scenes under the specified scene directory.
moveScene Moves a scene.
removeScenes Deletes a scene or a scene directory.
cleanScene Clears all contents on the current scene.
pptNextStep Plays the next slide of the PPT file.
pptPreviousStep Returns to the previous slide of the PPT file.
getScenePathType Gets the type of the scene path.
getEntireScenes Gets information about all scenes in the room.
getScenePreviewImage Gets the preview of the specified scene.
getSceneSnapshotImage Gets the screenshot of the specified scene.
getLocalSnapShotWithCompletion Gets the screenshot of the specified scene.

Customized events

Method Description
dispatchMagixEvent Sends a custom event.
addMagixEventListener Adds a listener for a customized event.
addHighFrequencyEventListener Adds a listener for a customized high-frequency event.
removeMagixEventListener Removes a listener for a customized event.

iframe plug-in message

Method Description
postIframeMessage Sends message in string format to the iframe plugin.

Miscellaneous methods

Method Description
debugInfo Gets debug logs.
requestSlideLogToFilePath Gets the debug logs.
setTimeDelay Sets the delay time for sending the whiteboard contents of the local user to the remote users.
convertToPointInWorld Converts the coordinates of a point on the whiteboard.
refreshViewSize Refreshes the whiteboard view.
setDrawOnlyApplePencil (iPad only) Sets whether users can only draw and write on the whiteboard using the Apple Pencil.