feat: Add call duration to call detail view
This commit is contained in:
@@ -52,11 +52,18 @@ func (s *CallFlowStore) AddPacket(p *Packet) *CallFlow {
|
||||
}
|
||||
|
||||
flow, exists := s.flows[p.CallID]
|
||||
|
||||
// Determine timestamp to use
|
||||
ts := p.Timestamp
|
||||
if ts.IsZero() {
|
||||
ts = time.Now()
|
||||
}
|
||||
|
||||
if !exists {
|
||||
flow = &CallFlow{
|
||||
CallID: p.CallID,
|
||||
Packets: make([]*Packet, 0),
|
||||
StartTime: time.Now(),
|
||||
StartTime: ts,
|
||||
From: p.From,
|
||||
To: p.To,
|
||||
State: CallStateInitial,
|
||||
@@ -65,7 +72,10 @@ func (s *CallFlowStore) AddPacket(p *Packet) *CallFlow {
|
||||
}
|
||||
|
||||
flow.Packets = append(flow.Packets, p)
|
||||
flow.EndTime = time.Now()
|
||||
// Always update EndTime to the latest packet's timestamp
|
||||
if ts.After(flow.EndTime) {
|
||||
flow.EndTime = ts
|
||||
}
|
||||
|
||||
// Update call state based on packet
|
||||
s.updateState(flow, p)
|
||||
|
||||
Reference in New Issue
Block a user