Reference8:Release Notes TAPI
These release notes describe the V8 (that is, pbx800.wsdl based) TAPI driver implementation.
Please see the disclaimer before using the information presented here!
V8 Change Requests
1022 - Support for multi-Party Conferences
Ticket #53063. Allows users to set up a conference. Involves lineSetupConference, lineAddToConference,lineRemoveFromConference. This might be implemented using PBX bc-conf objects.
1083 - tapi: notify held/retrieved status on far end
Ticket #53800. allows for better visibility of transfer operations on the transferred end.
V8 Hotfix 1
1330 - config option ClearFwdOnSet to accomodate different behaviour when setting call forwards
Ticket #60202. The tapi spec is somewhat unclear on how lineForward actually works. As a result, applications behave different. Some assume that setting call forwards actually modify the current settings. Others assume that they replace the settings. This cannot be known by the service provider.
To work around this issue, a new configuration option ClearFwdOnSet was introduced. If set to a non-zero DWORD value, the replace-semantic is assumed.
1328 - lineForward() did not work for lines with no registration
Ticket #60186. Call forwards could only be set if there was at least one registration on the line.
1329 - trap when monitoring user with very large user record
Ticket #60188. The TSP fails during startup when a user with a very large user record is monitored. This may happen for users which store larger personal phone configs. Moving the phone config fully or partly in to a template object may help to work around this problem.
V8 Hotfix 2
1914 - Trap when invalid destination address is dialled
Ticket #68454. For example, a call to "^1" will cause a TSP trap.
1913 - Write Dump File when TSP crashes
Ticket #68452. Enables better problem analysis
V8 Hotfix 3
3057 - Ability to configure an un-encrypted user/password
Ticket #87155. See Rolling_out_First_Party_TSPs_to_multiple_PCs
3061 - Ability to disable 3PTY special treatment for all lines
Ticket #87161. The TSP will detect 3PTY situation on IP phones and announce them to the TAPI application appropriately. Some TAPI applications however get confused with 3PTY calls and cannot handle them correctly. If this feature is enabled, 3PTY calls will be shown as normal unrelated calls to the TAPI application.
3064 - allow more parallel threads to work with a higher number of PBXs
Ticket #87164. when maximum number of threads is exceeded, response times will be slow. See System Requirements
3062 - Changed generation of Call-IDs when transferring calls
Ticket #87162. Changed calling sequence of UserTransfer arguments to ensure a consistent und useful setting of the CALLIDs of the calls remaining after a transfer.
3065 - Do not retrieve user configuration for objects named '*'
Ticket #87165. Possible trap when calling Admin() on objects named '*'.
3058 - Memory Debug Feature
Ticket #87156. Debug Version only
3063 - performance improvements for slow networks
Ticket #87163. handles line initializations and destructions asynchronously, avoiding sluggish response times when PBXs come and go
3060 - Proprietary Support for SOAP UserRc
Ticket #87158. Ability to send SOAP UserRc to arbitrary calls (abusing lineBlindTransfer with magic called name "USERRC" and facility in called subbaddress)
3067 - re-initialize pbx connector when connect fails (solves some COM initialization problems
3066 - Trap on long PBX Admin() Result
Ticket #87166. long pbx Admin() result may trap TSP. This happens when there is a monitored line where the name starts with asterisk ('*') when using PBX firmware prior to V9 hotfix 17.
V8 Hotfix 4
3220 - 3PTY detection broken for some type of phones (e.g. SoftwarePhone)
Ticket #89654. results in being unable to drop the conference
3169 - Failback from Slave-Standby may fail
Ticket #88545. fix for #87163 which made fail-back from slave-standby to slave impossible
3168 - Option to show full calling number from root
Ticket #88544. Option to signal full calling number from root-node for incoming calls ("Show full E164 Numbers") in calling name, separated by "@" (e.g. name@497031730090). Requires V9 hotfix 19 or later on PBX.
3170 - possible deadlock when re-connecting or disconnecting failed PBXs
Ticket #88546. results in missing status updates from affected PBXs
3091 - Write info messages and warnings to windows event log
Ticket #87549. Trace messages of type INFO and WARNING are sent to Windows Application Event Log.
V8 Hotfix 5
3223 - Unability to write Windows Event Log
Ticket #89679. Installer failed to setup registry keys for windows event log event source registration. This also prevented the Debug version to start up.
V8 Hotfix 6
3271 - Ability to disable special disconnect Handling for monitored Lines
Ticket #90604. See Reference8:TAPI_Service_Provider#Miscellaneous_Flags
3233 - Ability to send arbitrary remote control facilities in lineMakeCall
Ticket #89903. Allows the invocation of 3rd party call control functions in call setup as per Reference:Remote Control Facility, e.g. call intrusion.
3266 - Allow HTTPS on non-standard Port
Ticket #90581. TSP can now connect securely although HTTPS is not on standard port 443.
3269 - Call Forwarding State was empty on TSP Startup
Ticket #90601. showed correct status only after a first change of the corresponding user object
3270 - ClearFwdOnSet Default now 1
Ticket #90602. See Section ClearFwdOnSet in Reference8:TAPI_Service_Provider#Tweaks. Although this is a change that alters the behaviour in a non-upward compatible way, it does seem more as a bug that it used to be like it did before. So the risk has been taken.
3232 - Installer Package signed now
Ticket #89860. The .msi packages are signed now.
V8 Hotfix 7
3312 - Allow Blind Transfer and Park on Calls in state "Conferenced"
Ticket #91431. Up til now, Conferenced calls did not have any call features enabled, except drop. Now we allow blind transfer and park too.
3294 - Call Forward Status not shown correctly if no Registration on PBX Object
3305 - catch exception when TSP Control is not allowed to write TSP config due to Windows UAC
Ticket #91324. Now displays a message and advises to relax Windows' UAC settings.
3304 - false OUTOFSERVICE/DISCONNECTED line state
Ticket #91318. race condition when reconnecting master and standby may result in false disconnected/outofservice line state, which recovers on next line activity only
3292 - TAPI continuously connects and disconnects slaves
Ticket #91147. TAPI may connect and disconnect slaves endlessly under certain conditions. Only happens when slaves are monitored. This issue was introduced in hotfix 6.
3303 - TSP occasionally blocks for up to a minute
Ticket #91317. In rare cases, when a TSP looses connection to a PBX, it may block for up to a minute before continueing.
V8 Hotfix 8
3402 - Ability to configure Log File Disposition in tsptray.exe
Ticket #95286. option to "remove all", "keep last n" or "keep all" on telephony service shutdown
3401 - Ability to suppress Recording Calls in TAPI Call States
Ticket #95285. see HiddenRecordingNumber in http://wiki.innovaphone.com/index.php?title=Reference8:TAPI_Service_Provider#Tweaks
3409 - Call Features did not correctly reflect No3PTY=1 configurations
Ticket #95294. See "No3PTY" in http://wiki.innovaphone.com/index.php?title=Reference8:TAPI_Service_Provider#Tweaks
3407 - Do not turn on DEBUG and DVL Trace Levels with "set recommended"
Ticket #95291. creates too heavy trace load in larger installations
3403 - Enable hold without local Music-on-hold through Registry Tweak "SilentHold"
Ticket #95287. See "SilentHold" in http://wiki.innovaphone.com/index.php?title=Reference8:TAPI_Service_Provider#Tweaks
3405 - Installer installed default of 0xff for ProcessorMask
Ticket #95289. See "ProcessorMask" in http://wiki.innovaphone.com/index.php?title=Reference8:TAPI_Service_Provider#Tweaks.
By default, the TSP was installed with a ProcessorMask of 0xFF. On systems with more than 8 cores, the TSP then would be locked on to the first 8 cores.
3404 - Problems in Provider Termination
Ticket #95288. Sometimes, provider termination failed with a trap or deadlock. This may have resulted in an inability to shut down and subsequently re-start the telephony service.
3406 - TSP8 failed to release some Thread Handles
Ticket #95290. In certain situationes, the TSP failed to release some operating system handles. This results in accumulating resources.
3408 - Useless Disconnect of not-yet-connected PBX
Ticket #95292. newly learned PBXs suffered from a connect/disconnect/connect cycle during startup, resulting in slow startup with many or large slaves
V8 Hotfix 9
3444 - line state may become inaccurate if PBX object changes registration PBX
Ticket #96433. This happens when the PBX attribute is changed in the PBX configuration. It may result in the lines wrong in-service state or inability to perform TAPI requests on it.
V8 Hotfix 10
3722 - HTTPS SOAP connections did not work on Windows8 / Server 2012
Ticket #104969. Windows8 / Server2012 enforce TLS1.2 for secure channels by default. However, the PBX does support up to TLS1.1 only. TLS1.0 / TLS1.1 is now negotiated explicitly on all systems.
3472 - impossible value for ProcessorMask in Registry floods traces
Ticket #97607. impossible values for processor affinity mask in registry resulted in endless setting the mask (flooding the log with info messages)
3701 - Installer failed on 32bit Windows XP (claiming a system protected file could not be updated)
Ticket #104572. The installer then showed a pop-up saying "The windows installer cannot update the system file C:\WINDOWS\system32\COMDLG32.dll because the file is protected by Windows."
3540 - longer SOAP request timeout
Ticket #99283. in very slow networks, the default SOAP request timeout of 5s could falsely trigger a pbx-has-trapped recovery cycle in the TSP. The timeout is 15s now.
3543 - race condition when Master PBX with Standby restarts
Ticket #99306. When a master PBX with standby restarts, fail-over from master to standby and back can create a race condition where a line is erroneously considered out-of-service. This recovered upon next line activity (e.g. a call).
3533 - TSP sometimes falsely sets a line to out-of-service
Ticket #99200. rare race conditions may result in lines that still show call activity but can not be controled (out of service)
V8 Hotfix 11
4015 - TSP does not report dynamically added lines on Windows Server 2012 and Windows 8 64bit
Ticket #113141. When a line is added (because a new member is added to the tapi group in the PBX), it is dynamically reported to the Windows TAPI subsystem. This did not work any more in newer 64bit OS platforms.
V8 Hotfix 12
4226 - TSP treats lines with active mobility as out-of-service
Ticket #119197. Lines without registrations on it were treated as "out-of-service" even if there is mobility enabled for the user. Even more, the TSP got confused by reported mobility calls, resulting in disconnection of the reporting PBX.
V8 Hotfix 13
4349 - TSP traps on lineUnhold and call deletion race condition
Ticket #123238. When a consultation call is unheld with lineUnhold while it is notified as terminated by the PBX, a trap may occur
V8 Hotfix 14
4822 - Do not report calls as diverted if the same local party is called
Ticket #144246. When a party was called not using the shortest possible number (e.g. when calling a party in the same node by calling the destination's complete number from the root), the outgoing call was reported as being diverted (as the number received in the alert or connect message differed from the called number). This was confusing.
Now, such calls are no longer shown as diverted, if the called parties CN is known and does not change.
4842 - New Registry Tweak UseFirstLeg2
Ticket #144799. Option to modify the default behaviour when TAPI reports call forward information (leg2). See <code>UseFirstLeg2</code> in http://wiki.innovaphone.com/index.php?title=Reference8:TAPI_Service_Provider#Tweaks
V8 Hotfix 15
9154 - TAPI does not work on Windows 10
In Windows 10, the user that runs the telephony services by default has no longer registry write access to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Telephony. This used to be the place where the TAPI service provider stores its own configuration.
The configuration storage has been moved to HKEY_LOCAL_MACHINE\SOFTWARE\\innovaphone\innovaphone® PBX V8 TAPI Service Provider therefore.
The TSP will loose its configuration during upgrade to this version!
16171 - Trap on race condition with pending lineAnswer request
When a call was released while a lineAnswer TAPI request was waiting for the connected state, the TSP could trap.
V8 Hotfix 16
21937 - TAPI: configuration dialog did not run on Windows Server 2012
Wrong code that nevertheless did run on all windows systems since Windows2000 caused the configuration UI to abort. Therefore, a TSP could neither be added to nor configured in the system any more.
21802 - TAPI: trap when endpoint deregistered while a TAPI request is still pending
When a long-running TAPI request is still proceeding when the device de-registers, an internal resource is freed twice.
V8 Hotfix 17
23342 - TAPI sometimes fails to delete removed PBX Call Handles
In some situations, the TSP will keep call informaton although the call is already terminated. When the call handle of such call is re-used later on, the new call will erroneously be identified as the old call.
29401 - TAPI sometimes incorrectly reports pre-known lines
The TSP does some attempt to deal with 1st party TAPI applications which do not support dynamic notification of new lines during runtime (e.g. Microsoft's dialer.exe or Outlook). Available lines are enumerated and reported during startup therefore. However, some of these reports were invalid, resulting in error messages ("at least one telephony driver is not compatible to TAPI.DLL") or malfunction of the TAPI application.
24901 - TAPI: ignore TAPI incompatible Call Forwards with boolean Condition
The PBX supports certain call forward conditions which are not compatible with TAPI. Such call forwards are invisible to the TAPI application and can neither be modified nor set or deleted. However, call forwards with a boolean condition were treated as compatible. An attempt to set such a call forward resulted in loss of the condition.
Call forwards with boolean conditions are now treated as incompatible too.
V8 Hotfix 18
47888 - Provide Option to create Line GUID from Device "Name" instead of "Hardware Id"
The PBX provides GUIDs for PBX Objects, not for Devices. TAPI however needs a GUID per line. If "MapDevices" is set, each PBX Device is mapped to a TAPI line and the GUID is constructed by adding the device's "Hardware Id" to the object GUID.
This ensures unique GUIDs, as the "Hardware Id" is known to be unique. However, when the "Hardware Id" changes (because the users's phone is replaced), TAPI treats it like a new line. The new option changes the behaviour so that the "Name" is used. This way, the line does not change but the administrator must make sure that all the devices for a single PBX object have distinct names.
56343 - Support ridiculous long DNS names
V8 Hotfix 19 (8181)
71918 - Provide %T replacement for TAPI line device name
new replacement syntax for TAPI line device names: %T is replaced now by the line's "Hardware Id", see http://wiki.innovaphone.com/index.php?title=Reference8:TAPI_Service_Provider#Setting_the_Line_Device_Name
V8 Hotfix 20 (8183)
75250 - TAPI does not allow TLS 1.2 connections
side effect of Windows 8 related fix for missing TLS1.2 in the PBX (introduced in tapiv8hotfix10 ).
The PBX now supports TLS1.2 so the TSP can offer it again.
75264 - TAPI: %t / %T line name options do not work properly
there was a wrong dependancy on the "UseNameForDeviceGuid" registry key
V8 Hotfix 21 (8188)
107801 - TAPI: fix dead line when registration moves between PBXs due to change of PBX attribute
Resulted in affected lines falsely considered out-of-service
V8 Hotfix 22 (8190)
138220 - Provide call conference GUID as CallData
To be able to relate TAPI call events to CDR data.