Compare commits

...

5 Commits

3 changed files with 27 additions and 13 deletions

View File

@@ -23,8 +23,8 @@ type CrmInvoiceConfig struct {
PartnerAudioBookingBH *string `gorm:"column:partner_audio_booking_bh" json:"partner_audio_booking_bh"` PartnerAudioBookingBH *string `gorm:"column:partner_audio_booking_bh" json:"partner_audio_booking_bh"`
PartnerVideoBookingAH *string `gorm:"column:partner_video_booking_ah" json:"partner_video_booking_ah"` PartnerVideoBookingAH *string `gorm:"column:partner_video_booking_ah" json:"partner_video_booking_ah"`
PartnerVideoBookingBH *string `gorm:"column:partner_video_booking_bh" json:"partner_video_booking_bh"` PartnerVideoBookingBH *string `gorm:"column:partner_video_booking_bh" json:"partner_video_booking_bh"`
RoundingFunction *string `gorm:"column:rounding_function" json:"rounding_function"`
RoundBookings *bool `gorm:"column:round_bookings" json:"round_bookings"` RoundBookings *bool `gorm:"column:round_bookings" json:"round_bookings"`
RoundingFunction *bool `gorm:"column:rounding_function" json:"rounding_function"`
SplitBookings *bool `gorm:"column:split_bookings" json:"split_bookings"` SplitBookings *bool `gorm:"column:split_bookings" json:"split_bookings"`
SplitOnDemand *bool `gorm:"column:split_on_demand" json:"split_on_demand"` SplitOnDemand *bool `gorm:"column:split_on_demand" json:"split_on_demand"`
} }

View File

@@ -67,6 +67,8 @@ type CallStat struct {
ClientId int `gorm:"index"` ClientId int `gorm:"index"`
CustomerDnis string CustomerDnis string
CustomerAni string CustomerAni string
ConversationStart *time.Time `gorm:"index"`
ConversationEnd *time.Time `gorm:"index"`
SearchStartTime *time.Time SearchStartTime *time.Time
P1ConnectTime time.Time `gorm:"index"` P1ConnectTime time.Time `gorm:"index"`
P1DisconnectTime time.Time `gorm:"index"` P1DisconnectTime time.Time `gorm:"index"`
@@ -76,18 +78,30 @@ type CallStat struct {
InterpreterAccepted bool InterpreterAccepted bool
InterpreterConnectedCount int InterpreterConnectedCount int
InterpreterConnected bool InterpreterConnected bool
// InterpreterCount int ClientDisconnected bool
// InterpreterConnected bool UtsDuration int
ClientDisconnected bool UtsEntries int
UtsDuration int Status string
UtsEntries int SubStatus string
Status string FirstLanguageId int
SubStatus string LastLanguageId int
FirstLanguageId int FirstInterpreter string
LastLanguageId int
FirstInterpreter string
} }
func (CallStat) TableName() string { func (CallStat) TableName() string {
return "gc_call_stats" return "gc_call_stats"
} }
type Breakdown struct {
ClientConversationId string `gorm:"primaryKey;index"`
InterpreterConversationId string `gorm:"index"`
Timestamp time.Time `gorm:"index"`
Task string
Duration int
Message string
Metadata *string `gorm:"type:json"`
}
func (Breakdown) TableName() string {
return "gc_call_breakdown"
}

View File

@@ -22,9 +22,9 @@ func ExtractWithoutAttributes(base models.AnalyticsConversationWithoutAttributes
var endTime *time.Time var endTime *time.Time
parsedEndTime, err := time.Parse(time.RFC3339, base.ConversationEnd) parsedEndTime, err := time.Parse(time.RFC3339, base.ConversationEnd)
if err != nil { if err != nil {
startTime = nil endTime = nil
} else { } else {
startTime = &parsedEndTime endTime = &parsedEndTime
} }
divisionIdsBytes, err := json.Marshal(base.DivisionIds) divisionIdsBytes, err := json.Marshal(base.DivisionIds)