I created several tools to implement CTI functions on agent desktop and IVR server. When the tools are grouped together, they become my CTI architecture.
The ScreenPop is installed on agent desktop, it is responsible for application screen pop. The calltoui.exe is my soft phone implementation. Application can integrate with ScreenPop by the screenPop.ocx or restful interface. The uuiSVR is my data server implementation which breaks the data size limitation of TSAPI uui. The ivrSVR is a CTI server for IVR application and IVR invoke call control functions via a restful interface. User data passing between IVR application and agent desktop application is achievable via the uuiSVR.