Class PresenceMessage

java.lang.Object
io.ably.lib.types.BaseMessage
io.ably.lib.types.PresenceMessage
All Implemented Interfaces:
Cloneable

public class PresenceMessage extends BaseMessage implements Cloneable
A class representing an individual presence update to be sent or received via the Ably Realtime service.
  • Field Details

  • Constructor Details

    • PresenceMessage

      public PresenceMessage()
      Default constructor
    • PresenceMessage

      public PresenceMessage(PresenceMessage.Action action, String clientId)
      Construct a PresenceMessage from an Action and clientId
      Parameters:
      action -
      clientId -
    • PresenceMessage

      public PresenceMessage(PresenceMessage.Action action, String clientId, Object data)
      Generic constructor
      Parameters:
      action -
      clientId -
      data -
  • Method Details

    • toString

      public String toString()
      Generate a String summary of this PresenceMessage
      Overrides:
      toString in class Object
      Returns:
      string
    • clone

      public Object clone()
      Overrides:
      clone in class Object
    • fromEncoded

      public static PresenceMessage fromEncoded(com.google.gson.JsonObject messageJsonObject, ChannelOptions channelOptions) throws MessageDecodeException
      Decodes and decrypts a deserialized PresenceMessage-like object using the cipher in ChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.

      Spec: TP4

      Parameters:
      messageJsonObject - The deserialized PresenceMessage-like object to decode and decrypt.
      channelOptions - A ChannelOptions object containing the cipher.
      Returns:
      A PresenceMessage object.
      Throws:
      MessageDecodeException
    • fromEncoded

      public static PresenceMessage fromEncoded(String messageJson, ChannelOptions channelOptions) throws MessageDecodeException
      Decodes and decrypts a deserialized PresenceMessage-like object using the cipher in ChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.

      Spec: TP4

      Parameters:
      messageJson - The deserialized PresenceMessage-like object to decode and decrypt.
      channelOptions - A ChannelOptions object containing the cipher.
      Returns:
      A PresenceMessage object.
      Throws:
      MessageDecodeException
    • fromEncodedArray

      public static PresenceMessage[] fromEncodedArray(com.google.gson.JsonArray presenceMsgArray, ChannelOptions channelOptions) throws MessageDecodeException
      Decodes and decrypts an array of deserialized PresenceMessage-like object using the cipher in ChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.

      Spec: TP4

      Parameters:
      presenceMsgArray - An array of deserialized PresenceMessage-like objects to decode and decrypt.
      channelOptions - A ChannelOptions object containing the cipher.
      Returns:
      An array of PresenceMessage object.
      Throws:
      MessageDecodeException
    • fromEncodedArray

      public static PresenceMessage[] fromEncodedArray(String presenceMsgArray, ChannelOptions channelOptions) throws MessageDecodeException
      Decodes and decrypts an array of deserialized PresenceMessage-like object using the cipher in ChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.

      Spec: TP4

      Parameters:
      presenceMsgArray - An array of deserialized PresenceMessage-like objects to decode and decrypt.
      channelOptions - A ChannelOptions object containing the cipher.
      Returns:
      An array of PresenceMessage object.
      Throws:
      MessageDecodeException
    • memberKey

      public String memberKey()
      Combines clientId and connectionId to ensure that multiple connected clients with an identical clientId are uniquely identifiable. A string function that returns the combined clientId and connectionId.

      Spec: TP3h

      Returns:
      A combination of clientId and connectionId.