@OptIn(ExperimentalCoroutinesApi::class) @InternalStreamChatApi @Suppress("TooManyFunctions") public class MessageComposerController( private val channelId: String, private val chatClient: ChatClient = ChatClient.instance(), private val maxAttachmentCount: Int = AttachmentConstants.MAX_ATTACHMENTS_COUNT,private val maxAttachmentSize: Long = AttachmentConstants.MAX_UPLOAD_FILE_SIZE, ) { }
Controller responsible for handling the composing and sending of messages. It acts as a central place for both the core business logic and state required to create and send messages, handle attachments, message actions and more. If you require more state and business logic, compose this Controller with your code and apply the necessary changes.