Home Calling Center
Group 16
Friday, May 2, 2003
Technical Advisor:
Bruce McNair
Group Members:
Margarita Costa
Mohammed Uddin
Kenesha Hughes
Damien Dennis
Hervens Beauge
William J Piper
I pledge my Honor that I’ve abided by the Steven’s Honor Code:
Table of Contents
3.1 What
the user needs to use this product
3.2 What
the user can expect of this product
3.3 Graphic
User Interface (GUI)
4.2 Diagrams
and Specifications of Systems we will be using
1. The
ring detect and Caller ID unit (from the manual)
2. The
Intel Pentium Processor (from the Manual)
5.2 Procedure
for Setup of Operating System and Downloading Programs
6.1 Basic
Structure: Top, Middle and Bottom
6.4 What
Happens When A Call Is Received
6.6 Serial
Communications (Aside)
7.2 Software
Test Procedures – Middle Level
7.3 Test
for Software, Top Level
7.4 Test
for Software, Bottom Level
1. Middle
Software Section Design Class Usage and Control:
This
project involves creating a Home Calling Center installed into a home PC and an
independently operating box. This
calling center will be connected to one or more phone lines with Caller ID and
three-way calling service installed. It
will use the Caller ID information to arbitrate received calls based on an
internal database. The choices that the
system would make may be to forward to a different telephone number such as a
cell phone or choose from available mailboxes to save the message(ie. Junk Box,
Important Box, etc). This package will
also facilitate call screening through the announcement of voice calls and
automatic call blocking of unannounced or undesired numbers.
The Home Calling Center will ideally has a feature set which includes caller ID, call forwarding, and voice announcement of incoming callers. The systems actions will follow from a database containing preferred options for each number in the system. These options include BLOCK, FORWARD and VOICEMAIL. The BLOCK list will cause all calls originating from the sources contained within the list to ring infinitely. The FORWARD list will forward the calls that originate from the numbers in the list to a number specified by the user. And the VOICEMAIL list will allow the callers whose numbers are contained in the list to leave a message.
We will also implement a hardware version of this product in order to provide portability. The hardware version would consist of a single unit that will integrate the Home Calling Center. The design of the project will include the consideration of optional features. Those features include toggling between states of HOME, WORK, or SLEEP, during which would cause the system to respond differently. Other optional features are remote access to software, and voice controlled dialing and menu navigation.
· One phone line with three-way calling or at least two phone lines with or without it
· Caller ID Service from telephone provider
· IBM compatible PC with Intel Pentium-class processor
32 MB of RAM or higher
IDE Hard drive with 650MB or higher
CD-ROM or DVD drive, Keyboard & Mouse
We have conducted a customer survey. It indicates that our user will expect the Home Calling Center to provide them with features that are important to them. These features include voice dialing, call forwarding, call announcement, and call logging. The following actions summarize our user requirements:
· Provide quick and convenient access to caller ID information
· Toggle between two modes of operation (home and away)
· Announce calls as they are received
· Forward desired calls another telephone
· Determine to which telephone to forward each incoming call
· Record and store voice tags for each caller ID entry
· Record and store custom messages
· Apply custom messages to any caller ID entry
· Call people using voice dialing
· Recognize spoken voice and accurately call people as voice tags are articulated
· Maintain a log of caller names, numbers, frequencies, and dates
GUI’s
must run on a host PC provided by the User through a COM port. The installation software to present the
information being sent across the COM port is provided with the system. It allows a user to view and modify the
database records contained within the system.
The
GUI is being implemented in Visual Basic.
The purpose of the GUI is to read a file received via TCP/IP connection
to the host Unix Machine. This file is
updated and sent back every time there is a change using the GUI
interface. The summary of actions are
as follows:
The files containing the system state variables and the phone book are as follows:
ActionsAllowed.txt: Contains a numeric code/list/description of the actions which are allowed in the system. As an enhancement, the class to call may be included in this file which would enable scripting and dynamic addition of new classes
AnsweringMachineList.txt: Contains system state of answering machine. The breakup is as follows
|
Field |
Start Position |
End Position |
Size |
Type |
Description |
|
MachineID |
0 |
4 |
4 |
Integer |
Internal reference to answering machine |
|
MachineName |
5 |
16 |
12 |
Alphanumeric |
User-given answering machine name |
|
Greeting |
13 |
141 |