from sqlalchemy import Column, BigInteger, Integer, String, Text, DateTime, func from ..database import Base class StreamEvent(Base): __tablename__ = "stream_events" id = Column(BigInteger, primary_key=True, index=True) channel_id = Column(Integer, nullable=True, index=True) channel_name = Column(String(500), nullable=True) provider_name = Column(String(200), nullable=True) event_type = Column(String(50), nullable=False, index=True) # caida | recuperado domain = Column(String(300), nullable=True) error_message = Column(Text, nullable=True) attempt_number = Column(Integer, nullable=True) pump_duration_secs = Column(Integer, nullable=True) # seconds ffmpeg ran (caĆ­da) or outage length (recuperado) created_at = Column(DateTime(timezone=True), server_default=func.now(), index=True)