Skip to main content

Rufumleitung ohne Funktion

Beschreibung

Durch einen Datenbankfehler nach einem Softwareupdate oder einer Neuinstallation ab LocaPhone-Version 4.81.0 funktionieren Rufumleitungen teilweise nicht oder nicht richtig.

[PHONE-819] [core] software update causes call forward malfunction
[PHONE-330] [dialplan] call diversion does not work


LocaPhone Version

5.5.0 RELEASE 5 RELEASE 4 RELEASE 3 RELEASE 2


Workaround zur manuellen Fehlerbehebung

LocaPhone ab Version 5.5.0

In LocaPhone Version 5.5.0 ist das Fehlverhalten von Rufumleitungen korrigiert.

Bei Updates auf Version 5.5.0 müssen vorhandene Rufumleitungen händisch korrigiert werden. Ab LocaPhone Version 5.5.0 wird dazu ein Script zum automatischen Korrigeren von fehlerhaften Rufumleitungen bereitgestellt.

root@voip:~#
BASH
root@voip:/# /usr/share/doc/locaphone5.0-core/callforwards_rewrite_all.php
-----------------------------------------------------------------
Rewriting rules for user 20 with ID: 4
Found Profile ID: 2
Deleting rule IDs: 9,10,11,12,13,14,15,16,
Setting up new rules for user 20
-----------------------------------------------------------------
Rewriting rules for user 21 with ID: 8
Found Profile ID: 
Info: No cf_profile rules found 
-----------------------------------------------------------------
Rewriting rules for user 22 with ID: 37
Found Profile ID: 1
Deleting rule IDs: 1,2,3,4,5,6,7,8,
Setting up new rules for user 22
-----------------------------------------------------------------

Bei Benutzung dieses Scriptes werden Benutzer-Regeln zurückgesetzt/entfernt!

LocaPhone bis Version 5.4.1

Der Fehler kann in der LocaPhone MySQL Datenbank 'asterisk' korrigiert werden:

  • in der Tabelle 'users' in Spalte 'user' die betroffene Benutzer-'id' heraussuchen

  • in der Tabelle 'cf_profiles' in der Spalte 'entity_id' ist diese Benutzer-'id' eingetragen, wenn eine Rufumleitung ('cf-shadow') eingerichtet ist

  • dieser Eintrag 'cf-shadow' hat ebenfalls eine 'id', welche in der Tabelle 'cf_profiles_active' in der Spalte 'profile_id' eingetragen sein muß

  • fehlt dieser Eintrag, so kann dieser einfach hinzugefügt werden.

Folgende MySQL-Abfrage liefert die fehlerhaften IDs aus:

CODE
SELECT `p`.`id`, `p`.`entity_id`, `p`.`entity_type`
FROM `cf_profiles` `p`
LEFT JOIN `cf_profiles_active` `a` ON ( `a`.`profile_id` = `p`.`id`)
WHERE (`p`.`entity_type`= 'su' OR `p`.`entity_type`= 'su' ) AND  `a`.`profile_id` IS NULL ;

Die aufgelisteten IDs lassen sich nun wieder hinzufügen:

CODE
INSERT INTO `asterisk`.`cf_profiles_active` (profile_id) VALUES ('<FEHLERHAFTE ID EINFÜGEN>');

Danach sollte die Rufumleitung wieder funktionieren. In seltenen Einzelfällen (Rufumleitung funktioniert nur teilweise für intern oder extern, und die 'cf-shadow-id' ist in 'cf_profiles_active' hinterlegt) kann es notwendig sein, sämtliche Verweise des Benutzers in den cf-Tabellen zu löschen, und die Rufumleitung erneut aus dem WebUI abspeichern zu lassen.

Alternativ kann man den entsprechenden Benutzer komplett löschen und neu anlegen.



JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.