da einige ja schon Ihre Fritz-Box auslesen und das Rufjournal im WebFront anzeigen, habe ich mir gedacht, dass müsste doch mit meiner AGFEO Telefonanlage AS43 auch gehen.
Hat jemand damit schon Erfahrungen gesammelt. Schließlich hat die Anlage ja eine serielle/USB-Anschluß für TAPI und Konfiguration.
bin mal gespannt ob es noch weitere AGFEO-User gibt
so hab doch was hinbekommen.
Die Anruferliste wird aus der Datenbank von TKsuite ausgelesen.TKSuite muss installiert werden.
<?
$text ="";
$Intern =11;//Interne Rufnummer
$inhalt = GetCallerList($Intern);
foreach ($inhalt as $zeile)
{
$text.=date("d.m.y H:i", strtotime($zeile['time']))." ".Str_Replace("#"," intern ",$zeile['number'])."
";
}
Setvalue(52484 /*[SYSTEM\AGFEO\Anruferliste EG]*/ ,$text);
$text ="";
$Intern =20;//Interne Rufnummer
$inhalt = GetCallerList($Intern,10);
foreach ($inhalt as $zeile)
{
$text.=date("d.m.y H:i", strtotime($zeile['time']))." ".Str_Replace("#"," intern ",$zeile['number'])."
";
}
Setvalue(54680 /*[SYSTEM\AGFEO\Anruferliste OG]*/ ,$text);
Function GetCallerlist($Intern,$LastMax= 10){
$ausgabe =ARRAY();
$TkserverDBpfad = "sqlite:\AGFEO\TK-Suite-Server\dbf\call_history.db";//Datenbank pfad ohne Laufwerksbuchstabe
$dbh = new PDO($TkserverDBpfad);
foreach ($dbh->query('SELECT * from callerlist WHERE pbx_user LIKE '.$Intern.' and incoming like 1 ORDER BY pbx_user DESC LIMIT '.$LastMax) as $row)//SQL-Abfrage nach Intern und Anzahl
{
$ausgabe[]= $row;
}
Return $ausgabe;
$dbh = null;
}
?>
Anzeige Datum Uhrzeit und Nummer .
Was ich aber immer noch nicht hinbekommen habe ist die Soap-Verbindung zum TK-Server.Vielleicht kann mir da jemand weiter helfen, die wsdl hab ich anghängt.Bei mir komm immer SOAP Fehler, Dll wurde eingebunden,weil ich noch eine SOAP verbindung hab diese funktioniert auch.
Mit der Soap-Verbindung wäre meiner ansicht nach noch ein Anrufmonitor Im Webfront möglich.
schöne Überraschung - ich hatte das Projekt schon beiseite gelegt
also momentan bin ich noch an Deinem Skript dran, um die lokale DB auszulesen (klappt noch nicht, irgendwie scheinen die Pfadangaben nicht zu passen, wo ist der Laufwerksbuchstabe zu setzen???).
Warum möchtest Du noch über SOAP fahren, da doch die lokale DB die momentanen Anrufer drin hat?
also der pfad ist bei mir C:\AGFEO\TK-Suite-Server\dbf\call_history.db dieser muss einfach ohne laufwerksbuchstabe angegeben werden.
Bei mir sqlite:\AGFEO\TK-Suite-Server\dbf\call_history.db.
Ich hab Windows 7 Installiert ,da ist er Pfad vielleicht anders?
Hast du TKSuite installiert?
Such doch einfach mal nach call_history.db.
Das mit dem Soap aufruf hab ich aufgegeben.
Wenn du die Software von Agfeo installiert hast, dort sieht man welches telefon abgehoben ist,wer mit wem im moment telefoniert und welche Ext S0 belegt sind.Wäre eine Tolle erweiterung gewesen.
folgende Fehlermeldung kommt immer (bei manueller Skriptausführung)
Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in D:\Programme\IP-Symcon\scripts\24591.ips.php:28
Stack trace:
#0 D:\Programme\IP-Symcon\scripts\24591.ips.php(28): PDO->__construct('sqlite:\AGFEO\T...')
#1 D:\Programme\IP-Symcon\scripts\24591.ips.php(9): GetCallerlist(14)
#2 {main}
thrown in D:\Programme\IP-Symcon\scripts\24591.ips.php on line 28
die Zeile 28 ist folgende
$dbh = new PDO($TkserverDBpfad);
was heisst hier: ‚could not find driver‘ ??
habe den Pfad auch auf C:\ kopiert (lag vorher auf D:)
call-history.db ist auch vorhanden und befüllt
OS ist WinXP mit IPS 2.1
AGFEO ist AS 43 mit TK-Suite 4.2.12 (sollte aber keine Rolle spielen)
bzgl. sqlite habe ich was von speziellen „Extensions“ gelesen???
In welchem Pfad befindet sich die Datenbank Call_History.db?
Hab gesehen das IPS auf laufwerk D: läuft ,TKsuite auch? Dann musst du, hab ich gerade getestet,doch das Laufwerk angeben,Also „sqlite:Laufwerk:…“.Sorry bin PHP- Anfänger.
p.s. leider habe ich noch keine Einträge in der contact.db, da meine Anlage eine Version < 8.2 hat und damit noch nicht das Anlagentelefonbuch synchronisiert
jetzt muss ich mal sehen, wie ich ein Update auf die Anlage bekommen (die Firmware ist ja nicht frei verfügbar …)
das mit der Firmware brauchst du eigentlich nicht, ist ja nur zur Syncronisierung
zwischen Anlage und Tksuite.Wenn du deine Kontakte in Tksuite eingibst hast du alles.
Bei sind die Datenbanken mit im Backup,wie ips,Falls was passiert kann ich’s zurrückspielen.
ich hatte unter der alten TK-Suite ein gepflegtes Anlagentelefonbuch. An welches ich jetzt mit der aktuellen TK-Suite nicht mehr zugreifen kann
Eine Synchronisation ab Ver > 8.2 wäre halt schon prima.
Eine manuelle Eingabe in der TK-Suite funktioniert auch nicht richtig, da es offensichtlich mit den Konto ein Problem gibt …
… also muss ich erstmal die AGFEO-Seite in Ordnung bringen …
ansonsten bin ich immer wieder begeisert von Deinem Skript