### Live Event Ready Source: https://sendbird.com/docs/live/sdk/v1/ios/ref/Protocols/LiveEventDelegate.html Called when the live event is ready to begin. Implement this to perform setup actions before the event starts. ```swift func didLiveEventReady(_ liveEvent: LiveEvent) ``` -------------------------------- ### Start Live Event Source: https://sendbird.com/docs/live/sdk/v1/ios/getting-started/start-your-first-live Once entered as a host, start the live event. Participants can then view the host's video. Handle any errors during the start process. ```swift liveEvent.startEvent(mediaOptions: nil) { error in guard error == nil else { return } // Handle error // The live event has started. Participants can now view the host's video. } ``` -------------------------------- ### SBUOpenChannelSettingsModule.List Setup Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannelsettingsmodule/list Sets up the items and views for the settings list. ```APIDOC ## func setupItems() ### Description Sets up items for tableView cell configuration. ``` ```APIDOC ## func setupViews() ### Description Sets up the views for the settings module. ``` -------------------------------- ### Install Dependencies and Start Storybook Source: https://sendbird.com/docs/chat/uikit/v3/react/ref/index.html Install project dependencies and start the Storybook development server using yarn or npm. ```bash yarn install yarn storybook ``` ```bash npm install npm run storybook ``` -------------------------------- ### Get Starting Point Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannelviewmodel Retrieves the starting point for message loading. ```APIDOC ## func getStartingPoint() -> Int64? ### Description Gets the starting point for message loading. ### Method func ### Returns - **Int64?** - The starting point as an optional Int64. ``` -------------------------------- ### setupStyles() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuphotocollectionviewcell/setupstyles%28%29 Initializes the styles for the SBUPhotoCollectionviewCell. ```APIDOC ## setupStyles() ### Description This function handles the initialization of styles. ### Method Instance Method ### Signature ```swift func setupStyles() ``` ``` -------------------------------- ### Install Flutter Packages Source: https://sendbird.com/docs/business-messaging/client-side/v2/sdk/installation Run flutter pub get after adding the Sendbird SDK to your pubspec.yaml to install the package. ```dart flutter pub get ``` -------------------------------- ### setupStyles(theme:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannellistmodule/header/setupstyles%28theme%3A%29 Sets up the style for the open channel list. If the `theme` parameter is nil, the method uses the stored theme. ```APIDOC ## setupStyles(theme:) ### Description Sets up the style for the open channel list using a provided theme or the stored theme. ### Method Signature ```swift func setupStyles(theme: SBUOpenChannelListTheme? = nil) ``` ### Parameters #### Parameters - **theme** (SBUOpenChannelListTheme?) - Optional - An `SBUOpenChannelListTheme` object to customize the appearance of the open channel list. If `nil`, the stored theme is used. ``` -------------------------------- ### startedAt Source: https://sendbird.com/docs/calls/sdk/v1/react-native/ref/classes/DirectCall.html Gets the timestamp when the call was started. ```APIDOC ## startedAt ### Description Gets call startedAt timestamp. ### Returns number ``` -------------------------------- ### setupStyles Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannelviewcontroller Sets up the styles for the view controller. ```APIDOC ## setupStyles() ### Description This function setups styles. ### Method `func setupStyles()` ``` -------------------------------- ### init(headerComponent:listComponent:inputComponent:mediaComponent:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannelmodule/init%28headercomponent%3Alistcomponent%3Ainputcomponent%3Amediacomponent%3A%29 Initializes the SBUOpenChannelModule with optional custom components for header, list, input, and media. ```APIDOC ## init(headerComponent:listComponent:inputComponent:mediaComponent:) ### Description Initializes the SBUOpenChannelModule with custom components for the header, list, input, and media sections. This allows for a highly customizable user interface within the open channel. ### Parameters #### Path Parameters - **headerComponent** (SBUOpenChannelModule.Header?) - Optional - The custom component for the header section. - **listComponent** (SBUOpenChannelModule.List?) - Optional - The custom component for the list section. - **inputComponent** (SBUOpenChannelModule.Input?) - Optional - The custom component for the input section. - **mediaComponent** (SBUOpenChannelModule.Media?) - Optional - The custom component for the media section. ``` -------------------------------- ### Response Body Example Source: https://sendbird.com/docs/chat/platform-api/v3/moderation/banning-a-user/ban-a-participant-from-an-open-channel This is an example of a successful response when a user is banned. It includes user information, ban start and end times, and the ban description. ```json { "user": { "user_id": "Matthew", "nickname": "Mooch", "profile_url": "https://sendbird.com/main/img/profiles/profile_47_512px.png", "metadata": { "font_preference": "times new roman", "font_color": "black" } }, "start_at": 1543211469000, "end_at": 1543211529000, "description": "Too much talking" } ``` -------------------------------- ### Set Up Live Event with UI Components Source: https://sendbird.com/docs/live/sdk/v1/javascript/integrations/camera-filter This function sets up the UI for creating and entering a live event. It includes a 'Go Live' button that, when clicked, creates a live event, enters it as a host with audio and video turned on, and starts the event. ```javascript function setGoLiveView() { clearMain(); const main = getMain(); const goLiveButton = document.createElement('button'); goLiveButton.textContent = 'Go Live'; goLiveButton.onclick = async () => { globalLiveEvent = await globalLive.createLiveEvent({ userIdsForHost: [globalUserId] }); await globalLiveEvent.enterAsHost({ turnAudioOn: true, turnVideoOn: true, streamProcessor: async (stream) => replaceStream(stream), // or, you can use LiveEvent.startUsingExternalStream() instead. }); await globalLiveEvent.startEvent({ turnAudioOn: true, turnVideoOn: true }); setLiveView(); } main.appendChild(goLiveButton); } ``` -------------------------------- ### StartingPoint Property Source: https://sendbird.com/docs/chat/sdk/v4/unity/ref/class_sendbird_1_1_chat_1_1_sb_message_collection_create_params.html Gets or sets the starting point for loading messages. ```APIDOC ## Property: StartingPoint ### Description Gets or sets the starting point of which to load messages from. ### Type long ### Access get, set ### Since 4.0.0 ``` -------------------------------- ### Get Package Manager Source: https://sendbird.com/docs/chat/sdk/v4/android/ref/-sendbird-chat/com.sendbird.android.push/-sendbird-firebase-messaging-service/index.html Provides access to information about installed applications. ```APIDOC ## getPackageManager ### Description Provides access to information about installed applications. ### Method N/A (Getter method) ### Endpoint N/A ### Parameters None ### Response #### Success Response - **PackageManager** (PackageManager) - The PackageManager instance. ``` -------------------------------- ### setupViews Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannelviewcontroller Sets up the views for the view controller. ```APIDOC ## setupViews() ### Description Sets up the views for the view controller. ### Method `func setupViews()` ``` -------------------------------- ### onReady Source: https://sendbird.com/docs/chat/uikit/v3/android-view/ref/-sendbird-u-i-kit/com.sendbird.uikit.fragments/-invite-user-fragment/index.html Called to start the operation of the fragment after authentication and module setup. ```APIDOC ## Functions ### onReady protected open fun onReady(@NonNull status: ReadyStatus, @NonNull module: InviteUserModule, @NonNull viewModel: InviteUserViewModel) ``` -------------------------------- ### Setup Components and Layouts Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbumoderationsviewcontroller Functions for setting up the view controller's components, layouts, styles, and views. ```swift func setupComponents(channelType: ChannelType) ``` ```swift func setupLayouts() ``` ```swift func setupStyles() ``` ```swift func setupViews() ``` ```swift func updateStyles() ``` -------------------------------- ### setupActions() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbualertview/setupactions%28%29 Initializes the actions for the Sendbird UIKit. ```APIDOC ## setupActions() ### Description This function handles the initialization of actions. ### Method Instance Method ### Signature ```swift func setupActions() ``` ``` -------------------------------- ### Pagination Request Example Source: https://sendbird.com/docs/desk/platform-api/v1/features/miscellaneous To retrieve data in chunks, use 'limit' and 'offset' parameters in the URL. For example, to get 10 results after the first 20 items. ```http ?limit=10&offset=20 ``` -------------------------------- ### Start Live Event Source: https://sendbird.com/docs/live/sdk/v1/android/getting-started/start-your-first-live Call this method after entering as a host to begin the live event. Participants can then view the host's video. ```kotlin liveEvent.startEvent { if (it != null) { // handle error return@startEvent } // The live event has started. Participants can now view the host's video. } ``` -------------------------------- ### Successful Response Example Source: https://sendbird.com/docs/chat/platform-api/v3/moderation/listing-banned-users/get-a-banned-member-of-a-group-channel This is an example of a successful response when retrieving information about a banned user. It includes user details, ban start and end times, and the reason for the ban. ```json { "user": { "user_id": "John", "nickname": "Sendbirdian", "profile_url": "https://sendbird.com/main/img/profiles/profile_02_512px.png", "metadata": { "font_preference": "times new roman", "font_color": "black" } }, "start_at": 1543211671000, "end_at": 1543211731000, "description": "Too much talking" } ``` -------------------------------- ### Successful Response for Starting a Live Event Source: https://sendbird.com/docs/live/platform-api/v1/live/managing-live/start-a-live-event This is an example of a successful response when starting a live event. It returns the live event object with its state updated to 'ongoing' and includes details about the host and timestamps. ```json { "live_event": { "live_event_id": "5ae1fdb3-1f86-4bd5-8b0a-1a0d472ef262", "host_type": "single_host", "state": "ongoing", "created_at": 1657689806089, "set_ready_at": 1657689806115, "started_at": 1657689806237, "ended_at": null, "is_host_streaming": false, "host": { "client_id": "test-client-id", "duration": 0, "exited_at": null, "entered_at": 1657689806172, "state": "entered", "live_event_id": "5ae1fdb3-1f86-4bd5-8b0a-1a0d472ef262", "host_id": "5eaae39f-d5b1-4b52-93a5-ea81d9338f37", "connected_at": null, "disconnected_at": null, "is_audio_on": true, // If set to true, audio is on. "is_video_on": true, // If set to true, video is on. "user": { "user_id": "testuser-d8208e98", "nickname": "", "profile_url": "", "metadata": {}, "is_active": true, "role": null, }, }, "created_by": "testuser-d8208e98", "set_ready_by": "testuser-d8208e98", "started_by": "testuser-d8208e98", "ended_by": "", "duration": 0, "participant_count": 0, "peak_participant_count": 0, "cumulative_participant_count": 0, "user_ids_for_host": ["testuser-d8208e98"], "custom_items": {}, } } ``` -------------------------------- ### setupLayouts() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuphotocollectionviewcell/setuplayouts%28%29 This function handles the initialization of auto layouts for the `SBUPhotoCollectionVIewCell`. ```APIDOC ## setupLayouts() ### Description Initializes the auto layout constraints for the `SBUPhotoCollectionVIewCell`. ### Method func setupLayouts() ### Parameters This method does not take any parameters. ### Returns This method does not return a value. ``` -------------------------------- ### Get Ticket Assignments HTTP Request Source: https://sendbird.com/docs/desk/platform-api/v1/features/ticket This is an example of an HTTP GET request to retrieve the assignment history for a specific ticket. It requires the ticket ID and optionally accepts limit and offset parameters. ```http GET https://desk-api-{application_id}.sendbird.com/platform/v1/tickets/{ticket_id}/assignments ``` -------------------------------- ### init(inputComponent:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannelmodule/init%28inputcomponent%3A%29 Initializes the SBUOpenChannelModule. You can provide a custom input component to tailor the user interface for channel creation or viewing. ```APIDOC ## init(inputComponent:) ### Description Initializes the SBUOpenChannelModule with an optional input component. ### Method `init` ### Parameters #### Path Parameters - **inputComponent** (SBUOpenChannelModule.Input?) - Optional - The input component to be used for the module. ``` -------------------------------- ### setupLayouts() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuactionsheet/setuplayouts%28%29 Initializes the autolayouts for the action sheet. ```APIDOC ## setupLayouts() ### Description This function handles the initialization of autolayouts. ### Method Instance Method ### Signature ```swift func setupLayouts() ``` ``` -------------------------------- ### Change Starting Screen to Channel List Source: https://sendbird.com/docs/chat/uikit/v3/jetpack-compose/navigation Modify the startDestination of the NavHost to `SendbirdNavigation.GroupChannel.route` to set the channel list as the initial screen. This example also demonstrates setting a specific channel to display upon starting. ```Kotlin val navController = rememberNavController() NavHost( navController = navController, // Change the start destination to Sendbird GroupChannel Navigation graph route. startDestination = SendbirdNavigation.GroupChannel.route ) { sendbirdGroupChannelNavGraph( navController, // Change the start destination to Sendbird Channel screen route. startDestination = SendbirdNavigationRoute.Channel( // Channel URL to navigate to. channelUrl = "channelUrl" ), ) composable("YourRoute1") { YourScreen1() } composable("YourRoute2") { YourScreen2() } } ``` -------------------------------- ### SBUOpenChannelModule.Input Instance Methods Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannelmodule/input Provides methods for configuring the input component, picking various file types (documents, GIFs, images, videos), setting up views, and updating input states. ```APIDOC ## SBUOpenChannelModule.Input Instance Methods ### `func configure(delegate: SBUOpenChannelModuleInputDelegate, dataSource: SBUOpenChannelModuleInputDataSource, theme: SBUChannelTheme)` Configures component with parameters. ### `func pickDocumentFile(documentURLs: [URL])` Call this function when a video file has been picked from `UIDocumentPickerViewController`. This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func pickGIFFile(itemProvider: NSItemProvider)` Call this function when a picked `itemProvider` of `PHPickerResult` has `UTType.gif` identifier. This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func pickImageData(Data, fileName: String?, mimeType: String?)` Called when the image is picked from `SBUSelectablePhotoViewController` This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func pickImageFile(info: [UIImagePickerController.InfoKey : Any])` Call this function when an image file has been picked from `UIImagePickerController`. This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func pickImageFile(itemProvider: NSItemProvider)` Call this function when a picked `itemProvider` of `PHPickerResult` has `UTType.image` identifier. This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func pickVideoFile(info: [UIImagePickerController.InfoKey : Any])` Call this function when a video file has been picked from `UIImagePickerController`. This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func pickVideoFile(itemProvider: NSItemProvider)` Call this function when a picked `itemProvider` of `PHPickerResult` has `UTType.video` identifier. This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func pickVideoURL(URL)` Called when the video is picked from `SBUSelectablePhotoViewController` This function will invoke corresponding delegate method such as `SBUGroupChannelModuleInputDelegate groupChannelModule(_:didPickFileData:fileName:mimeType:parentMessage:)` ### `func setupViews()` Set values of the views in the input component when it needs. ### `func updateFrozenModeState()` This is used to update frozen mode of `messageInputView`. This will call `SBUBaseChannelModuleInputDelegate baseChannelModule(_:didUpdateFrozenState:)` ### `func updateMessageInputModeState()` Updates state of `messageInputView`. ### `func updateMutedModeState()` Updates the mode of `messageInputView` according to frozen and muted state of the channel. ### `func updateStyles(overlaid: Bool)` Updates styles with overlaying state. ``` -------------------------------- ### SbMessageCollection.StartingPoint Source: https://sendbird.com/docs/chat/sdk/v4/dotnet/ref/class_sendbird_1_1_chat_1_1_sb_message_collection.html Gets the starting point of the message collection. This value is used to initialize or paginate message loading. ```APIDOC ## StartingPoint ### Description The starting point of the collection. ### Property Type long ### Access get ### Since 4.0.0 ``` -------------------------------- ### nicknameStartsWithFilter Source: https://sendbird.com/docs/chat/sdk/v4/android/ref/-sendbird-chat/com.sendbird.android.channel.query/-group-channel-list-query/nickname-starts-with-filter.html Searches for GroupChannels with members whose nicknames start with the specified value. For example, if you pass 'abc', the returned channel list will contain members whose nicknames start with 'abc'. This filter does not cooperate with other filters. ```APIDOC ## nicknameStartsWithFilter ### Description Searches for GroupChannels with members whose nicknames start with the specified value. If you pass nickname such as "abc", then the returned channel list will be containing member like "abc*". This does not cooperate with other filters. ### Property `nicknameStartsWithFilter`: String? (nullable String) ### Since 4.0.9 ### See also GroupChannelListQueryParams.nicknameStartsWithFilter ``` -------------------------------- ### onReady Source: https://sendbird.com/docs/chat/uikit/v3/android-view/ref/-sendbird-u-i-kit/com.sendbird.uikit.fragments/-channel-fragment/index.html Callback function called after authentication and module setup are complete, signaling that the fragment is ready to start operations. ```APIDOC ## onReady ### Description Callback function called after authentication and module setup are complete, signaling that the fragment is ready to start operations. ### Method `protected open fun onReady(@NonNull status: ReadyStatus, @NonNull module: ChannelModule, @NonNull viewModel: ChannelViewModel)` ### Parameters * **status** (`ReadyStatus`) - Required - The status indicating readiness. * **module** (`ChannelModule`) - Required - The initialized channel module. * **viewModel** (`ChannelViewModel`) - Required - The initialized channel view model. ``` -------------------------------- ### setupStyles Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannelmodule/input Sets up the visual styles for the input component using a provided theme. If the theme is nil, it uses the stored theme. ```APIDOC ## setupStyles(theme:) ### Description Sets up style with theme. If set theme parameter is nil value, using the stored theme. ### Signature `func setupStyles(theme: SBUChannelTheme?)` ``` -------------------------------- ### init() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannellistmodule/init%28%29 Default initializer for SBUOpenChannelListModule. Creates an instance without any pre-configured components. ```APIDOC ## init() ### Description Default initializer for `SBUOpenChannelListModule`. ### Method `init()` ### Discussion This initializer creates an instance of `SBUOpenChannelListModule` without any pre-configured components. ``` -------------------------------- ### View Agent Connection Log Request Source: https://sendbird.com/docs/desk/platform-api/v1/features/agent-connection-logs This is an example of an HTTP GET request to retrieve a specific agent connection log by its ID. ```http GET https://desk-api-{application_id}.sendbird.com/platform/v1/agent_connection_logs/{connection_log_id} ``` -------------------------------- ### setupLayouts Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbumessagethreadviewcontroller Sets up the layout for the view controller's components. ```APIDOC ## setupLayouts ### Description Sets up the layout for the view controller's components. ### Method Instance Method ### Parameters None ### Response None ### Request Example None ### Response Example None ``` -------------------------------- ### setupStyles() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/quotedfileimagecontentview/setupstyles%28%29 The `setupStyles()` method is an instance method used to apply styling configurations to the `QuotedFileImageView`. It is designed to be overridden in subclasses to provide custom styling logic. ```APIDOC ## setupStyles() ### Description Applies styling configurations to the `QuotedFileImageView`. ### Method `override func setupStyles()` ### Remarks This method is intended to be overridden by subclasses to customize the appearance of the `QuotedFileImageView`. ``` -------------------------------- ### Initialize GroupChannelListView with Default Provider Source: https://sendbird.com/docs/chat/uikit/v3/swiftui/group-channel-views/list-channels Initialize the GroupChannelListView with its default provider to display a list of channels. This is the simplest way to get started. ```swift import SwiftUI import SendbirdSwiftUI import SendbirdChatSDK // Pass an existing provider instance when calling ContentView(provider:). struct ContentView: View { @StateObject var provider = GroupChannelListViewProvider() var body: some View { GroupChannelListView(provider: provider) } } ``` -------------------------------- ### init() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuusermessagetextview/init%28%29 Initializes the SBUUserMessageTextView and configures its subviews, auto layouts, and actions. ```APIDOC ## init() ### Description Initializes `UIView` and set up subviews, auto layouts and actions for SendbirdUIKit. ### Method `override init()` ### Parameters This method does not take any parameters. ### Response Initializes the `SBUUserMessageTextView` instance. ``` -------------------------------- ### Initialize OpenChannelListView with Default Provider Source: https://sendbird.com/docs/chat/uikit/v3/swiftui/open-channel-views/list-channels Initialize the OpenChannelListView with its default provider to display a list of open channels. This is the simplest way to get started. ```Swift import SwiftUI import SendbirdSwiftUI import SendbirdChatSDK // Pass an existing provider instance when calling ContentView(provider:). struct ContentView: View { @StateObject var provider = OpenChannelListViewProvider() var body: some View { OpenChannelListView(provider: provider) } } ``` -------------------------------- ### Configure Host Media Devices and Start Streaming Source: https://sendbird.com/docs/live/sdk/v1/android/sdk/host/check-the-settings-of-a-live-event Hosts can select their preferred audio and video devices and initiate their stream. This is typically done before the live event is ready for participants. The `startStreaming()` method establishes the connection to the Sendbird server for the host's view. ```Kotlin liveEvent.selectVideoDevice(device: device) liveEvent.selectAudioDevice(device: device) liveEvent.setVideoViewForLiveEvent(videoView, hostId: hostId) liveEvent.startStreaming() ``` -------------------------------- ### Get Sendbird UI Kit SDK Short Version Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sendbirdui Retrieves the short version string of the UIKit SDK. Example format: 1.0.0. ```swift static var bundleShortVersion: String ``` -------------------------------- ### mostRepliedUsers Source: https://sendbird.com/docs/chat/sdk/v4/android/ref/-sendbird-chat/com.sendbird.android.message/-thread-info/most-replied-users.html Gets the users who have replied in the thread, ordered by the time of their replies. This property is available starting from Sendbird Chat SDK version 3.0.130. ```APIDOC ## mostRepliedUsers ### Description Retrieves a list of users who have replied to the thread, ordered by the time the reply was added. ### Property `mostRepliedUsers` ### Type `List` ### Since `3.0.130` ``` -------------------------------- ### __SendbirdSDKInfo Initialization Source: https://sendbird.com/docs/chat/sdk/v4/ios/ref/Structs/__SendbirdSDKInfo.html Initializes a new instance of the __SendbirdSDKInfo class with product, platform, and version information. ```APIDOC ## init(product:platform:version:) ### Description Initializes a new instance of the __SendbirdSDKInfo class. ### Parameters #### Declaration Swift ```swift public init(product: __SendbirdProduct, platform: __SendbirdPlatform, version: String) ``` - **product** (__SendbirdProduct) - The Sendbird product. - **platform** (__SendbirdPlatform) - The platform. - **version** (String) - The version string. ``` -------------------------------- ### View and Style Setup Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannelmodule/list Methods for initializing, configuring, and styling the various views within the channel list component. ```APIDOC ## setupLayouts ### Description Sets up the initial layouts for all views within the channel list component. ### Signature `func setupLayouts()` ## setupScrollBottomViewStyle ### Description Sets the visual styles for the scroll-to-bottom view using a provided theme. ### Signature `func setupScrollBottomViewStyle(scrollBottomView: UIView, theme: SBUComponentTheme)` ## setupStyles ### Description Applies visual styles to the views in the channel list component based on a provided channel theme. If the theme is nil, it uses stored values. ### Signature `func setupStyles(theme: SBUChannelTheme?)` ## setupViews ### Description Initializes and sets up the values for the views within the channel list component when needed. ### Signature `func setupViews()` ## updateStyles ### Description Updates the styles of the views in the list component using the provided channel and component themes. ### Signature `func updateStyles(theme: SBUChannelTheme?, componentTheme: SBUComponentTheme)` ``` -------------------------------- ### Get a Message Source: https://sendbird.com/docs/chat/platform-api/v3/message/messaging-basics/get-a-message Retrieves the details of a specific message. This is useful for fetching a message that has already been sent, for example, to display it in a UI or to perform further actions on it. ```APIDOC ## GET /v3/message/{message_id} ### Description Retrieves the details of a specific message. ### Method GET ### Endpoint /v3/message/{message_id} ### Parameters #### Path Parameters - **message_id** (string) - Required - The unique identifier of the message to retrieve. ### Response #### Success Response (200) - **message** (object) - The message object containing details such as sender, content, timestamp, etc. - **message_id** (string) - The unique identifier of the message. - **sender_id** (string) - The unique identifier of the sender. - **message_type** (string) - The type of the message (e.g., `user`, `file`, `admin`). - **message** (string) - The content of the message (for text messages). - **created_at** (string) - The timestamp when the message was created (Unix epoch time in milliseconds). - **data** (string) - Custom data stored with the message. - **custom_type** (string) - Custom type of the message. - **translations** (object) - Information about translated messages. - **file** (object) - Information about file messages. - **reply_to_message_id** (string) - The ID of the message this message is replying to. - **sorted_metaarray** (array) - Sorted metadata associated with the message. - **reactions** (array) - Reactions added to the message. - **read_receipts** (array) - Read receipts for the message. - **channel_type** (string) - The type of the channel the message belongs to (e.g., `open`, `group`, `direct`). - **channel_url** (string) - The URL of the channel the message belongs to. - **mentioned** (array) - List of users mentioned in the message. - **pinned_message_id** (string) - The ID of the pinned message. - **parent_message_id** (string) - The ID of the parent message in a thread. - **is_hidden** (boolean) - Whether the message is hidden. - **is_deleted** (boolean) - Whether the message is deleted. - **is_oplog_deleted** (boolean) - Whether the message is deleted from oplog. - **is_access_denied** (boolean) - Whether access to the message is denied. - **is_freeze** (boolean) - Whether the message is frozen. - **is_active** (boolean) - Whether the message is active. - **updated_at** (string) - The timestamp when the message was last updated (Unix epoch time in milliseconds). - **message_survival_seconds** (string) - The survival period of the message in seconds. - **poll** (object) - Information about a poll associated with the message. #### Response Example ```json { "message": { "message_id": "1678886789123456", "sender_id": "user123", "message_type": "user", "message": "Hello, world!", "created_at": "1678886789123", "data": "{}", "custom_type": "", "translations": {}, "file": {}, "reply_to_message_id": "", "sorted_metaarray": [], "reactions": [], "read_receipts": [], "channel_type": "group", "channel_url": "sendbird_group_channel_12345", "mentioned": [], "pinned_message_id": "", "parent_message_id": "", "is_hidden": false, "is_deleted": false, "is_oplog_deleted": false, "is_access_denied": false, "is_freeze": false, "is_active": true, "updated_at": "1678886789123", "message_survival_seconds": "0", "poll": {} } } ``` ``` -------------------------------- ### On Ready Source: https://sendbird.com/docs/chat/uikit/v3/android-view/ref/-sendbird-u-i-kit/com.sendbird.uikit.fragments/-create-channel-fragment/index.html Called to start the fragment's operation after authentication and module setup are complete. This function is protected and intended for internal use or extension. ```APIDOC ## onReady ### Description Called to start the operation of the fragment after authentication and module setup. ### Signature protected open fun onReady(@NonNull status: ReadyStatus, @NonNull module: CreateChannelModule, @NonNull viewModel: CreateChannelViewModel) ``` -------------------------------- ### init() Source: https://sendbird.com/docs/chat/sdk/v4/ios/ref/Classes/PinnedMessageListQueryParams.html Default constructor. ```APIDOC ## init() ### Description Default constructor. ### Declaration Swift ```swift public override init() ``` ``` -------------------------------- ### Setup Views in SBUBaseChannelListViewController Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannellistviewcontroller/setupviews%28%29 This is the basic signature for the setupViews() method in Swift. It's an override method used to set up the view hierarchy and initial configurations for the channel list. ```swift override func setupViews() ``` -------------------------------- ### Update Scheduled Announcement Details Source: https://sendbird.com/docs/chat/platform-api/v3/message/announcements/update-an-announcement Use this example to update the message content, push notification settings, or scheduled time of an announcement that has not yet started. ```json { "announcement_group": "insurance", "message": { "type": "MESG", "custom_type": "campaign", "user_id": "insurance_bot", "content": "3 ways to lower your insurance premiums!", "data": "" }, "enable_push": true, "scheduled_at": 1542756099266 } ``` -------------------------------- ### Initialize MediaOptions with Video and Audio Source: https://sendbird.com/docs/live/sdk/v1/ios/ref/Structs/MediaOptions.html Initializes MediaOptions with specified video and audio settings. ```swift public init(turnVideoOn: Bool, turnAudioOn: Bool) ``` -------------------------------- ### GET Daily Announcement Statistics Source: https://sendbird.com/docs/chat/platform-api/v3/message/announcements/get-announcement-statistics Use this endpoint to retrieve daily statistics for announcements. Specify a start and end date within a 31-day range. ```http GET https://api-{application_id}.sendbird.com/v3/announcement_stats/daily ``` -------------------------------- ### onReady Source: https://sendbird.com/docs/chat/uikit/v3/android-view/ref/-sendbird-u-i-kit/com.sendbird.uikit.fragments/-register-operator-fragment/on-ready.html Called to start the operation of the fragment after authentication and module setup. It handles the authentication status, indicating success or failure and providing options for re-authentication. ```APIDOC ## onReady ### Description Called to start the operation of the fragment after authentication and module setup. Called when authentication has been completed, and the result of authentication delivers through ReadyStatus. If the ReadyStatus has READY, all authentications are finished normally READY meant all authentication has been completed normally, and in case of an ERROR, authentication can be attempted again through the shouldAuthenticate in this fragment. ### Parameters #### Parameters - **status** (ReadyStatus) - Required - The status of the result of the view model's authentication. - **module** (RegisterOperatorModule) - Required - Module to be used in fragment - **viewModel** (RegisterOperatorViewModel) - Required - A view model that provides the data needed for the fragment ### See also ReadyStatus since 3.0.0 ``` -------------------------------- ### setupViews() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbumessagethreadviewcontroller/setupviews%28%29 Sets up views including module components. When overriding this method, ensure to call `super.setupViews()` after configuring the component's delegate and theme. ```APIDOC ## setupViews() ### Description Sets up views including module components. ### Method Signature ```swift override func setupViews() ``` ### Discussion Important: When you override this method, please call `super.setupViews` after the `configure` method of the component. Example: ```swift override func setupViews() { self.baseHeaderComponent = SBUModuleSet.groupChannelModule.headerComponent() self.baseHeaderComponent?.configure(delegate: self, theme: self.theme) super.setupViews() } ``` ``` -------------------------------- ### Create message search query with default parameters Source: https://sendbird.com/docs/chat/sdk/v4/android/message/searching-messages-in-a-group-channel/search-messages-by-a-keyword Initializes a MessageSearchQuery with default parameters for a given keyword. This is a basic setup for starting a message search. ```kotlin val query = SendbirdChat.createMessageSearchQuery(MessageSearchQueryParams(KEYWORD)) ``` -------------------------------- ### Initialize MediaOptions with Video, Audio, and Camera Source: https://sendbird.com/docs/live/sdk/v1/ios/ref/Structs/MediaOptions.html Initializes MediaOptions with specified video, audio, and camera settings. ```swift public init(turnVideoOn: Bool, turnAudioOn: Bool, useFrontCamera: Bool) ``` -------------------------------- ### List Customers GET Request Source: https://sendbird.com/docs/desk/platform-api/v1/features/customer Retrieves a list of customers. You can specify the number of results per page and the starting index. You can also filter by Sendbird ID. ```HTTP GET https://desk-api-{application_id}.sendbird.com/platform/v1/customers ``` ```HTTP ?limit=5&offset=10&sendbird_id=summer ``` -------------------------------- ### Initialize InviteUserView Source: https://sendbird.com/docs/chat/uikit/v3/swiftui/group-channel-views/invite-users Instantiate and display the `InviteUserView` using its provider. This is the basic setup for the invite user interface. ```Swift import SwiftUI import SendbirdUI // Pass an existing provider instance when calling ContentView(provider:). struct ContentView { @ObservedObject var provider: InviteUserViewProvider var body: some View { InviteUserView(provider: provider) } } ``` -------------------------------- ### setupLayouts() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbumessagewebview/setuplayouts%28%29 Handles the initialization of autolayouts. This method is called to set up the layout constraints and views programmatically. ```APIDOC ## setupLayouts() ### Description Initializes autolayouts for the Sendbird UIKit. ### Method func ### Endpoint Instance Method ### Parameters This method does not accept any parameters. ### Response This method does not return a value. ``` -------------------------------- ### Get Message Changelogs by Token Source: https://sendbird.com/docs/chat/sdk/v4/dotnet/message/listing-changelogs/list-changelogs-of-messages Retrieves message changelogs starting from a specified token, which marks the beginning of the next page of results. Requires `SbMessageChangeLogsParams` for filtering. ```csharp SbMessageChangeLogsParams changeLogsParams = new SbMessageChangeLogsParams(); channel.GetMessageChangeLogsSinceToken(TOKEN, changeLogsParams, (inUpdatedMessages, inDeletedMessageIds, inHasMore, inToken, inError) => { if (inError != null) { return; // Handle error. } }); ``` -------------------------------- ### URL Encoding Example for Agent Connection Source: https://sendbird.com/docs/desk/platform-api/v1/getting-started/prepare-to-use-api Illustrates how to URL-encode parameters in a GET request, specifically for the `agent_id` in the connection endpoint. This ensures special characters are correctly transmitted. ```text GET https://desk-api-{application_id}.sendbird.com/platform/v1/agents/cindy%40email.com/connection ``` -------------------------------- ### init() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbumessageprofileview/init%28%29 Initializes UIView and sets up subviews, auto layouts, and actions for SendbirdUIKit. ```APIDOC ## init() ### Description Initializes `UIView` and set up subviews, auto layouts and actions for SendbirdUIKit. ### Method `init()` ### Parameters This method does not take any parameters. ``` -------------------------------- ### Swift - baseChannelModule(_:startingPointIn:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannelviewcontroller/basechannelmodule%28_%3Astartingpointin%3A%29 This method is called by the data source to get the starting point for loading channel data. It takes a list component and a table view as parameters. ```swift func baseChannelModule( _ listComponent: SBUBaseChannelModule.List, startingPointIn tableView: UITableView ) -> Int64? ``` -------------------------------- ### init(listComponent:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannelsettingsmodule/init%28listcomponent%3A%29 Initializes the SBUOpenChannelSettingsModule with an optional list component. This allows for customization of the settings screen's list view. ```APIDOC ## init(listComponent:) ### Description Initializes module with components. ### Method `init` ### Parameters #### Path Parameters - **listComponent** (SBUOpenChannelSettingsModule.List?) - Required - The list component to use for the settings screen. ``` -------------------------------- ### setupStyles(theme:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbumessagesearchmodule/list/setupstyles%28theme%3A%29 Sets up the style for the message search module. You can provide a custom theme or let it use the stored theme if no theme is specified. ```APIDOC ## setupStyles(theme:) ### Description Sets up style with theme. If the `theme` is `nil`, it uses the stored theme. ### Method Instance Method ### Parameters #### Parameters - **theme** (SBUMessageSearchTheme?) - An optional `SBUMessageSearchTheme` object to customize the appearance. If nil, the stored theme is used. ``` -------------------------------- ### Get Message Templates by Token (Suspend Function - Deprecated) Source: https://sendbird.com/docs/chat/sdk/v4/android/ref-ktx/-sendbird-chat--k-t-x/com.sendbird.android.ktx.extension/get-message-templates-by-token.html A deprecated suspend function to retrieve message templates by token. It is replaced by `awaitGetMessageTemplatesByToken` starting from version 4.17.0. ```kotlin suspend fun SendbirdChat.getMessageTemplatesByToken( token: String?, params: MessageTemplateListParams = MessageTemplateListParams()): MessageTemplatesResult ``` -------------------------------- ### init(delegate: SBUBaseChannelListViewModelDelegate?) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbubasechannellistviewmodel/init%28delegate%3A%29 Initializes the ViewModel and sets up the delegate for receiving events. Optionally, a custom channel list query can be provided. ```APIDOC ## init(delegate: SBUBaseChannelListViewModelDelegate?) ### Description Initializes the ViewModel and sets up the delegate for receiving events. Optionally, a custom channel list query can be provided. ### Parameters #### Parameters - **delegate** (SBUBaseChannelListViewModelDelegate?) - Optional - This is used to receive events that occur in the view model. - **channelListQuery** (Any?) - Optional - This is used to use customized channelListQuery. ``` -------------------------------- ### Get Call Start Time Source: https://sendbird.com/docs/calls/sdk/v1/android/ref/-sendbird%20-calls%20-android%20-s-d-k%20v1.11.9/com.sendbird.calls/-direct-call/started-at.html The `startedAt` property returns the time in milliseconds when the direct call began. This is useful for tracking call durations or logging call events. ```APIDOC ## startedAt abstract val startedAt: Long ### Description Gets call started at(ms). ### Return Call started at(ms). ### Since 1.9.1 ``` -------------------------------- ### Retrieve a Specific Direct Call Source: https://sendbird.com/docs/calls/platform-api/v1/features/direct-call This example shows the HTTP GET request format to retrieve details of a single direct call using its unique call ID. ```http GET https://api-{application_id}.calls.sendbird.com/v1/direct_calls/{call_id} ``` -------------------------------- ### startRecording Source: https://sendbird.com/docs/calls/sdk/v1/javascript/ref/classes/directcall.html Starts recording the call with specified options. ```APIDOC ## startRecording ### Description Start recording. ### Method `startRecording(options: RecordingOptions): string | false` ### Parameters #### Path Parameters * **options** (RecordingOptions) - Required ### Returns `string | false` ``` -------------------------------- ### setupViews() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuopenchannelmodule/media/setupviews%28%29 Sets the values of the views in the input component when it is needed. This is an instance method. ```APIDOC ## setupViews() ### Description Sets the values of the views in the input component when it is needed. ### Method func ### Signature func setupViews() ``` -------------------------------- ### bundleShortVersion Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sendbirdui/bundleshortversion Gets the short version string of the UIKit SDK. For example, '1.0.0'. If a beta version exists, it will return version information without beta details (e.g., '1.0.0'). ```APIDOC ## bundleShortVersion ### Description Gets the short version string of the UIKit SDK. For example, '1.0.0'. If a beta version exists, it will return version information without beta details (e.g., '1.0.0'). ### Property `static var bundleShortVersion: String { get }` ``` -------------------------------- ### init() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuusermentionconfiguration/init%28%29 Initializes a new instance of the SBUMentionConfiguration class. ```APIDOC ## init() ### Description Initializes a new instance of the `SBUMentionConfiguration` class. ### Method `init()` ### Parameters This initializer does not take any parameters. ``` -------------------------------- ### Get Muted Participant Source: https://sendbird.com/docs/chat/platform-api/v3/moderation/listing-muted-users/get-a-muted-participant-in-an-open-channel Retrieves information about a muted user in an open channel. This includes their mute status, remaining duration, start and end times of the mute, and the reason for the mute. ```APIDOC ## GET /v3/open_channels/{channel_url}/mute/{muted_user_id} ### Description Retrieves information on a muted participant in an open channel. ### Method GET ### Endpoint `https://api-{application_id}.sendbird.com/v3/open_channels/{channel_url}/mute/{muted_user_id}` ### Parameters #### Path Parameters - **channel_url** (string) - Required - Specifies the URL of the target channel. - **muted_user_id** (string) - Required - Specifies the unique ID of the user to check. ### Response #### Success Response (200 OK) - **is_muted** (boolean) - Indicates whether the user is muted in the channel. - **remaining_duration** (long) - The remaining duration, measured in Unix milliseconds, from the start of the mute to the end_at below which indicates when the user becomes unmuted in the channel. A value of -1 indicates that no time limit is imposed on the muted user. (Default: -1) - **start_at** (long) - The time when the user becomes muted in the channel. The value is in Unix milliseconds format. - **end_at** (long) - The time when the user becomes unmuted in the channel. The value is in Unix milliseconds format. A value of -1 indicates that no time limit is imposed on the muted user. (Default: -1) - **description** (string) - The reason for mute. #### Response Example ```json { "is_muted": true, "remaining_duration": 38126218, "start_at": 1543287589000, "end_at": 1543331132000, "description": "too many messages" } ``` ``` -------------------------------- ### init() Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbunavigationtitleview/init%28%29 Initializes SBUNavigationTitleView and sets up subviews, auto layouts, and actions for SendbirdUIKit. ```APIDOC ## init() ### Description Initializes `UIView` and set up subviews, auto layouts and actions for SendbirdUIKit. ### Method `init()` ### Parameters This method does not take any parameters. ### Response Initializes an instance of `SBUNavigationTitleView`. ``` -------------------------------- ### Get Muted Member Source: https://sendbird.com/docs/chat/platform-api/v3/moderation/listing-muted-users/get-a-muted-member-in-a-group-channel Retrieves information about a muted user in a group channel. This includes their mute status, remaining duration, start and end times of the mute, and the reason for the mute. ```APIDOC ## GET /v3/group_channels/{channel_url}/mute/{muted_user_id} ### Description Retrieves information on a muted member in a group channel. ### Method GET ### Endpoint `https://api-{application_id}.sendbird.com/v3/group_channels/{channel_url}/mute/{muted_user_id}` ### Parameters #### Path Parameters - **channel_url** (string) - Required - Specifies the URL of the target channel. - **muted_user_id** (string) - Required - Specifies the unique ID of the user to check. ### Response #### Success Response (200 OK) - **is_muted** (boolean) - Indicates whether the user is muted in the channel. - **remaining_duration** (long) - The remaining duration, measured in Unix milliseconds, until the user becomes unmuted. A value of -1 indicates no time limit. - **start_at** (long) - The time when the user becomes muted in the channel (Unix milliseconds format). - **end_at** (long) - The time when the user becomes unmuted in the channel (Unix milliseconds format). A value of -1 indicates no time limit. - **description** (string) - The reason for the mute. #### Response Example ```json { "is_muted": true, "remaining_duration": 38126218, "start_at": 1543287589000, "end_at": 1543331132000, "description": "relationless messages" } ``` ``` -------------------------------- ### Instance Methods Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuuserprofileviewprotocol Provides methods for dismissing, setting up styles, setting up views, and showing the user profile view. ```APIDOC ## Instance Methods ### `dismiss()` This function dismisses the selector view. **Required** ### `setupStyles()` This function sets up the styles for the view. **Required** ### `setupViews()` This function sets up the views. **Required** ### `show(baseView: UIView, user: SBUUser?)` This function shows the selector view. **Required** ### `show(baseView: UIView, user: SBUUser?, isOpenChannel: Bool)` This function shows the selector view. **Required** ``` -------------------------------- ### Get Quick Reply Usage - With Ticket ID Source: https://sendbird.com/docs/desk/platform-api/v1/features/quick-reply Example of an HTTP request to retrieve quick reply usage for a specific ticket. The `ticket_id` parameter filters the results to a single ticket. ```http ?ticket_id=5849705 ``` -------------------------------- ### init(channelUrl:members:type:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuuserlistviewcontroller/init%28channelurl%3Amembers%3Atype%3A%29 Initializes a new instance of `SBUUserListViewController` with a specified channel URL, a list of users, and an optional channel member list type. ```APIDOC ## init(channelUrl:members:type:) ### Description Initializes a new instance of `SBUUserListViewController` with a specified channel URL, a list of users, and an optional channel member list type. ### Parameters #### Path Parameters * **channelUrl** (String) - Required - The URL of the channel. * **members** ([SBUUser]) - Required - A list of `SBUUser` objects to be displayed. * **type** (ChannelMemberListType) - Optional - The type of channel member list. Defaults to `.members`. ``` -------------------------------- ### Get My Push Tokens (Callback) Source: https://sendbird.com/docs/chat/sdk/v4/android/ref-ktx/-sendbird-chat--k-t-x/com.sendbird.android.ktx.extension/get-my-push-tokens-by-token.html Use this function to request push tokens of the current user from a given token using a callback handler. The `token` parameter can be null to start from the beginning. ```kotlin fun SendbirdChat.getMyPushTokensByToken( token: String?, type: PushTokenType, handler: ResultHandler?) ``` -------------------------------- ### init(mediaType:) Source: https://sendbird.com/docs/chat/uikit/v3/ios-uikit/ref/documentation/sendbirduikit/sbuselectablephotoviewcontroller/init%28mediatype%3A%29 Initializes `SBUSelectablePhotoViewController`. If `mediaType` is nil, all asset types are fetched. ```APIDOC ## init(mediaType:) ### Description Initializes `SBUSelectablePhotoViewController`. ### Parameters #### Parameters - **mediaType** (PHAssetMediaType?) - Optional - A general type of an asset, such as image or video. If it’s `nil`, it fetches all types. ```