class Ably::Models::ProtocolMessage

A message sent and received over the Realtime protocol. A ProtocolMessage always relates to a single channel only, but can contain multiple individual Messages or PresenceMessages. ProtocolMessages are serially numbered on a connection. See the {ably.com/docs/client-lib-development-guide/protocol/ Ably client library developer documentation} for further details on the members of a ProtocolMessage

@!attribute [r] action

@return [ACTION] Protocol Message action {Ably::Modules::Enum} from list of {ACTION}. Returns nil if action is unsupported by protocol

@!attribute [r] auth

@return [Ably::Models::AuthDetails] Authentication details used to perform authentication upgrades over an existing transport

@!attribute [r] count

@return [Integer] The count field is used for ACK and NACK actions. See {http://ably.com/docs/client-lib-development-guide/protocol/#message-acknowledgement message acknowledgement protocol}

@!attribute [r] error

@return [ErrorInfo] Contains error information

@!attribute [r] channel

@return [String] Channel name for messages

@!attribute [r] channel_serial

@return [String] Contains a serial number for a message on the current channel

@!attribute [r] connection_id

@return [String] Contains a string private connection key used to recover this connection

@!attribute [r] message_serial

@return [Bignum] Contains a serial number for a message sent from the client to the server

@!attribute [r] timestamp

@return [Time] An optional timestamp, applied by the service in messages sent to the client, to indicate the system time at which the message was sent (milliseconds past epoch)

@!attribute [r] messages

@return [Array<Message>] A {ProtocolMessage} with a `:message` action contains one or more messages belonging to the channel

@!attribute [r] presence

@return [Array<PresenceMessage>] A {ProtocolMessage} with a `:presence` action contains one or more presence updates belonging to the channel

@!attribute [r] flags

@return [Integer] Flags indicating special ProtocolMessage states

@!attribute [r] attributes

@return [Hash] Access the protocol message Hash object ruby'fied to use symbolized keys