From e39c00105ea93acaf376cb8532172f84c54f28c8 Mon Sep 17 00:00:00 2001 From: Clemens Creutzburg Date: Tue, 8 Sep 2026 13:07:29 +0200 Subject: [PATCH] Bei Telefonanfragen auf die Sprachnachricht in PraxisKI hinweisen anfragen.nachricht enthaelt bei source='telefon' nur das automatisch erzeugte Transkript der Sprachnachricht, das Erkennungsfehler enthalten kann. Bisher war aus der Oberflaeche nicht ersichtlich, dass es die Aufnahme selbst noch gibt und wo sie liegt. Neue Funktion GetSprachnachrichtHinweis() gibt fuer source='telefon' einen Hinweis mit Link auf https://ki-praxis.praxis.local/ aus, fuer jede andere Herkunft einen leeren String. Der Link ist nur aus dem Praxisnetz erreichbar, das steht im Hinweis dabei. Eingesetzt an allen fuenf Stellen, an denen eine Telefonanfrage sichtbar wird: Anfrageliste, Antwortformular, Hinweisseite fuer Anfragen ohne zugeordneten Patienten, Antwort einsehen und Patientenhistorie. Die Abfragen fuer die letzten beiden lasen source bisher nicht mit, die Spalte ist dort ergaenzt. Nachgeprueft gegen die Datenbank: alle vier Abfragen liefern source, und der Hinweis erscheint ueber alle 12785 Anfragen hinweg genau dann, wenn source='telefon' ist - je Zeile geprueft, keine Ausnahme. Beide Dateien bleiben UTF-8 ohne BOM. Co-Authored-By: Claude Opus 5 --- admin/anfragen.php | 7 +++++++ inc/functions.inc.php | 17 +++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/admin/anfragen.php b/admin/anfragen.php index 541ecc2..2bc0b6c 100644 --- a/admin/anfragen.php +++ b/admin/anfragen.php @@ -213,6 +213,7 @@ if(!check_worker()){ // Telefonanfragen liessen sicherenachricht NULL und wurden // dadurch faelschlich als Mailanfrage etikettiert. $WeitereInfos .= GetAnfrageHerkunft($row["source"] ?? "mail", $sicherenachricht) . "
"; + $WeitereInfos .= GetSprachnachrichtHinweis($row["source"] ?? "mail"); if($medikamenteins){ $WeitereInfos .= "Medikament1: $medikamenteins
"; } @@ -353,6 +354,7 @@ if(!check_worker()){ echo "Bitte telefonisch beantworten und die Anfrage anschliessend "; echo "ueber Telefonisch beantwortet abschliessen."; echo ""; + echo GetSprachnachrichtHinweis($row["source"] ?? "mail"); echo "Nachricht:
" . nl2br(e((string)$row["nachricht"])) . "

"; ZuruckzumAnfrageOverView(); echo ""; @@ -400,6 +402,7 @@ if(!check_worker()){ $antworttext = $row["antworttext"] ?? null; $WeitereInfos = ""; + $WeitereInfos .= GetSprachnachrichtHinweis($row["source"] ?? "mail"); if ($medikamenteins) $WeitereInfos .= "Medikament1: $medikamenteins
"; if ($medikamentzwei) $WeitereInfos .= "Medikament2: $medikamentzwei
"; if ($medikamentdrei) $WeitereInfos .= "Medikament3: $medikamentdrei
"; @@ -1081,6 +1084,7 @@ if(!check_worker()){ a.medikament2, a.sicherenachricht, a.abholort, + a.source, p.person_id, p.vorname, @@ -1137,6 +1141,7 @@ if(!check_worker()){ /* --- Anzeige-Strings --- */ $WeitereInfos = ""; + $WeitereInfos .= GetSprachnachrichtHinweis($row["source"] ?? "mail"); if (!empty($medikamenteins)) { $WeitereInfos .= "Medikament1: " . htmlspecialchars($medikamenteins, ENT_QUOTES, 'UTF-8') . "
"; } @@ -1327,6 +1332,7 @@ if(!check_worker()){ a.medikament4, a.medikament5, a.medikament6, + a.source, aa.artname AS anfrageart_name, @@ -1387,6 +1393,7 @@ if(!check_worker()){ $ordnungsstring = GetOrdnungsid($ordnungsid); $WeitereInfos = ""; + $WeitereInfos .= GetSprachnachrichtHinweis($row["source"] ?? "mail"); if (!empty($med1)) $WeitereInfos .= "Medikament1: " . htmlspecialchars($med1, ENT_QUOTES, 'UTF-8') . "
"; if (!empty($med2)) $WeitereInfos .= "Medikament2: " . htmlspecialchars($med2, ENT_QUOTES, 'UTF-8') . "
"; if (!empty($med3)) $WeitereInfos .= "Medikament3: " . htmlspecialchars($med3, ENT_QUOTES, 'UTF-8') . "
"; diff --git a/inc/functions.inc.php b/inc/functions.inc.php index 59ccac6..98e024c 100644 --- a/inc/functions.inc.php +++ b/inc/functions.inc.php @@ -633,6 +633,23 @@ function GetAnfrageHerkunft($source, $sicherenachricht){ return $text; } +/** + * Hinweis auf die Sprachnachricht einer Telefonanfrage. + * + * Die Telefonanlage legt in anfragen.nachricht nur das automatisch erzeugte + * Transkript ab, das Erkennungsfehler enthalten kann. Die Aufnahme selbst + * liegt in PraxisKI und ist nur aus dem Praxisnetz erreichbar. + * Fuer alle anderen Herkuenfte leer. + */ +function GetSprachnachrichtHinweis($source){ + if($source != "telefon"){ + return ""; + } + return "Transkript der Sprachnachricht - Aufnahme anhören: " + . "ki-praxis.praxis.local" + . " (nur im Praxisnetz)
"; +} + function GetPatientenartName($Patientenart){ if($Patientenart == "0"){ $impfenangebot = "Neupatient";