Kurios aber wahr: Ich habe gerade bzw. seit ein paar Wochen gleich zwei Fälle bei denen jeweils eine TAPI-kompatible Anwendung mit gleichem Fehler und Verhalten streiken.
Einmal geht es dabei um Haufe PowerHaus und einmal um Acadoro. Eine Gemeinsamkeit konnte bislang nicht festgestellt werden, so hat der eine Kunde eine 3CX-Telefonanlage, der andere eine Telekom DigitalisierungsBox Premium, beim einen ist’s Windows 7, beim anderen Windows 10, beide Software-Hersteller sagen das sie ihre jeweilige TAPI-Integration selbst programmiert hätten und (wie immer) überall anders läuft, usw.
Bei Acadoro im Log des Anrufmonitors sieht das so aus:
06.05.2019 11:41:02 : Information: Tapi line found: bintec elmeg TK-Anlage NSt. 21 06.05.2019 11:41:02 : Information: Iterating Tapi Lines for incoming lines: 06.05.2019 11:41:02 : Information: Tapi line: bintec elmeg TK-Anlage NSt. 21 06.05.2019 11:41:02 : Information: Tapi line found: bintec elmeg TK-Anlage NSt. 21 06.05.2019 11:41:02 : Information: MonitorIncomingCall() called 06.05.2019 11:41:02 : Information: MonitorIncomingCall() Error: Cannot open line 'bintec elmeg TK-Anlage NSt. 21', TAPI error 80000048. The operation failed for an unspecified reason. 06.05.2019 11:41:02 : Information: IntializeWebService(): initializing paths 06.05.2019 11:41:03 : Information: IntializeWebService(): initializing connections finished 06.05.2019 11:41:04 : Information: GetCallHistory Called 06.05.2019 11:41:04 : Information: GetCallHistory Finished
Hier fällt der Fehlercode 80000048 (“Der Vorgang schlug aus unbekannten Gründen fehl.”) auf. In diesem Log bei eingehenden Rufen.
Bei PowerHaus bekommt man das Log nach einem Klick auf “Tapi-Protokoll” unter
Erweiterungen - Telefon/SMS-Anbindung - Einstellungen
das Protokoll angezeigt. Auf dem PC findet man dieses übrigens unter
%AppData%\Haufe\PwrTapi.log
Im Fehlerfall sieht das bei PowerHaus in Verbindung mit 3CX PBX, 3CX Phone und MultiLine-TAPI so aus:
[04.Jun.2019 08:51:26] [Info] ========================== [04.Jun.2019 08:51:26] [Info] aktuelle Konfig-Parameter: [04.Jun.2019 08:51:26] [Info] ========================== [04.Jun.2019 08:51:26] [Info] PwrTapi-Version: 13.0.5700.0 vom 13.02.2013 17:59:18 [04.Jun.2019 08:51:26] [Info] Tapi-Device: 204 : Name [04.Jun.2019 08:51:26] [Info] Tapi-Device-ID: 5 [04.Jun.2019 08:51:26] [Info] Tapi-Provider: 3CX Multiline TAPI Service Provider [04.Jun.2019 08:51:26] [Info] Tapi-Init CPOwner: true [04.Jun.2019 08:51:26] [Info] Tapi-Init CPNone: true [04.Jun.2019 08:51:26] [Info] Tapi-Init CPMonitor: true [04.Jun.2019 08:51:26] [Info] Database: srv01:c:/haufe/pwrhaus/dat [04.Jun.2019 08:51:26] [Info] Database DOS: P:\PWRHaus\dat [04.Jun.2019 08:51:26] [Info] CutNull: true [04.Jun.2019 08:51:26] [Info] DisplayPopup: true [04.Jun.2019 08:51:26] [Info] DisplayDialCancel: false [04.Jun.2019 08:51:26] [Info] IgnoreInternal: false [04.Jun.2019 08:51:26] [Info] TelAnlage: false [04.Jun.2019 08:51:26] [Info] AnzJournalTage: 1 [04.Jun.2019 08:51:26] [Info] TelStammnr: [04.Jun.2019 08:51:26] [Info] TelDurchwahl: 2 [04.Jun.2019 08:51:26] [Info] TelAmtsholung: 0 [04.Jun.2019 08:51:26] [Info] TelAreaCode: +49 [04.Jun.2019 08:51:26] [Info] TelVorwahl: 06021 [04.Jun.2019 08:51:26] [Info] JournalRefresh: 30 [04.Jun.2019 08:51:26] [Info] DBGuardian: 0 [04.Jun.2019 08:51:26] [Info] IgnoreList: [04.Jun.2019 08:51:26] [Info] TotalIgnoreList: [04.Jun.2019 08:51:26] [Info] Show TAPI Errors: true [04.Jun.2019 08:51:26] [Info] ========================== [04.Jun.2019 08:51:26] [Info] TAPILineService beenden... [04.Jun.2019 08:51:26] [Info] TAPILineService neu aktivieren... [04.Jun.2019 08:51:26] [Info] TAPILineService neu aktiviert! [04.Jun.2019 08:51:26] [Info] InitTAPI Device: 5 (204 : Name) [04.Jun.2019 08:51:26] [Info] CheckDeviceID: OK [04.Jun.2019 08:51:37] [Error] LINEERR_NOTREGISTERED, 0x80000047 (2147483719) -> Konfiguration [04.Jun.2019 08:51:37] [Info] Aufruf des Konfigurationsdialogs... [04.Jun.2019 08:51:37] [Info] TAPI Geräte suchen [04.Jun.2019 08:51:37] [Info] gefundenes Gerät 0: AgileVPN [04.Jun.2019 08:51:37] [Info] gefundenes Gerät 1: WAN Miniport (L2TP) [04.Jun.2019 08:51:37] [Info] gefundenes Gerät 2: RAS PPPoE Line [04.Jun.2019 08:51:37] [Info] gefundenes Gerät 3: PPTP [04.Jun.2019 08:51:37] [Info] gefundenes Gerät 4: SSTP [04.Jun.2019 08:51:37] [Info] gefundenes Gerät 5: 204 : Name [04.Jun.2019 08:51:37] [Info] Gerät zur Liste hinzugefügt: 204 : Name [04.Jun.2019 08:51:37] [Info] Caps des Gerätes: AddressModes=[amAddressID] [04.Jun.2019 08:51:37] [Info] AddressTypes=[latPhoneNumber,latSDP,latIPAddress] [04.Jun.2019 08:51:37] [Info] AnswerMode=(lamUnkown) [04.Jun.2019 08:51:37] [Info] AvailableTracking=(lchtNone) [04.Jun.2019 08:51:37] [Info] BearerModes=[bmVoice] [04.Jun.2019 08:51:37] [Info] DevCapFlags=[ldcfCloseDrop] [04.Jun.2019 08:51:37] [Info] DeviceClasses (TStringList) [04.Jun.2019 08:51:37] [Info] DeviceID=5 [04.Jun.2019 08:51:37] [Info] DevSpecific='' [04.Jun.2019 08:51:37] [Info] GaterDigitsMaxTimeout=0 [04.Jun.2019 08:51:37] [Info] GaterDigitsMinTimeout=0 [04.Jun.2019 08:51:37] [Info] GenerateDigitModes=[ldmDTMF] [04.Jun.2019 08:51:37] [Info] GenerateToneMaxNumFreq=0 [04.Jun.2019 08:51:37] [Info] GenerateToneModes=[] [04.Jun.2019 08:51:37] [Info] LineFeatures=[lfMakeCall] [04.Jun.2019 08:51:37] [Info] LineStates=[dsOpen,dsClose,dsReInit,dsTranslateChange] [04.Jun.2019 08:51:37] [Info] MaxNumActiveCalls=1 [04.Jun.2019 08:51:37] [Info] MaxRate=0 [04.Jun.2019 08:51:37] [Info] MedCtlCallStateMaxListSize=0 [04.Jun.2019 08:51:37] [Info] MedCtlDigitMaxListSize=0 [04.Jun.2019 08:51:37] [Info] MedCtlMediaMaxListSize=0 [04.Jun.2019 08:51:37] [Info] MedCtlToneMaxListSize=0 [04.Jun.2019 08:51:37] [Info] MediaModes=[mmInteractiveVoice,mmVideo] [04.Jun.2019 08:51:37] [Info] MonitorDigitModes=[] [04.Jun.2019 08:51:37] [Info] MonitorToneMaxNumEntries=0 [04.Jun.2019 08:51:37] [Info] MonitorToneMaxNumFreq=0 [04.Jun.2019 08:51:37] [Info] Name='204 : Name' [04.Jun.2019 08:51:37] [Info] NumAddresses=1 [04.Jun.2019 08:51:37] [Info] NumTerminals=0 [04.Jun.2019 08:51:37] [Info] PermanentLineID=5 [04.Jun.2019 08:51:37] [Info] ProviderInfo='3CX Multiline TAPI Service Provider' [04.Jun.2019 08:51:37] [Info] RingModes=0 [04.Jun.2019 08:51:37] [Info] SettableDevStatus=[] [04.Jun.2019 08:51:37] [Info] StringFormat=(sfASCII) [04.Jun.2019 08:51:37] [Info] SwitchInfo='' [04.Jun.2019 08:51:37] [Info] TerminalCaps (TTermCaps) [04.Jun.2019 08:51:37] [Info] TerminalText (TStringList) [04.Jun.2019 08:51:37] [Info] UUIAcceptSize=0 [04.Jun.2019 08:51:37] [Info] UUIAnswerSize=0 [04.Jun.2019 08:51:37] [Info] UUICallInfoSize=0 [04.Jun.2019 08:51:37] [Info] UUIDropSize=0 [04.Jun.2019 08:51:37] [Info] UUIMakeCallSize=0 [04.Jun.2019 08:51:37] [Info] UUISendUserUserInfoSize=0
Herausstehen tut dabei die Zeile
[04.Jun.2019 08:51:37] [Error] LINEERR_NOTREGISTERED, 0x80000047 (2147483719) -> Konfiguration
Es geht also schon irgendwas beim Starten/Initialisieren schief. Leider findet sich zu den Fehlercodes nicht allzu viel. Interessant sind folgende Seiten:
3CX Forum – TAPI für ERP einrichten
MS Windows Dev Center – TAPI – LINEERR_ Constants
grutzeck.de – Auflistung aller möglichen TAPI Fehlermeldungen
Der Fehlercode besagt “Die Anwendung ist nicht für das Bearbeiten von Anforderungen registriert.”
Seltsamerweise funktionieren alle anderen getesteten TAPI-Anwendungen. Nimmt man also z.B. die Wählhilfe (“dialer.exe”), Outlook oder Phoner klappt das Anrufen und angerufen werden. Ich tippe mal auf ein Timing-Problem beim Initialisieren, ist aber reine Spekulation. Als möglicher workaround kann man bevor man die genannten Anwendungen startet erstmal die “dialer.exe” (bei PowerHaus) oder Phoner (bei Acadoro) starten. Das hilft zumindest schonmal etwas.
Mit beiden Herstellern bin ich an der Sache noch dran und hoffe auf Lösung.
Update 19.09.2019
Wenn auch etwas spät ein kleines Update zu dieser Sache: Wie es scheint, ist’s die Kombi. Soll heißen: 3CX TAPI und PowerHaus vertragen sich nur bedingt. Als Plan B und mit wesentlich mehr Erfolg konnten wir die TAPI for Snom testen. Das hilft natürlich nur, wenn man snom-Telefone im Einsatz hat.
Bei bzw. mit Acadoro und der DigiBox Premium sind wir leider noch nicht weiter.
Update 01.12.2020
In Verbindung mit 3CX kann man evtl. auf eine alternative TAPI zurückgreifen. Siehe dazu:
3CX: Alternative (third-party) TAPI
Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.
erst mal herzlichen Dank für die vielen hilfreichen Artikel.
Gibt es zu dem Powerhaus Problem ein Update bzw. eine Lösung?
Wie im Beitrags-Update vom 19.09.2019 beschrieben half bei PowerHaus nur die Verwendung einer anderen TAPI und zwar die von bzw. für snom-Telefone von PhoneSUite anstatt der TAPI von 3CX.
Wir entwickeln selbst eine CRM Software für Handelsvertreter (www.emptores.de). Hier gab es bei der Initialisierung der 3CX TAPI ebenfalls das oben beschriebene Problem. Deine Vermutung ist richtig – es ist ein “Zeitproblem”, d. h. die 3CX TAPI scheint asynchron zu arbeiten und kommt nicht damit klar, wenn man direkt nach dem tapi.Initialize() die Leitung anspricht. Lösung ist eine Wartezeit von 5 Sekunden nach Initialisierung.
Super informative Seite!
Ein Kunde hat uns hierauf aufmerksam gemacht und wir testen gerade, ob 5 Sekunden warten nach Initialisierung in PhoneMondo bei den 3CX Tapi Treibern helfen wird.
Vielen Dank für den Tipp!