This file contains a shor description for each of the programs in the unittest
directory. 

The programs have been grouped into catagories as follows:
General,
Utilities,
Card Demonstrations and Code samples,
Test Programs,
Card Diagnostic,
Included files.

Some programs are for specific VoiceTronix cards.

All programs compile using "make". 
Individual files may be compiled by "make <target>".



--------------------------------------------------------------------------
General:
========

vpbinfo
	Display details of installed cards. This includes Model, Revision &
	Serialnumber.

echo
	Demonstration of record and play back, record time is 3 seconds.
	Loop ports will answer on the third ring. Station ports will start
	when the handset is lifted.  

	This is also used to check the card base function, as it proves the
	audio path, ring and hook detection.

playwav
	Play wave files to a telephony port. 
	Command line:
		./playwav <filename> port 

recwav
	Record Audio from a  telephony port. The line may be on or foo hook.
        Command line:
		./recwav <filename> port recordtime

Utilitys:
=========

tonetrain/
	Utility program to help identify Tone detector parameters for
	detecting DIAL, BUSY, RINGBACK tones etc.

utils/tonedebug
	Helps with tone detection debuging. Allows tone parameters to be
	entered on the command line.

utils/tbusy
	Automated collection of busy tone. Uses 2 ports on OpenLine4.

utils/trim
	Trim a wave file to remove unwanted content.

utils/filedtmf
	Reports DTMF tones detected in a file. Runs on OpenLine and OpenLog
	cards. Usefull for detecting hidden DTMF in IVR amouncements that 
	can cause unexpected responce.

measerl
	Tests the echo return loss on the phone line. Can scan through bybrid
	balance register settings to help establish a lower ERL. Having better 
	ERL improves DTMF cutthrough and reduces line echo. The software echo
	cancel needs at least -6dB before it can make an difference.
	Command line:
		./measerl
			--help
			--bal1 [Hex]        Set codec hybrid balance 1
			--bal2 [Hex]        Set codec hybrid balance 2
			--bal3 [Hex]        Set codec hybrid balance 3
			--port [1..4]       VPB port
			--ec                Enable echo canceller
			--pg [-12.0..12.0]  Set codec play gain
			--rg [-12.0..12.0]  Set codec record gain
			--dial dport number Dial out another port
			--offhook          Take off hook immediately
			--scan [1..3] TextFile.txt start[0..ff] end[0..ff] \
				step[1..x]
			--autoscan         Auto scan codec balance values
			--handset          proto handset mode
			--loop             Enable software loopback
			--hostecho         Enable Host Echo Canceller
			--nohook           Use for station ports


Card Demonstrations and Code samples:
=====================================

OpenLine4:
----------
test/tcall
	Sample code how to use vpb_call_async(). also usefull for testing 
	call progress tones.

test/tdial
	Sample code using dial tone detection in placing a call.

OpenSwitch:
-----------
OpenSwitch/tpbx
	Sample code demonstrating simple PBX function in C.

OpenLog4:
---------
OpenLog4/tv4log
	Sample code that demonstrates the logger card.

OpenLog8i:
----------
OpenLog8i/tvpb8l
	Demonstrate card

OpenLog8i/twovpb8l
	Sample code to open 2 vpb8l cards

OpenLog8i/tpip
	Sample code demonstrating pip function.


Test Programs:
==============

test/silence
	Tests for silence detection. This is the last resort for hangup
	control. 
	Command line:
		./silence [--toff ms]

test/offhook
        Take all lines off-hook and report events.

test/ringmon
        Monitor lines for ring events and keep tally.

cid/deccid
	Decode Caller ID (USA & AUSTRALIA. Others may work) from a recorded
	wave file.

cid/cidtest
	Decodes cid straight from the line. Looks after every ring for the
	signal.
	Command line:
		./cidtest Port[1..4] [-dial PortNumber]

cid/samcid
	Samples Caller ID to a file.

cid/cidgtest
	Generates and sends Caller ID to station ports. 


Card Diagnostic:
================

test/walk
	Test OpenLine and OpenLog card memory.
	Command Line for PCI cards: 
		./walk 0

test/tcomm
	Test basic DSP-HOST communications on OpenLine4/OpenLog4 cards. Runs
	until enter is pressed to exit.

test/tring
	Test the ring detectors on a card. Also can be used on station ports
	to check event's including DTMF, Hook Flash, On/Off Hook.

test/ringstat
	Test all Station port lines for ring generation. This will stop the
	ring to any individual line when the line is taken off hook.


Included files:
===============

threads

kbhit
