class StreamEvent < ApplicationRecord
  EVENT_TYPES = %w[
    connected disconnected reconnected quality_changed error paused resumed
    started ended network_test pairing
  ].freeze

  belongs_to :stream_session

  validates :event_type, inclusion: { in: EVENT_TYPES }
  validates :occurred_at, presence: true

  scope :recent, -> { order(occurred_at: :desc) }
end
