Title: Internet and Telephony
1Internet and Telephony
- Kwan Hong Lee
- May 6, 1998
2Outline
- Motivation
- System setup and architecture
- Programming Environment
- Applications
- Problems
- Conclusion
3Motivation
- Now Internet and Telephony separate
- Goal explore services and applications that
integrate Internet and Telephony - Basis JTAPI
- rapid web application development
- applications run anywhere
4Outline
- Motivation
- System setup and architecture
- Programming Environment
- Applications
- Problems
- Conclusion
5System Configuration
6PBX
- Lucent Generic 3 Switch
- Provides telephony services
- call management, billing, call conferencing etc.
- Very complicated
- Several analog phones connected
7Telephony Server
- Telephony Services Module
- Links applications and switch driver
- Routes messages and events
- Switch driver
- Terminates CTI link and protocol
- Map CTI protocol to TSAPI
8Telephony Services
- Telephony server IP address and port number (450)
stored in TSLIB.INI where telephony application
resides
9Using the Service
- PBX driver registers services (TLINKS) with the
telephony server (Tserver) - Select TLINK
- VENDORDRIVERSERVICESERVERNAME
- User logs in with Windows NT login and password
- Ready to use telephony services
10Architecture
JTAPI
TSAPI
CSTA
G3PD
ASAI
PBX switch
11ASAI
- Definity specific
- Allows applications to access switch features and
control calls - Ethernet interface
12TSAPI
- API that allows applications to control the PBX
services - call control
- call/device monitoring
- query
13Java Telephony API
- Easy telephony application development
- Object oriented, reusable, cross platform
- Integrates telephony services with web
applications - Telephony services controlled through the
Internet - Applets
14Outline
- Motivation
- System setup and architecture
- Programming Environment
- Applications
- Problems
- Conclusion
15JTAPI Core Extensions
- java.telephony
- java.telephony.callcontrol
- java.telephony.callcenter
- java.telephony.media
- java.telephony.privatedata
16JTAPI Call Model
17Call States
- Connection states
- (logical view)
- Terminal connection states
- (physical view)
18JTAPI Example
- mycall m_provider.createCall()
- c mycall.connect(m_origterm, m_origaddr,
phoneNum ) - CallControlConnection.redirect( m_dest )
- Connection.disconnect()
19DTMF Detection
- Requires VDN and call vectors
- Call vectors store routing forwarding information
VDN
VDN
Terminal
forwarded
forwarded
Call Observer
Call Observer
Inside Call Observer
lucentUEC ( (LucentCallInfo) evlisti
).getUserEnteredCode() if ( lucentUEC ! null
) RecvCCObserver.collDigits lucentUEC.getDigits
()
20Outline
- Motivation
- System setup and architecture
- Programming Environment
- Applications
- Problems
- Conclusion
21Applications
- Internet voice message server
- Alarm call service
- Enhanced Help Desk
- Schedule based call forwarding
- When you dial a number, the web page pops up
- weather phone call --gt pops up weather web page
- Applications in text to voice and vice versa
- Use of caller ID, call queueing
22Alarm Call Service
23Alarm Call Service
Client
Server
Request Queue
Send Request
ACK
Make Call
Client managers handle multiple requests by multi
threading and inserts the requests at the
appropriate place among the requests in the queue
Sample Request
Timer variable keeps track of the time when the
next request needs to be processed and puts the
thread to sleep until then.
Guestguest455151894357900000
24Switching Plane of VMS
45520
45530
Extension entered (3 digit)
Extension PIN entered (7 digit)
The digits entered by user are collected during
ALERTING state.
45521
Automatic routing
- Calling address and called address collected
- Send calling address and extension ( PIN)
- If ACK is received, redirect to Voice Message
Server, if NOACK, disconnect
45511
45513
When connection becomes disconnected, send
FINISHsignal and close all socket connection
25Phone E-mail
Telephony Server
Sends e-mail 45510_at_vada.cs.cornell.edu
SMTP Server
TTS
When no physical phone is accessible.
Converts e-mail content to voice and saves as
real audio format.
Could be forwarded to pager with text content
User could check the voice mail through phone,
e-mail or web.
26Scheduled Call Forwarding
Telephony Server
SMTP Server
Send call forwarding schedule
Callforward_at_vada.cs.cornell.edu
E-mail message contains password time and phone
numbers
Lookup database for authentication by checking
the sender and the password Parse the
request Either store it in database or in
memory data structure
27Outline
- Motivation
- System Setup and Architecture
- Programming Environment
- Applications
- Problems
- Conclusion
28Initial Difficulties
- Documentation
- difficult for first time user
- 5 second to get the phone off hook when call made
- Parameter setting in ASAI setup
- logon as a service
- Phone wire connection
- User interface in setup forms
29Suggestions
- GUI for setting up stations and other options
- A multimedia tutorial on PBX switch
- installation and setup
- Requires double administration
- Switch setup and telephony services admin on
controller desktop
30Conclusion
- Great potential in applications that make use of
telephony services through the Internet - Integration with web and multimedia technologies
- Java servlets, Java media framework, Personal Java