Hallo nochmal,
Allerdings meine Kontaktverwaltung-Anwendung ist reine
PHP-Anwendung mit MySQL DB im Hintergrund und bietet keine
TAPI-Unterstützung an. Was heißt an dieser Stelle
TAPI-Unterstützung?
Der TAPI-Standard stellt einige standardisierte Kommandos und Rückmeldungen zur Verfügung, die eben von einer anderen Software gesendet bzw. empfangen werden können. D.h. die andere Software muss die Option bieten TAPI-Kommandos zu senden und TAPI-Antworten auswerten zu können. Ich bin selbst kein großer Programmierer oder TAPI-Intimkenner, aber so ungefähr folgendermaßen sieht die Sache aus, wenn ich in Outlook einen Anruf über TAPI machen möchte:
-
Im Kontextmenü der Kontakte ist ein Eintrag „Kontakt anrufen“ vorhanden. Wir dieser ausgewählt wird der Anruf ungefähr wie folgt aufgebaut.
-
Outlook prüft ob eine TAPI installiert ist.
-
Wenn ja, dann sendet Outlook das Kommando Rufaufbau zu Nummer 051112345 (wobei die Nummer aus dem Kontakt stammt, bei dem ich das Kontextmenü aufgerufen habe)
-
TAPI meldet zurück, dass das Gespräch aufgebaut wird
-
Outlook empfängt diese Nachricht, öffnet einen Dialog und zeigt darin an, dass das Gespräch aufgebaut wird (der Dialog bleibt bis Ende des Gesprächs offen, damit man hierüber z.B. die Wahl abbrechen oder das Gespräch beenden kann)
-
Wenn die TAPI ein Freizeichen bekommt, meldet sie an Outlook, dass das Gespräch aufgebaut ist und lässt mein Telefon klingeln, damit ich das Gespräch führen kann (da ich eine LAN-TAPI einsetze, muss die TAPI natürlich meinen PC meinem Telefon zuordnen)
-
Outlook zeigt natürlich auch an, dass die Verbindung jetzt besteht.
-
Ich kann jetzt entweder über den Dialog oder durch das Auflegen des Hörers das Gespräch beenden. D.h. die Kommunikation zwischen Outlook und TAPi bleibt während des Gesprächs bidirektional bestehen.
Ja, ich würde auch gerne wissen, wie kann ich aus einer
Webanwendung einen Tapi-Treiber direkt auf dem Client
ansprechen. Ist es überhaupt möglich aus der PHP-Code heraus
mittels TAPI Schnittstelle die Telefonanlage anzusprechen?
Wie schon gesagt, ich bin kein großer Programmierer. Aber wenn Du in der Anwendung in der Lage bist Events lokaler Komponenten zu lesen und auszuwerten und lokal installierte Software ansteuern kannst, dann würde dies grundsätzlich gehen.
Was ich nicht weiß ist, wie bei einer Einzelplatz-TAPI die Zuordnung zum Telefon geregelt ist, ob ich diese also bei jedem Gesprächsaufbau angeben kann oder ob diese eher über die TK-Anlage und deren Konfiguration läuft. Wenn ich die Zuordnung bei jedem Gespräch machen kann, dann kann ich natürlich auch eine Einzelplatz-TAPI auf dem Anwendungsserver installieren (was die Kommunikation der Anwendung mit Client-Komponenten erübrigt) und entweder das Telefon jeweils manuell auswählen lassen oder über eine Userverwaltung zuordnen. Grundsätzlich würde ich so einer Lösung ohnehin den Vorzug geben, weil Du den Server in eigener Hoheit hast und es in deiner eigenen Verantwortung liegt, dass dieser Punkt zu Punkt mit der TK-Anlage richtig spielt. Bei Clientkomponenten hat man immer das Problem, dass man sich darauf verlassen muss, dass die Clients nicht verfummelt sind.
Gruß vom Wiz