records.py 1.8 KB

12345678910111213141516171819202122232425
  1. from sqlalchemy import BigInteger, Column, JSON, String, TIMESTAMP, Text, text
  2. from sqlalchemy.dialects.mysql import TINYINT, VARCHAR
  3. from sqlalchemy.orm import declarative_base, mapped_column
  4. Base = declarative_base()
  5. class Records(Base):
  6. __tablename__ = 'records'
  7. id = mapped_column(BigInteger, primary_key=True)
  8. created_at = mapped_column(TIMESTAMP, nullable=False, server_default=text('CURRENT_TIMESTAMP'), comment='Create Time | 创建日期')
  9. updated_at = mapped_column(TIMESTAMP, nullable=False, server_default=text('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'), comment='Update Time | 修改日期')
  10. body = mapped_column(JSON, comment='获取原始数据')
  11. staff_no = mapped_column(String(255, 'utf8mb4_unicode_ci'), server_default=text("''"), comment='坐席工号')
  12. caller = mapped_column(VARCHAR(255), server_default=text("''"), comment='主叫号码')
  13. callee = mapped_column(VARCHAR(255), server_default=text("''"), comment='被叫号码')
  14. record_file = mapped_column(VARCHAR(255), server_default=text("''"), comment='录音文件')
  15. session = mapped_column(VARCHAR(255), server_default=text("''"), comment='通话标识')
  16. ali_trans = mapped_column(JSON, comment='阿里语音识别原始结果')
  17. ali_task_id = mapped_column(String(255, 'utf8mb4_unicode_ci'), server_default=text("''"), comment='阿里语音识别任务ID')
  18. chats = mapped_column(Text(collation='utf8mb4_unicode_ci'), comment='提取的对话记录')
  19. user_intent = mapped_column(String(255, 'utf8mb4_unicode_ci'), server_default=text("''"), comment='判断的用户意图')
  20. basis = mapped_column(String(255, 'utf8mb4_unicode_ci'), comment='用户意图命中的原始文本')
  21. accept = mapped_column(TINYINT, server_default=text("'0'"), comment='用户是否接受邀请 0 未判断 1 接受 2 不接受')