Skip to content

CTI transfer transcriptions: duplicated/ghost/00:00:00 rows on blind and consultative transfers #8040

@tommaso-ascani

Description

@tommaso-ascani

QA point 5 of #7143 — call transcriptions on transfers.

Symptoms

  • Blind transfer 203→202→201: 202 sees a duplicate transcription; 203 sees a ghost call 91201 → 201.
  • Consultative transfer: consultative leg shows duration 00:00:00; transcription duplicated and only the 00:00:00 row carries the correct text; ghost 91201 → 201.

Root cause

Persisted transcripts (read by History) are written by ns8-nethvoice freepbx/.../satellite/bin/satellite_transcript, invoked per recording (-u <uniqueid> -l <linkedid>). In its segment loop (~L131) every bridge segment is posted under the same invocation uniqueid:

$segmentUniqueid = $uniqueid;   // all segments → one uniqueid

A transfer recording holds several bridge segments (consultation + post-transfer) to different peers, so all text lands on one CDR row (often the 00:00:00/Local leg) while the other legs stay empty/duplicated.

Fix

  1. ns8-nethvoice satellite_transcript: map each segment to the uniqueid of its own leg (from CEL/CDR), instead of the invocation uniqueid. (Primary)
  2. nethcti-middleware: align the content-filter lookup key to per-leg uniqueid (fetchParticipatedConversationsFromDB is already per-leg).
  3. nethcti-server dbconn_history.js: 00:00:00 billsec on transfer/consultation legs and the ghost 91201 row.

Canonical transcript identity = one per leg (uniqueid); live transcription stays call-level (linkedid).

Metadata

Metadata

Labels

nethvoiceBug or features releted to the NethVoice projectnethvoice-ctiThe issue is related to NethLink (NethVoice Web client)

Type

No fields configured for Bug.

Projects

Status
Done

Relationships

None yet

Development

No branches or pull requests

Issue actions