Sha256: 15a5469af21913ec852740481e9d8c77460ca798b5010974f395233d48c55cf6

Contents?: true

Size: 712 Bytes

Versions: 1

Compression:

Stored size: 712 Bytes

Contents

module RocketChat
  #
  # Rocket.Chat PresenceStatus
  #
  class PresenceStatus
    # Raw presence status data
    attr_reader :data

    #
    # @param [Hash] data Raw presence status data
    #
    def initialize(data)
      @data = Util.stringify_hash_keys data
    end

    # Presence
    def presence
      data['presence']
    end

    # Connection status
    def connection_status
      data['connectionStatus']
    end

    # Last login
    def last_login
      DateTime.parse data['lastLogin']
    rescue ArgumentError, TypeError
      nil
    end

    def inspect
      format(
        '#<%s:0x%p @presence="%s">',
        self.class.name,
        object_id,
        presence
      )
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rocketchat-0.1.14 lib/rocket_chat/presence_status.rb