The SMDI package implements an APE based client library for the Simplified
Message Desk Protocol as specified by Bellcore for communication with
Central Office equipment.  The SMDI protocol is also often implemented on
premise equipment such as PBX switches and is commonly used to integrate
adjunct voice messaging platforms with PBX systems.

This implementation is built from the APE class library and assumes the
target application will implement application specific functionality by
'extending' the SMDISerial and/or SMDINetwork class virtual functions
through application specific derived classed.  This design methodology is
consistent with how the APE library itself is intended to be used.

This implementation offers the ability to construct an application that
either communications directly through serial hardware using the
SMDISerial class or through a TCP network session to a 'server' using
the SMDINetwork class.  Later releases of smdi will also include source
for a generic 'SMDI' server daemon.  The advantage of bringing the SMDI
protocol to the network is that SMDI can then be freely shared among
several applications.  Being a text oriented protocol, implementing SMDI
through a TCP session is a very logical extension.

As this is the initial release of smdi, this release is mainly to
validate the smdi library design model as well as test some aspects of
the APE class library.  It is not as yet functionaly complete, though
completion of smdi functionality and testing should prove very easy.

All comments and bug reports related to the SMDI package should be
addressed to dyfet@ostel.com.


