Package 

Class ChannelBase


  • 
    public class ChannelBase
    
                        

    A class representing a Channel in the Ably REST API. In the REST API, the library is essentially stateless; a Channel object simply represents a channel for making REST requests, and existence of a channel does not signify that there is a realtime connection or attachment to that channel.

    • Method Detail

      • publish

         void publish(String name, Object data)

        Publish a message on this channel using the REST API.Since the REST API is stateless, this request is made independentlyof any other request on this or any other channel.

        Parameters:
        name - the event name
        data - the message payload;
      • publishAsync

         void publishAsync(String name, Object data, CompletionListener listener)

        Publish a message on this channel using the REST API.Since the REST API is stateless, this request is made independentlyof any other request on this or any other channel.

        Parameters:
        name - the event name
        data - the message payload;
        listener - a listener to be notified of the outcome of this message.
      • publish

         void publish(Array<Message> messages)

        Publish an array of messages on this channel. When there aremultiple messages to be sent, it is more efficient to use thismethod to publish them in a single request, as compared withpublishing via multiple independent requests.

        Parameters:
        messages - array of messages to publish.
      • publishAsync

         void publishAsync(Array<Message> messages, CompletionListener listener)

        Asynchronously publish an array of messages on this channel

        Parameters:
        messages - the message
        listener - a listener to be notified of the outcome of this message.
      • history

         PaginatedResult<Message> history(Array<Param> params)

        Obtain recent history for this channel using the REST API.The history provided relqtes to all clients of this application,not just this instance.

        Parameters:
        params - the request params.
      • getMessage

         Message getMessage(String serial)

        Retrieves the latest version of a specific message by its serial identifier.

        This method allows you to fetch the current state of a message, including any updatesor deletions that have been applied since its creation.

        Parameters:
        serial - The unique serial identifier of the message to retrieve.
      • getMessageAsync

         void getMessageAsync(String serial, Callback<Message> callback)

        Asynchronously retrieves the latest version of a specific message by its serial identifier.

        Parameters:
        serial - The unique serial identifier of the message to retrieve.
        callback - A callback to handle the result asynchronously.
      • updateMessage

         void updateMessage(Message message, MessageOperation operation)

        Updates an existing message using patch semantics.

        Non-null fields in the provided message (name, data, extras) will replace the correspondingfields in the existing message, while null fields will be left unchanged.

        Parameters:
        message - A Message object containing the fields to update and the serial identifier.Only non-null fields will be applied to the existing message.
        operation - operation metadata such as clientId, description, or metadata in the version field
      • updateMessage

         void updateMessage(Message message)

        Updates an existing message using patch semantics.

        Non-null fields in the provided message (name, data, extras) will replace the correspondingfields in the existing message, while null fields will be left unchanged.

        Parameters:
        message - A Message object containing the fields to update and the serial identifier.Only non-null fields will be applied to the existing message.
      • updateMessageAsync

         void updateMessageAsync(Message message, MessageOperation operation, CompletionListener listener)

        Asynchronously updates an existing message.

        Parameters:
        message - A Message object containing the fields to update and the serial identifier.
        operation - operation metadata such as clientId, description, or metadata in the version field
        listener - A listener to be notified of the outcome of this operation.
      • updateMessageAsync

         void updateMessageAsync(Message message, CompletionListener listener)

        Asynchronously updates an existing message.

        Parameters:
        message - A Message object containing the fields to update and the serial identifier.
        listener - A listener to be notified of the outcome of this operation.
      • deleteMessage

         void deleteMessage(Message message, MessageOperation operation)

        Marks a message as deleted.

        This operation does not remove the message from history; it marks it as deletedwhile preserving the full message history. The deleted message can still beretrieved and will have its action set to MESSAGE_DELETE.

        Parameters:
        message - A Message message containing the serial identifier.
        operation - operation metadata such as clientId, description, or metadata in the version field
      • deleteMessage

         void deleteMessage(Message message)

        Marks a message as deleted.

        This operation does not remove the message from history; it marks it as deletedwhile preserving the full message history. The deleted message can still beretrieved and will have its action set to MESSAGE_DELETE.

        Parameters:
        message - A Message message containing the serial identifier.
      • deleteMessageAsync

         void deleteMessageAsync(Message message, MessageOperation operation, CompletionListener listener)

        Asynchronously marks a message as deleted.

        Parameters:
        message - A Message object containing the serial identifier and operation metadata.
        operation - operation metadata such as clientId, description, or metadata in the version field
        listener - A listener to be notified of the outcome of this operation.
      • deleteMessageAsync

         void deleteMessageAsync(Message message, CompletionListener listener)

        Asynchronously marks a message as deleted.

        Parameters:
        message - A Message object containing the serial identifier and operation metadata.
        listener - A listener to be notified of the outcome of this operation.
      • getMessageVersions

         PaginatedResult<Message> getMessageVersions(String serial, Array<Param> params)

        Retrieves all historical versions of a specific message.

        This method returns a paginated result containing all versions of the message,ordered chronologically. Each version includes metadata about when and by whomthe message was modified.

        Parameters:
        serial - The unique serial identifier of the message.
        params - Query parameters for filtering or pagination (e.g., limit, start, end).
      • getMessageVersionsAsync

         void getMessageVersionsAsync(String serial, Array<Param> params, Callback<AsyncPaginatedResult<Message>> callback)

        Asynchronously retrieves all historical versions of a specific message.

        Parameters:
        serial - The unique serial identifier of the message.
        params - Query parameters for filtering or pagination.
        callback - A callback to handle the result asynchronously.