from datetime import datetime from app import db from sqlalchemy import Column, Integer, DateTime, String from sqlalchemy.dialects.postgresql import JSON class Recording(db.Model): __tablename__ = 'recordings' id = Column(Integer, primary_key=True) recorded_at = Column(DateTime, index=True, default=datetime.utcnow()) received_at = Column(DateTime, index=True, default=datetime.utcnow()) device_id = Column(Integer) record_type = Column(Integer, nullable=False) record_value = Column(String, nullable=False) raw_record = Column(JSON, nullable=True) def __init__(self, device_id, record_type, record_value, recorded_at, raw_json): self.device_id = int(device_id) self.record_type = int(record_type) self.record_value = str(record_value) self.recorded_at = datetime.fromtimestamp(int(recorded_at)) self.received_at = datetime.utcnow() self.raw_record = raw_json def __repr__(self): return '' % ( self.record_value, self.recorded_at)