|
SMS Paging System
A real time, text-to-speech paging system.
|
This application was developed for
one of CDI's manufacturing clients. It monitors the status of
each machine in their facility. If a machine goes down or has
another detectable problem, then the system will page the appropriate personnel
over the compay's public address system. The plant floor
personnel also have the ability to initiate preset pages, such a requesting
a forklift to come to a certain machine.
The application uses Microsoft Speech API (SAPI) 5.1
and Telephony API (TAPI). Although the Speech API is from
Microsoft, we
purchased a third party's text-to-speech engine for a more life-like voice. This system comprises two parts, both of
which are written in Visual Basic: the SMS
Server and the SMS Client. The client is an ActiveX control which
communicates with the server using TCP/IP
sockets.
|
|
System Overview
|
- Developed in Microsoft Basic
6.0 with ADO as the data access tool.
- Uses Microsoft SAPI 5.1, MS
Winsock, third party TAPI controls and a third
party text-to-speech engine.
- Server Features:
- Displays the connected
client's name, IP address, and last activity.
- Displays various program events.
- Displays the list
of messages in the queue awaiting delivery.
- Displays the current call progress.
- Prioritizes new messges received from clients.
- Assigns a unique message ID when a
message is received from a client and passes that ID to the client as
part of the communication protocol.
- Maintains a configurable message destination
list.
- Maintains a configurable message type list
with configurable message parameters.
- Sends message completion
status to the client that requested the message.
- ActiveX Client Features:
- Maintains a log of messages sent to the
client.
- Assigns a unique client ID for each
message. Each client maintains its own ID sequence.
- Assigns the unique server ID from the server
when the message is sent.
- Configurable message time out. If
message delivery to the server fails, the client will retry for a
specified duration.
- Queue message for delivery. If the client is not connected
to the server when a new message is created, the client will hold the
message until it connects. Note: the delivery timeout will still
apply.
- Records message completion status from the
server.
|
Screen Shots
|
For confidentiality reasons, there are no screen shots or code samples available.
|
|