![]() |
Content of documentation | User documentation | Administrator documentation | Index of terms | Technical Support | Search on-line |
How does VoiceChange works? |
This document will explain the function and "background" of VoiceChange.
Table of contents:
Basic working principle of VoiceChange
Basic "core" of VoiceChange is realized by a set of COM objects "enveloped" by VBS (Visual Basic Script) libraries.
VBS libraries provide the user VBS code a convenient and powerful tool for work with all the VoiceChange components.
User VBS code is located in the VoiceChange main directory. After installation, the files with code for each physical line are called "line0.vbs", "line1.vbs" etc.
VoiceChange after standard installation works as voice recorder with cooperation with PBX. So if called person do not anwer the call, PBX redirects call to VoiceChange line and send it number of called person. Then you can leave voice message, which will be sent via e-mail to the correct recipient.
UMS.TaskManager service is the key component of VoiceChange (referred as Task Manager in next text). Task Manager starts individual VoiceChange service script and watch them for proper work. If a script stops responding, it is restarted.
There are two types of tasks started up in Task Manager. On the one hand the tasks being implemented upon startup of the Task Manager, and, on the other hand, the "running" tasks being kept alive by the Task Manager.
Task Manager may run as a service or on the desktop. The other mode is used especially for debugging the new scripts, because one can see what the scripts list on the screen. You can start the Task Manager on desktop from Start Menu by clicking on Programs -> VoiceChange -> Scripting -> Run UMS.TaskManager in debug mode (in this case you must be logged on to Windows under VoiceChange service account).
When Task Manager receives the stop command ("STOP" button in service control panel or "Ctrl-C" keys when running on console), first it sends a stop request to all the processes run from it, and only then the Task Manager stops. Thanks to this procedure the processes can save their data.
Information about UMS.TaskManager work are written into application log; loglevel can be set in registry value
HKLM/SOFTWARE/Datasys/UMS/ServMngr/loglevel
, value is DWORD type and can have these values:
0 | logging is switched off |
1 | log error and start/stop info only |
2 | default value; same as 2 and informations about "dead" tasks |
3 | log all |
This option is setting the storage path for dssrvmngr logging -
HKLM/SOFTWARE/Datasys/UMS/ServMngr/logfilefolder
.
A one service script runs for each line being serviced. Such script is connected to the driver of the given line by means of VoiceChange VBS libraries and COM objects. If you use a Brooktrout (or CAPI) card driver, all scripts are connected to the running UMS.LineDrv.Brooktrout (or UMS.LineDrv.CAPI_ISDN) service. If you use faxmodems, the faxmodem driver runs directly in the script context and writes its reports on the same screen.
All scripts run in Task Manager context. By default, after installation all scripts have their outputs directed to a single common text window. By means of UmsTaskCfg it is possible to set that some (or even all) of the scripts will have their own console window and therefore their output will be clearer.
There are several explanation figures below. Click to enlarge them.
![]() Scheme of VoiceChange function with one double-port Brooktrout card |
![]() Scheme of VoiceChange function with two faxmodems |
![]() VoiceChange with one double port Brooktrout card. Task Manager runs on console, output of all applications is directed to a single window (default installation option). |
![]() VoiceChange with one double port Brooktrout card. Task Manager runs on console, each application output has a special window. |