Next Topic

Previous Topic

Home

Book Contents

Book Index

Icon Text - Topic Parent

How to use a file instead of a serial port to input SMDR data

Version 2.9.68 onwards

As more PABXs become integrated with computer networks, some no longer export data via a conventional SMDR RS232 serial port, presumably because this is seen as redundant. Generally, these systems make the data available via a data file, often in CSV format. To accommodate this MonTel now offers a selection of either Serial or File input. (A future features may include direct TCP/IP or TAPI).

The File settings can also be found in the SerialPortSettings Section.

Basic File Settings

To use File input you need to set TypeOfInput =1, and set SerialPort to the path and file name of the input data file. The driver will deal with the format of the file. The path can be a long file name path for ServerCN and ServerSV, but must be a DOS path for the DOS Server. Where a choice is available the path should be a DOS path.

When it starts the MonTel Server will read the input data file, and set its internal settings to make the 'cache' the size of the input data file less any characters read. To make sure that it knows how much it has read, and will know where to start again should it be shut down, it writes the length of the input data file and its name to an 'index' file called "MTNDX.DAT" in the local computers temporary folder, every time the date/time stamp (or length, see below) of the input file changes. In the event that it shuts down before processing all the call records in the 'cache' to the local cache file (depending on the settings).

Because different users may have different temp file paths, because the DOS Server cannot read long file names, and to make it easier to check the existence of "MTNDX.DAT", we strongly recommend that on the computer that is the MonTel Server the TEMP and TMP environment variable be changed to C:\TEMP. This can be done from from "System Properties" (System) in control panel selecting the Advanced tab, on on that pressing the Environment variables. The screen will look like this after you have edited the values on a Windows 2000 system.

As well as "MTNDX.DAT", the temp folder will also hold the caching information for MonTel.

What happens when the Operation System fail to report Data/Time stamp changes over the network?

This seems to occur on some systems when the input file in on a networked drive. DataBits now has a dual use. If DataBits is set to 1, the MonTel Server checks to see if the length of the file specified in SerialPort field has changed so it can process incoming data, rather than just the Date/Time stamp. This incurs a network traffic load penalty, so it may be prudent to limit this checking to once every few seconds.

In (Version 2.10.10 onwards) this can be specified in the BaudRate setting, where a value of 1 to 299 will be treated as the frequency in seconds that the file should be checked. A value of 1 to 5 seconds is probably more useful. Since during the processing loop the file size might otherwise be checked hundreds of times, a setting of 1 may have a dramatic effect on network traffic usage.

What happens if the name of the file changes by date or time?

In this event there are two settings AppendDate and DateFormat that will allow you to add modifiers to the file name of the input file specified in SerialPort. See AppendDate to 1.

In DateFormat use the "String" replacement characters as place holders or variables to construct a variable file name. This can be appended to the path you have specified in SerialPort.

For example, SerialPort might be "H:\PABADATA\OUTPUT\smdr" , and DateFormat might be "_%y-%m-%d.csv". On August 5 , 2004 the MonTel server would translate this to mean: "H:\PABADATA\OUTPUT\smdr_04-08-05.csv".

------------------------------