Package 

Class ChatClientExtensions

    • Constructor Detail

    • Method Detail

      • queryChannelsAsState

         final static StateFlow<QueryChannelsState> queryChannelsAsState(ChatClient $self, QueryChannelsRequest request, ChatEventHandlerFactory chatEventHandlerFactory, CoroutineScope coroutineScope)

        Performs ChatClient.queryChannels under the hood and returns QueryChannelsState associated with the query. The QueryChannelsState cannot be created before connecting the user therefore, the method returns a StateFlow that emits a null when the user has not been connected yet and the new value every time the user changes.

        You can pass option chatEventHandlerFactory parameter which will be associated with this query channels request.

        Parameters:
        request - The request's parameters combined into QueryChannelsRequest class.
        chatEventHandlerFactory - The instance of ChatEventHandlerFactory that will be used to create ChatEventHandler.
        coroutineScope - The CoroutineScope used for executing the request.
      • queryChannelsAsState

         final static StateFlow<QueryChannelsState> queryChannelsAsState(ChatClient $self, QueryChannelsRequest request, ChatEventHandlerFactory chatEventHandlerFactory)

        Performs ChatClient.queryChannels under the hood and returns QueryChannelsState associated with the query. The QueryChannelsState cannot be created before connecting the user therefore, the method returns a StateFlow that emits a null when the user has not been connected yet and the new value every time the user changes.

        You can pass option chatEventHandlerFactory parameter which will be associated with this query channels request.

        Parameters:
        request - The request's parameters combined into QueryChannelsRequest class.
        chatEventHandlerFactory - The instance of ChatEventHandlerFactory that will be used to create ChatEventHandler.
      • queryChannelsAsState

         final static StateFlow<QueryChannelsState> queryChannelsAsState(ChatClient $self, QueryChannelsRequest request)

        Performs ChatClient.queryChannels under the hood and returns QueryChannelsState associated with the query. The QueryChannelsState cannot be created before connecting the user therefore, the method returns a StateFlow that emits a null when the user has not been connected yet and the new value every time the user changes.

        You can pass option chatEventHandlerFactory parameter which will be associated with this query channels request.

        Parameters:
        request - The request's parameters combined into QueryChannelsRequest class.
      • watchChannelAsState

         final static StateFlow<ChannelState> watchChannelAsState(ChatClient $self, String cid, Integer messageLimit, CoroutineScope coroutineScope)

        Performs ChatClient.queryChannel with watch = true under the hood and returns ChannelState associated with the query. The ChannelState cannot be created before connecting the user therefore, the method returns a StateFlow that emits a null when the user has not been connected yet and the new value every time the user changes.

        Parameters:
        cid - The full channel id, i.e.
        messageLimit - The number of messages that will be initially loaded.
        coroutineScope - The CoroutineScope used for executing the request.
      • watchChannelAsState

         final static StateFlow<ChannelState> watchChannelAsState(ChatClient $self, String cid, Integer messageLimit)

        Performs ChatClient.queryChannel with watch = true under the hood and returns ChannelState associated with the query. The ChannelState cannot be created before connecting the user therefore, the method returns a StateFlow that emits a null when the user has not been connected yet and the new value every time the user changes.

        Parameters:
        cid - The full channel id, i.e.
        messageLimit - The number of messages that will be initially loaded.
      • getRepliesAsState

         final static ThreadState getRepliesAsState(ChatClient $self, String messageId, Integer messageLimit, CoroutineScope coroutineScope)

        Same class of ChatClient.getReplies, but provides the result as ThreadState

        Parameters:
        messageId - The ID of the original message the replies were made to.
        messageLimit - The number of messages that will be initially loaded.
        coroutineScope - The CoroutineScope used for executing the request.
      • getRepliesAsState

         final static ThreadState getRepliesAsState(ChatClient $self, String messageId, Integer messageLimit)

        Same class of ChatClient.getReplies, but provides the result as ThreadState

        Parameters:
        messageId - The ID of the original message the replies were made to.
        messageLimit - The number of messages that will be initially loaded.
      • setMessageForReply

         final static Call<Unit> setMessageForReply(ChatClient $self, String cid, Message message)

        Set the reply state for the channel.

        Parameters:
        cid - CID of the channel where reply state is being set.
        message - The message we want reply to.
      • downloadAttachment

         final static Call<Unit> downloadAttachment(ChatClient $self, Context context, Attachment attachment)

        Downloads the selected attachment to the "Download" folder in the public external storage directory.

        Parameters:
        attachment - The attachment to download.
      • loadOlderMessages

         final static Call<Channel> loadOlderMessages(ChatClient $self, String cid, Integer messageLimit)

        Loads older messages for the channel.

        Parameters:
        cid - The full channel id i.e.
        messageLimit - How many new messages to load.
      • cancelEphemeralMessage

         final static Call<Boolean> cancelEphemeralMessage(ChatClient $self, Message message)

        Cancels the message of "ephemeral" type. Removes the message from local storage and state.

        Parameters:
        message - The ephemeral message to cancel.
      • loadMessageById

         final static Call<Message> loadMessageById(ChatClient $self, String cid, String messageId)

        Loads message for a given message id and channel id.

        Parameters:
        cid - The full channel id i.
        messageId - The id of the message.