48 lines
1.6 KiB
Ruby
48 lines
1.6 KiB
Ruby
# == Schema Information
|
|
#
|
|
# Table name: conversation_crm_insights
|
|
#
|
|
# id :bigint not null, primary key
|
|
# confidence :float
|
|
# contact_sessions_count :integer default(0), not null
|
|
# error_message :text
|
|
# generated_at :datetime
|
|
# last_contact_at :datetime
|
|
# model :string
|
|
# schema_version :string
|
|
# status :string default("success")
|
|
# structured_data :jsonb
|
|
# summary_text :text
|
|
# created_at :datetime not null
|
|
# updated_at :datetime not null
|
|
# account_id :bigint
|
|
# contact_id :bigint not null
|
|
# conversation_id :bigint not null
|
|
# range_from_message_id :bigint
|
|
# range_to_message_id :bigint
|
|
#
|
|
# Indexes
|
|
#
|
|
# idx_on_conversation_id_generated_at_44d5836366 (conversation_id,generated_at)
|
|
# index_conversation_crm_insights_on_account_id (account_id)
|
|
# index_conversation_crm_insights_on_contact_id (contact_id)
|
|
# index_conversation_crm_insights_on_conversation_id (conversation_id)
|
|
# index_conversation_crm_insights_on_status (status)
|
|
#
|
|
# Foreign Keys
|
|
#
|
|
# fk_rails_... (account_id => accounts.id)
|
|
# fk_rails_... (contact_id => contacts.id)
|
|
# fk_rails_... (conversation_id => conversations.id)
|
|
#
|
|
class ConversationCrmInsight < ApplicationRecord
|
|
belongs_to :conversation
|
|
belongs_to :contact
|
|
|
|
validates :conversation_id, presence: true
|
|
validates :contact_id, presence: true
|
|
|
|
scope :success, -> { where(status: 'success') }
|
|
scope :failed, -> { where(status: 'failed') }
|
|
end
|