Files
Masterarbeit/QuellCode/CentronERP/docs/reference/architecture/tapi.md
T
Christoph Schwörer f045b99a25 Codebasis als Dateien ins Arbeitsrepo statt als Gitlink
QuellCode/CentronERP war nur als Gitlink (Submodul-Referenz auf 79c1142)
getrackt, ohne .gitmodules und ohne erreichbares Remote. Der
Untersuchungsgegenstand der Versuchsreihe war damit nicht reproduzierbar
gesichert: Ein Klon haette ein leeres Verzeichnis erhalten, und die Belege
der 3.287 Anforderungen waeren nicht ueberpruefbar gewesen.

Umstellung:
- Historie nach c:\DEV\CentronERP_git_snapshot_79c1142 ausgelagert
  (vollstaendig lesbar, enthaelt 79c1142 und Vorgaenger 89ccfd6)
- Gitlink aus dem Index entfernt
- Dateiinhalt aufgenommen: 24.557 Dateien, rund 333 MB

Die verschachtelte .gitignore der Codebasis gilt weiter, Build-Artefakte
bleiben ausgeschlossen. Details in Versuche/Versuch_01/_Codebasis-Nachweis.md
2026-08-26 07:43:51 +02:00

37 lines
1.6 KiB
Markdown

#We use TraySoft AddTAPI.NET component on all our products with TAPI intigration
https://www.traysoft.com/add-tapi-telephony-library
Currently c-entron.NET, c-entron Outlook Addin and ServiceBoard have TAPI-Modules.
The dlls can be found on our network drives under `P:\Entwicklung C#\Components\AddTapi.NET Professional 18.11.2021`
**OUR Traysoft.AddTAPI.dll has been modified to work with .NET 5/6**
If you update this .dll you need to check if this needs to be modified again.
##How to update
First you need a decompiled version of TraySoft.AddTapi.dll. The easiest way to do this is to use dotPeek, decompile the dll and then export as csproj.
Then navigate to the following location:
TapiLine.cs > ProcessIncomingCall
In this method the BeginInvoke call is no longer supported in our new .NET runtimes.
We can simply replace this call with the following code that *should* result in the same behavior.
```
Task.Factory.StartNew(() =>
{
tapiCallHandler.Invoke(call);
});
```
##How to debug
There are a few ways to debug tapi related things:
1. a simple TAPI-Test app under `P:\Entwicklung C#\Components\tapi_test_app` which allows a very low level testing.
2. the product itself of course, there should be vast amounts of logging everywhere (check PhoneManager.cs & TapiPhoneConnectionManager.cs in c-entron.NET)
3. if your product uses the UI in centron.Controls there's a testtool in Centron.Controls.Preview
If you need very low level logging of the AddTapi.dll itself, you can use VS and check the output tab when debugging as the dll writes its log there.