Sie sind auf Seite 1von 100

______________________________________________________________

Altruist Technologies

PPROJECT FILE
(SIX MONTH TRAINING)

Submitted To
Mrs. Navreet Kaur Submitted By
(Lect. MCA Deptt.) Gulab Singh
Roll.No.
7007211831
______________________________________________________________
Altruist Technologies

A DISSERTATION REPORT
SUBMITTED IN PARTIAL FULFILLMENT OF
REQUIREMENTS

FOR THE AWARD OF THE DEGREE OF

MASTER OF COMPUTER APPLICATIONS


(SESSION 2007-10)

S UBMITTED BY
GULAB SINGH

GGS College Of Modern Technology, Kharar


Distt.Mohali(Punjab)
______________________________________________________________
Altruist Technologies

May 2010

CERTIFICATE BY ORGANISATION
______________________________________________________________
Altruist Technologies
______________________________________________________________
Altruist Technologies

CERTIFICATE BY EXTERNAL GUIDE

Ce rt i fic a te

This is to be Certified that “Gulab Singh” has carried


out the project work presented in this thesis titled
“Mobile Voice Chat” for the award course from
“GGS College Of Modern Technology,Kharar” under
my supervision. The thesis embodies result of
original work and studies carried out by the
student himself and the contents of the thesis do
not form the basis for the award of any other degree
to the candidate or to anybody else.

(Mr.Alok Singh Bhandari)

Designation:(AGM)

Altruist Technologies

Place: Hauz Khas(South Delhi)

Date: 30th April 2010


______________________________________________________________
Altruist Technologies

CERTIFICATE BY INTERNAL GUIDE

Ce rt i fic a te

This is to be Certified that the work presented in the


project entitled” Mobile Voice Chat’ submitted by
“Gulab Singh” in partial fulfillment of the
requirement of the project for the award of degree of
Master in Computer Applications, GGS College Of
Modern Technology,Kharar” is an authentic work
carried out under my supervision.To the best of my
knowledge, the content of this project does not form
a basis for the award of any previous degree to any
one else.

(Mrs.Navreet Kaur)

(Lect.MCA Deptt.)

GGS College Of Modern Technology

Place: Kharar(Mohali)

Date: 30th April 2010


______________________________________________________________
Altruist Technologies

DECLARATION
I hereby certify that the work embodied in this thesis entitled “Mobile Voice Chat ” submitted by
me, in partial fulfillment of requirement for the award of Degree of Master of
Technology (Information Technology) submitted at
GGS College of Modern Technology under PUNJAB TECHNICAL UNIVERSITY,
JALANDHAR, is an authentic record of the my own work carried out during a period
from January-11-2010 to April-29-2010 under the supervision of Lect. Narvreet kaur. The
matter presented in this thesis has not been submitted by me in any other University / Institute
for the award of MCA Degree.

Gulab Singh

This is to certify that the above statement made by the candidate is correct to the best of my
knowledge.

(Mr. Yogesh Mohan)


HOD, Deptt. Of MCA

Supervisors

Signature of Supervisor Signature of External Examiner

Signature of H.O.D.
______________________________________________________________
Altruist Technologies

CANDIDATE DECLARATION

I hereby declare that the project work entitled “Mobile Voice Chat” in partial
fulfillment of the requirement for the award of degree of MCA, submitted to
the (GGS College of Modern Technology,Kharar) is authentic record of my
own work carried out during the period from 9th Jan 2010 to be continued up to
May2010 under the guidance of Mr. Alok Bhandari , Project Leader,Altruist
technologies, Delhi and Mrs. Navreet Kaur (Lect. MCA Deptt. GGS College Of
Modern Technology, Kharar, Mohali(Punjab)

I have not submitted the project report for any award of any other
degree/diploma of any university/Institute.

Gulab Singh
MCA 6th Sem
Dept. of Computer Science
GGS College of Modern Technology

Place: Mohali
Date:
______________________________________________________________
Altruist Technologies

ACNOWLEDGEMENT

To complete a dissertation a report is a laborious work as a student, which no


one can complete without taking help of experienced persons. I feel pride and
privileged in expressing my deep sense of gratitude to all of those who are
involved in the completion of this dissertation.

At the very outset I would like to thank the Almighty God for his blessings that
helped me to achieve everything I had wished for till now.

I am thankful to Altruist Tech. Pvt. Ltd. for providing me an opportunity to


work with them. The support provided to me during my project training was
overwhelming and the environment was very conducive to work.

I am very much grateful to Mr. Alok Bahndari, Project Leader, Altruist


Technologies, Delhi, for his kind help, lasting encouragement, valuable
suggestion through out the entire period of my project work.

I m highly indebted to Mrs. Navreet Kaur,(Lect. MCA Deptt. GGS College Of


Modern Technology, Kharar, Mohali (Punjab) for her astute guidance, sincere
support and boosting confidence to make this training successful.

I would also like to take the opportunity to sincerely thank all my Trainers and
colleagues at Altruist technologies for their support and assistance throughout
the project.

The acknowledgment will be incomplete if I fail to express my obligation and


reverence to my family members and friends whose moral support is great
factor in doing this dissertation.
______________________________________________________________
Altruist Technologies

TABLE OF CONTENTS
PAGE NO
1. COMPANY PROFILE……………………………………………9-17
1.1 Introduction………………………………………..…….………………………….9
1.2 Team ……………………………………………………..…..…………………….10
1.3 Partners …………………………………………………....……………………….10
1.4 Clients ……………………………………………………..…..………………..….11
1.5 Solution…………………………………………………….……………………….11
1.6 Technology used…………………………………………….……………………...17

2. INTRODUCTION and REQUIREMENT ANALYSIS ……………..….19-24


2.1 Overview………………………..…………………………………………...20
2.2 Requirements………………………………………………………………...20
2.2.1 Problem Analysis……………………………………………………...21
2.2.2 Technical Requirements for IVR setup…………………...……………21
2.2.3 IVR…………………………………………………………………......21
2.2.4 ASR……………………………………………………………………22
2.2.5 TTS…………………………………………………………………….23
2.2.6 Existing Product……………………………………………………….23
2.2.7 IVR Interactive Voice Response………………………………………24

3. TECHNOLOGIES OVERVIEW………………………..…………..25-29
3.1 Software Technologies……………………………………………………….25
3.1.1 VXml,CCXml………………………………………………………….25
3.1.2 CCXML + VoiceXML Architecture……………...................................25
3.2 Hardware Technologies………………………………………………………26
3.2.1 Global System for Mobile communication…………………………….26
3.2.2 Services provided by GSM……………………………………………27
3.2.3 Architecture of the GSM network……………………………………..28
3.2.4 How it work……………………………………………………………29
______________________________________________________________
Altruist Technologies

4. SOFTWARE DESIGN……………..………………………………………..40-55
4.1 what is AFC………………………………………………….………………...40
4.1.1 Salient
Features………………………………………………………...40
4.1.2 Driving Principle’s…………………………………………………….40
4.1.3 Advantages………………………………………….…………………40
4.2 Friend Chat On voice…………………………………….................................41
4.2.1 REGISTRATION………………………………………………………….41
4.2.2 SERVICE FLOW…………………………………………….……………41
4.2.3 OTHER FEATURES………………………………………..……………..42
4.3 Road Map……………………………………………………………………..52
4.4 Frequently Asked Questions (FAQ’s)………………………………………...52
4.5 Best Practices with Impact Analysis………………………………………….55

5. CODING…………………………………………………………..………....58-84
5.1 Programming Languages & Development Tools…………………………...58-74
5.2 Activation of a MSISDN into service
5.2.1 Through URL
5.2.2 Through file uploadation
5.3 An Introduction to VoiceXML………………………………………………...74
5.3.1 What is VoiceXML ?................................................................................74
5.3.2 Voice User nterface……………………………………………………..76
5.3.3 Why use VoiceXML ?..............................................................................76
5.4 The VoiceXML language……………………………………………………...76
5.5 Mixed VoiceXML properties……………………...…………………………..79
5.6 -initiative dialogues……………………………………………………………79
5.7 Form Interpretation Algorithm………………………………………………...80
5.8 FIA – confirmations…………………………………………………………...80
5.9 Limitations…………………………………………………………………….80
5.10 Dynamic VoiceXML…………………………………………………………..84
5.11 Conclusion……………………………………………………………………84
______________________________________________________________
Altruist Technologies

6. SOFTWARE TESTING……………………………………………85-87
6.1 Introduction……...……………………………………………………………85
6.1.1 Black-Box Testing………………………………………………………85
6.1.2 White-Box Testing……………………………………………………...85
6.1.3 Static Testing……………………………………………………………86
6.1.4 Dynamic Testing………………………………………………………..86
6.1.5 Conclusion………………………………………………………………87
6.2 Steps for checking service……………………………………………………..88
6.3 Steps for the Correcting the Service…………………………………………...88

7. EVALUATION & IMPLEMENTATION…………...………...…………89-90

7.1 Evaluation……..……………………………………………………………...89
7.2 Implementation…….…………...…………………………………………….89
7.3 Incremental Program Development…………………………………………..90

8. SCOPE OF THE PROJECT………………………………...………………….92

8.1 Telecom Value Added Services………….……………………………………92


8.2 References…...………………………………………………………………...96
______________________________________________________________
Altruist Technologies

1. COMPANY PROFILE

1.1 INTRODUCTION:
ALTRUIST has emerged as a proven company in the field of Voice and Web
Based Value Added Services, Business Process Outsourcing , Information
Technology and Interactive Communication solutions to Carrier, WASP, ISP, CSP
and Corporate clients with its diligence, operations reviews, analysis of
business prospects and interim management.
Strong IT foundations and an excellent mobile domain understanding have
helped us in becoming the leading Wireless Application Providers in India with
installations for most of the telecom service providers Like MOBILE, IDEA, BPL,
Reliance communications, MTNL, TATA Indicom, Connect and other corporate
like DishTV etc.
The emerging trends in mobile telephony clearly point towards a domain vastly
governed by the customers' whims and fancies.
Value Added Services are those mobile operator's services which allow
customers to make more than just traditional voice calls from their phones to
other phones.
At ALTRUIST we provide value added services and solutions to major telecom
players and corporate across the globe. Our vision is to be a technology
enabler in a wire-free world connecting data source or application to any
device and make the mobile phone an integrated communications device, with
the ability to provide information and perform real time online transactions
anytime... anywhere.
ALTRUIST has proven expertise in the field of Voice and Web Based Value
Added Services, Business Process Outsourcing , Information Technology and
Interactive Communication solutions to Carrier, WASP, ISP, CSP and Corporate
clients with its diligence, operations reviews, analysis of business prospects
and interim management.
______________________________________________________________
Altruist Technologies

1.2 TEAM :
ALTRUIST believes its true strength lies in the potential of its Associates.
Associates work in an atmosphere of trust and confidence. Every individual
Associate is a leader. This leadership is expressed in the way tasks are
assigned and taken up, the freedom with which work styles are negotiated and
high standards of quality set independently by each and every Associate. A
high degree of operational freedom helps Associates exercise their creativity
and expertise in approaching tasks and achieving Customer Delight.

1.3 PARTNERS:

1.3.1 Oracle
For 32 years, Oracle has been helping customers manage critical information.
Our goal is to make sure that you spend less money on your systems while
getting the most up-to-date and accurate information from them.

1.3.2 Intel

Intel offers a broad range of building blocks that can be used in many different
types of telecom solutions in various communications environments, including
enterprise and service provider. A single building block can support a variety of
solutions. Once a building block is installed, it can be used to add new features
and capabilities to a solution.

1.3.3. Sun Microsystems

Everyone and everything connected to the network. Eventually every man,


woman, and child on the planet will be connected to the network. So will
virtually everything with a digital or electrical heartbeat -- from mobile phones
to automobiles, thermostats to razor blades with RFID tags on them. The
resulting network traffic will require highly scalable, reliable systems, from Sun.

1.4 CLIENTS:
______________________________________________________________
Altruist Technologies

1.5 SOLUTIONS:
Altruist is a leading VAS Enabler, helping communication service providers
deliver innovative applications for Entertainment, E-commerce and Enterprises.
Currently offering a range of leading-edge voice and data transmission
technologies for telecom operators and service providers . Our solutions
seamlessly integrate enterprise IT and wireless environment, which enable all
the players in the value chain to deploy value added services quickly and cost
effectively.
Altruist offers solutions that Combine with network design,
consulting, project implementation, training and technical support professional
services, allowing telecommunications companies to implement advanced and
next generation networks in order to take full advantage of their capabilities
and offer competitive services.
1.5.1 Our Credentials
 Comprehensive VAS application solutions covering the entire gamut of
telecom service providers, content provider and application vendor
requirements.
 Facilitation of third party VAS application development.
 One stop for all VAS applications
______________________________________________________________
Altruist Technologies

 Global support and presence


 State of the art facility for demonstrating VAS application
1.5.2 Our Services
(a)Voice Based Services
Our call centers boasts of world-class, expedient infrastructure, providing
reliable and round the clock service, which in turn enables companies and
corporations of throughout the world to enhance their productivity and
concentrate fully and exclusively on their core competencies. Our peerless
expertise can be further classified into the Outbound Call Centers and Inbound
Call Centers.Our clientele includes Mobile, Reliance Communications, Tata
Indicom, Idea Cellular.
(b) SMS Based Service
We have the expertise to handle very professionally the Text Processing
Contact Solutions, for handling SMS Based Services.
(c) Jukebox
We specialize in providing Jukebox service and can provide access to more
than a million full length tracks and music videos and hundreds of thousands of
albums - all available to download to your mobile, whenever you like.
2. Product Definition
(a) Mobile Voice Chat: Mobile Voice Chat is a VAS service in
telecommunication world. Mobile Voice Chat is an exciting and groovy
adaptation of Internet based Chat. Mobile Voice Chat is an product in which
peoples can talk to other persons without disclosing their own number. It also
allows subscribers to create their own profiles, specify a partner profile, surf
through profiles and be able to talk to desired profile one to one anonymously.
The convenience of mobility, and utmost personalization makes for a clear
recipe for a fun filled, mass targeted, hugely successful VAS. Doing millions of
minutes every month with over 5 Million rental paying active subscribers.
Ease of use as it requires no keywords/ processes. Just need to dial a number.
Available seamlessly over Voice, SMS and WAP it provides subscribers a choice
of media at various stages with complete porting of database and flexibility in
the hands of subscriber to swap from one to another medium for convenience
______________________________________________________________
Altruist Technologies

at will. Makes it convenient as different stages are more convenient/


pleasurable on voice/sms. A youth centric service popular across Metros/ Urban
and semi-urban and rural terrain. A full bodied, well researched, complete user
interface makes Altruist Mobile Chat an exiting and full filling experience.
1.5.4 Mobile Navigator on Voice- Lost? Call us
In a constantly evolving borderless world, technology rules in every aspect of
our lives. Mobile Technology has transformed global business and the way
people communicate, commute, entertain and live. With increase in inter
country and inter city commune, there is an unaddressed need for a navigation
system that can be accessed by anybody, anytime and most importantly with
ease. Whether you are a businessperson planning your next trip or a
salesperson headed for a sales call or a family headed to a new city for a
vacation or housewife headed to a party, you will benefit from LCU! If you have
ever stopped to ask for driving directions, you will not do so anymore with us.
LCU is India’s 1st voice based navigation platform accessed from anywhere,
anytime and anybody. It will be a “must have” service that would guide the
user within a particular city or from one city to another across India. All this, by
dialing a shortcode from your mobile and our efficient Navigation Counselors
will be eager to guide you through. On dialing the code the customer gets
connected to a live agent who will provide the customer with the required
information on a point of interest such as an ATM, restaurant, hospitals,
schools, corporate, amongst others or provide the shortest possible route to
reach their destination. This information can be noted down by the caller in the
phone call itself, or caller can be on hold while he drives to his destination or
he can get it as an SMS which can be referred to during the journey.
With an exhaustive list of 1.5 Million POIs (point of interests), we can assure
you that you will never be lost with us. No GPRS, No GPS, No separate device
or system required. Your Mobile will be your navigation tool. Altruist believes in
having strategic alliance with partners that provide world class quality products
so as to deliver a unique and seamless service for its clients. Here Altruist joins
hands with SatNav for LCU.
SatNav Technologies is one of India’s early starters in the IT Products
space, offering a wide array of Products both Off-the-shelf as well as
______________________________________________________________
Altruist Technologies

customizable, for both the B2B and the B2C markets. SatNav has strategic
alliances with the experts in the Industry and is consistently developing its
market intelligence and approach, which has led it to become a leader from a
pioneer in the focused business areas. SatNav has made significant progress in
the area of navigation and maps for India.
1.5.5 Mobile Social Networking
The mobile-centric internet meets the needs of the unwired.
Voice Chat to evolve into a full blown Mobile Social Networking platform
bringing in real world associations onto mobile. M Communities is a place to
make and connect with friends, an environment where you can share day-to-
day experiences at work, at home and at play.This platform has new
communities – like education, sports, health and entertainment – that enable
and encourage our users to better interact with each other.
The service additionally showcases a different community each month and the
featured topics will resonate with our members’ interests and lifestyles. By
delivering value to consumers – providing our users with a sense of community
and belonging as well as access to information that they can use to improve
their lives – Voice Chat population will continue to grow.Social Networking sites
like MySpace and Facebook have emerged recently as some of the hottest
names on the Internet.
MySpace, Facebook, Hi5, Orkut and Friendster - rank among the top 10 most-
visited websites globally.Transactions in Social Networking Space These
include News Corp's July 2005 acquisition of MySpace for US$580m and more
recently Microsoft's purchase of a 1.6% stake in Facebook for $240m, a
purchase price that values the entire company, which has annual revenue of
some $100-150m, at an impressive $15bn. One out of every four people online
visits social networks, according to the Consumer Internet Barometer.
1.5.6 Mobile Career Catalyst
Mobile Career Catalyst is the Students/Guardians key to all the relevant and
personalized information regarding Engineering and Medical Entrance Exams
sent proactively to them in an SMS everyday. It is a unique concept, and is a
revolutionary service that creates a media for the students for getting the
______________________________________________________________
Altruist Technologies

information they require. Thus, giving them CONCISE and personalized


Information in a very Convenient Way.
1.5.7 Jobs on Phone
Jobs on phone is the best way to finish your search for best job matching your
profile. It is the first service which helps you in getting your desired Job through
mobile phone.
Have tied up with Indian job search leader Naukri.com for posting job opening
on Jobsonphone IVR where the user can hear out the job details and apply to
them instantly.
Jobsonphone is the key to all the relevant and personalized information
regarding jobs and careers sent proactively to subscribers in an SMS or
through Voice Outdials everyday with possibilities of online interaction, resume
submission, short-listing etc.
It allows subscribers to create their resume by entering options and voice,
specify job preferences like industry, location, functional area, surf through
relevant listed vacancies and be able to apply and talk to desired Company or
consultant anonymously.
The convenience of mobility, and utmost personalization makes for a clear
recipe for success.
Mobiles with higher reach makes it cover wider than the internet and voice
lends it the convenience to address all levels in the employment pyramid with
a special focus on blue collared jobs.Successfully piloted with Mobile in Punjab
and in roll-out nationally with Reliance & Idea.Ease of use as it requires no
keywords/ processes. Just need to dial a number.
1.5.8 Other Products
(a) Horoscope Call
The service allows user to receive daily morning call that will play their daily
horoscope to the user. Additionally the user will also get a daily Vaastu and
Personality tip as sms alert.
(b) Mobile Astrology- Talk to Punditji
The service allows users to interact directly with a live Astrologer
(c) CRBT
Every caller can assign a song/music of his her choice as his caller tune
______________________________________________________________
Altruist Technologies

(d) Music On Demand (MOD)


Here the subscriber can dial in and listen to full songs of his choice. The
service ports the Radio experience on to the mobile
(e) Dial In Infotainment- Masala Zone
One stop solution for Mobile Entertainment

• Entertainment
• Gaming- Tambola, Quiz, Contests
• Cricket Alerts on Voice
• Horoscope
• News
• Song Dedication
• Ring tone Download
• SMS Bank on Voice
Tele-voting
Have already tied up with media brands and provide tele-voting for events like Indian
Idol etc
1.5.9 SMS Solutions:
(a) Bulk Messaging
Alongside our consumer targeted service, we offer bulk messaging for a
multitude of applications. Again, we focus on customer satisfaction, so we have
designed a standard Remote Access System based on the HTTP protocol and
SMPP. Sending a message is as easy as calling an URL from your application or
server-side scripts. The standard system boasts the following features:
• Sending to multiple recipients at once
• Sender ID
• Flash messages
• Nokia ringtones (and RTTL)
• Nokia logo's
• Delivery delay
• Delivery status check

(b) Web2SMS
______________________________________________________________
Altruist Technologies

This application extents sending SMS from Mobile to you PC .Using you can
send Single/Multiple SMS to your clients any where in the world both on GSM
and CDMA networks. This application is HTTP based and is quite fast and easy
to use. The user can design and send customized SMS to his friends. He can
also store messages in a virtual Inbox for further use.

1.6 TECHNOLOGY USED:


1.6.1 Voice (TTS, ASR)
By its nature, voice user interfaces have a number of advantages over other
user interfaces. Humans have used the spoken word to issue commands and
convey information for thousands of years. Entering numerical or textual
information via a numerical keypad is a relatively new phenomenon and is
often awkward. Furthermore, since voice user interfaces do not require
manipulation or visual inspection, they can be used safely while driving. In
applications requiring a caller to select from a long list of choices, speaking is
usually the easiest way of making a selection.
1.6.2. ASR (Automatic Speech Recognition)
ASR makes mobile phones to respond directly to the subscriber's commands.
Custom designed to recognize Indian voices and accents, the ASR service
makes life more convenient. Using ASR, subscriber's can get the latest updates
on news, stocks, cricket and their horoscope. Information will be sent through
SMS.
1.6.3. Text to Speech
Text to speech is a new revolution in software world. TTS technology can be
useful whenever a computerized application needs to communicate with a
customer or user, and so is especially useful in telephone services. Though
recorded material still provides the highest quality, recordings are often
impractical due to cost or time constraints. A very good telephony application
can be SMS to Landline phones. The user type a SMS with the destination
mobile number followed by message and sends the message to a predefined
number. The message is delivered to the Landline number in voice format.

1.6.4 SMS(Shot Message Service)


______________________________________________________________
Altruist Technologies

Short Message Service available on digital GSM networks allowing text


messages of up to 160 characters to be sent and received via the network
operator's message center to your mobile phone, or from the Internet, using a
so-called "SMS gateway" website. If the phone is powered off or out of range,
messages are stored in the network and are delivered at the next opportunity.

1.6.5 IVR(Interactive Voice Response)


IVR is a technology in which someone uses a touch-tone telephone to interact
with a database to acquire information from or enter data into the database.
IVR technology does not require human interaction over the telephone as the
user's interaction with the database is predetermined by what the IVR system
will allow the user access to. For example, banks and credit card companies
use IVR systems so that their customers can receive up-to-date account
information instantly and easily without having to speak directly to a person.
IVR technology is also used to gather information, as in the case of telephone
surveys in which the user is prompted to answer questions by pushing the
numbers on a touch-tone telephone.
1.6.6 WAP
People on the move need services, information and entertainment that can
keep up with them. The value of mobile services to end-users is boosted by
three separate elements: personalization, time-sensitivity and location
awareness. Combining these three effectively adds even more value.
Wireless application protocol (WAP) is a protocol that has
successfully established a de facto standard for the way in which wireless
technology is used for Internet access. WAP technology has been optimized for
information delivery to thin-client devices, such as mobile phones.

2. INTRODUCTION and REQUIREMENT ANALYSIS


2.1 Overview:

 Chat in India beats all other avenues of Internet usage by a distance;


______________________________________________________________
Altruist Technologies

 Most popular portals allow chat plug-ins. Chat sites hardly need to
advertise. In fact to popularize sites, a chat plug-in works best;
 The element of anonymity allows users to be themselves for a change;
 Chat allows a very upfront and no holds barred initiation, introduction and
platform to interact to users;
 People get into rooms/ huddles for finding like minded mates. Many a real
world friendships/ relationships/ business tie-ups are stemming out of chat
rooms with enhanced maturity and acceptance;
 Humans have a major craving to connect and communicate;
 Mobiles saw huge success and growth in numbers as they fit in very well
with the human social build up;
 Now it is the right time to provide an evolved interface for Value Added
Interaction and Communication;
 Mobile VAS as we know it currently is about content and there is a huge gap
on the covert desire of subscribers to connect with people; and
 Friends Chat, an adaptation of the popular Internet Chat is a promising
application which could possibly fill the void and translate to a big Revenue
Grosser, retention tool and clear differentiator.
Mobile Friends Chat is a Sticky, ARPU enhancing, Killer Application for the
YOUNG at heart

 Mobile VAS as we know it currently is about content and there is a huge gap
on the covert desire of People to connect with People. Friends Chat, an
adaptation of the popular Internet Chat is a promising application which
would fill this void and translate to a big Revenue Grosser, Retention Tool
and a Clear Differentiator;
 Altruist Friends Chat is a full bodied, well researched, complete user
interface for subscribers to talk/ chat over Voice / SMS anonymously (which
means by sharing only there virtual identities as created by them and never
giving out the mobile numbers). The intuitive, dynamic menu makes Altruist
Friends Chat an exhilarating experience;
 The service is absolutely secure with very stringent checks and moderation;
and
______________________________________________________________
Altruist Technologies

 Subscribers to be able to Chat with people across various circles of Mobile to


offer a lot of choice and variety to them.

2.2 Requirements:
2.2.1 Problem Analysis
Operators likeAIRCEL, MOBILE need to make promotions of their products or
packs .They launch any new products or packs timely, their products can be
like launch of new handsets or exchange offer of the old handsets with new
handsets or it can be new service packs for attracting customers like night
packs etc to increase revenues. For their products they have to do promotions
or advertisements for this they talk to the companies like ours who are
basically considered as vendors.
They talk to the vendors and describe about there products and offer for doing
promotions for there products or services. After we get contracted we tell our
requirements to the client end and deploy servers over there and start Product
for the specified period. Vendors also have there own products like Voice chat,
tambola ,Jobs on Phone, Cricket etc. These products are helpful in raising
revenues of both the vendor side as well as client side , if they get convinced
or like our products they offer us to do promotions of these products too on
contract basis. For these we use there

base stations, there msc’c ,bsc’s etc.The only we need to do is to deploy


servers at the client side and start running OBD and IVR.

2.2.2 Technical Requirements for IVR Setup:


Power & Physical Space Requirements
(a) Power Requirements
One 6-Amp Power Source
(b)Physical Space Requirements
IVR Machine (QTY : 1)
Dimension of server: 4u cabinet (Rack-mountable)
Size: 670*550*250 M.M.
(c)IP addresses Requirements
(i) Public IP (For Remote Administration & Patch Updates)
______________________________________________________________
Altruist Technologies

(ii) Remote Access Required from Source IP 59.94.224.160


(iii)Ports to be opened Remoteadmin(4899); VNC (5900,5901,5902); Remote
desktop connection(3389)
(iv) 1 local IP (IP should have Internet Accessibility)
There is no specific requirement about Class of IPs and existing network's IP
ranges can be used.
2.2.3 IVR(Interactive Voice Response)
IVR is a technology in which someone uses a touch-tone telephone to interact
with a database to acquire information from or enter data into the database.
The IVR system incorporates Dialogic boards, can run on Windows/Linux, is an
open platform and can interact with varied forms of databases. IVR technology
does not require human interaction over the telephone as the user's
interaction with the database is predetermined by what the IVR system will
allow the user access to.

IVRS can used to providing value added services to mobile subscribers in every
segment. Be it Information, Entertainment, Games or Music everything can be
made reach people in an interactive manner and 24 hours of the day using the
IVRS technology. A benefit both for the mobile users and telecom operators.
Banks and credit card companies can use IVR systems so that their customers
can receive up-to-date account information instantly and easily without having
to speak directly to a person.

IVR technology can also be used to gather information, as in the case of


telephone surveys in which the user is prompted to answer questions by
pushing the numbers on a touch-tone telephone.

2.2.4 ASR(Automated speech recognition)

ASR is a technology that allows a caller to speak rather punching numbers. The
technology makes mobile phones to respond directly to the subscriber's
commands. Recognizing and understanding a spoken sentence is obviously a
knowledge-intensive process, which must take into account all variable
information about the speech communication process, from acoustics to
semantics and pragmatics.
______________________________________________________________
Altruist Technologies

Basic ASR systems recognize single-word entries such as yes-or-no responses


and spoken numerals. User can now do with speaking rather entering dozens
of numerals manually and get response through an Interactive Voice Response
System.
However, an ASR system cannot always correctly recognize the input from a
person and can cause the system to misinterpret the input or do not accept it
at all. To compensate it can be backed up with a DTMF input by the user.

Supported Applications

(a) ASR and VAS: Custom designed to recognize Indian voices and accents,
the ASR service makes life more convenient. Using ASR, mobile subscriber's
can get the latest updates on news, stocks, cricket and their horoscope. Caller
just needs to speak the service. Say "cricket" to get latest updates on cricket.

(b) ASR and Customer Services: It is ideal for institutions that rely heavily
on customer service, and wish to make the communication most friendly and
convenient. Call centre, airlines, railways ,insurance companies can benefit
from this technology.

2.2.5 TTS (Text-To-Speech)

TTS synthesizer is a computer-based system capable of converting computer


readable text into speech. The text may then be either be directly introduced
in the computer by an operator or scanned and submitted to an Optical
Character Recognition (OCR) system.

TTS technology can be useful whenever a computerized application needs to


communicate with a customer or user, and so is especially useful in telephone
services.

2.2.6 EXISTING PRODUCT

OVERVIEW OF THE PROJECT

 Product require the user profile


______________________________________________________________
Altruist Technologies

 Every user has a unique Chat ID


 Product require searching criteria such as partner profile
 Matching chat id would be send to the user
 User can listen the profile of matching ID and can even chat to Chat ID
holders.

Product main features

(a)Product requirement from user: -


1. User own profile
2. User partner profile (which is user assumption about his/her partner for chat)
(b)Product facilities
1. Every mobile number after subscribing has a unique Chat ID in the voice
chat data base
2. User can subscribe or unsubscribe the service
3. User can listen his/her partner matching profiles
4. User can direct call the Chat ID and talk to the Chat ID holder if he/she allow to talk
5. User can block or unblock particular caht Id if he/she does not want to talk to that
chat id

2.2.7 IVR Interactive Voice Response:


In telephony, interactive voice response, or IVR, is a computerized system
that allows a person, typically a telephone caller, to select options from a voice
menu and otherwise interact with the computer phone system. Generally the
system plays a pre-recorded voice prompt and the caller presses a number on
a telephone keypad to select an option - i.e. "press 1 for yes, press 2 for no".
Some IVR systems can also recognize the caller's simple spoken answer such
as "yes", "no", or a number as a valid response to the voice prompt.
______________________________________________________________
Altruist Technologies

Call to
543216xxxxxxx
Call to570001
Msc MH

Msc KK

B party Conv to Altruist


57000xxxxxxx VXML
NLD APP Server
Msc OR

HP Open Call Media Platform DB


As VoiceXML Gateway

Altruist
VXML
HP APP Server
TCP/IP

DB
Msc Dehli

VoiceXML
HTTP

Fig: 2.1 TECHNOLOGIES USED

3. TECHNOLOGIES OVERVIEW
3.1 Software Technologies:
3.1.1 VXml,CCXml:
VoiceXML is a dialog markup language
• A programming language for building speech or DTMF enabled
voice based applications
______________________________________________________________
Altruist Technologies

• Emerging to be used for controlling different types of media,


including Video
CCXML is a call control markup language
• A programming language for controlling endpoints, media, and
conferences, and associating “dialogs” on those endpoints
3.1.2 CCXML + VoiceXML Architecture:

SIP Endpoint

Vocalocity OEM
Browser SIP Signaling RTP
ggggggggg

CCXML Browser SIP VoiceXML Browser SIP Media Server

MRCPv2 MRCPv2 RTP

MRCP Speech MRCP Speech


Recognizer (ASR) Synthesizer (TTS)

RTP
______________________________________________________________
Altruist Technologies

3.2 Hardware Technologies:


3.2.1 Global System for Mobile communications:
During the early 1980s, analog cellular telephone systems were experiencing
rapid growth in Europe, particularly in Scandinavia and the United Kingdom,
but also in France and Germany. Each country developed its own system,
which was incompatible with everyone else's in equipment and operation. This
was an undesirable situation, because not only was the mobile equipment
limited to operation within national boundaries, which in a unified Europe were
increasingly unimportant, but there was also a very limited market for each
type of equipment, so economies of scale and the subsequent savings could
not be realized.
The Europeans realized this early on, and in 1982 the Conference of European
Posts and Telegraphs (CEPT) formed a study group called the Groupe Spécial
Mobile (GSM) to study and develop a pan-European public land mobile system.
The proposed system had to meet certain criteria:

• Good subjective speech quality


• Low terminal and service cost
• Support for international roaming
• Ability to support handheld terminals
• Support for range of new services and facilities
• Spectral efficiency
• ISDN compatibility

In 1989, GSM responsibility was transferred to the European


Telecommunication Standards Institute (ETSI), and phase I of the GSM
specifications were published in 1990. Commercial service was started in mid-
1991, and by 1993 there were 36 GSM networks in 22 countries. Although
standardized in Europe, GSM is not only a European standard. Over 200 GSM
networks (including DCS1800 and PCS1900) are operational in 110 countries
around the world. In the beginning of 1994, there were 1.3 million subscribers
worldwide, which had grown to more than 55 million by October 1997. With
North America making a delayed entry into the GSM field with a derivative of
______________________________________________________________
Altruist Technologies

GSM called PCS1900, GSM systems exist on every continent, and the acronym
GSM now aptly stands for Global System for Mobile communications.

The developers of GSM chose an unproven (at the time) digital system, as
opposed to the then-standard analog cellular systems like AMPS in the United
States and TACS in the United Kingdom. They had faith that advancements in
compression algorithms and digital signal processors would allow the
fulfillment of the original criteria and the continual improvement of the system
in terms of quality and cost. The over 8000 pages of GSM recommendations try
to allow flexibility and competitive innovation among suppliers, but provide
enough standardization to guarantee proper interworking between the
components of the system. This is done by providing functional and interface
descriptions for each of the functional entities defined in the system.

3.2.2 Services provided by GSM:

From the beginning, the planners of GSM wanted ISDN compatibility in terms of
the services offered and the control signalling used. However, radio
transmission limitations, in terms of bandwidth and cost, do not allow the
standard ISDN B-channel bit rate of 64 kbps to be practically achieved.

Using the ITU-T definitions, telecommunication services can be divided into


bearer services, teleservices, and supplementary services. The most basic
teleservice supported by GSM is telephony. As with all other communications,
speech is digitally encoded and transmitted through the GSM network as a
digital stream. There is also an emergency service, where the nearest
emergency-service provider is notified by dialing three digits (similar to 911).

A variety of data services is offered. GSM users can send and receive data, at
rates up to 9600 bps, to users on POTS (Plain Old Telephone Service), ISDN,
Packet Switched Public Data Networks, and Circuit Switched Public Data
Networks using a variety of access methods and protocols, such as X.25 or
X.32. Since GSM is a digital network, a modem is not required between the
user and GSM network, although an audio modem is required inside the GSM
network to interwork with POTS.
______________________________________________________________
Altruist Technologies

Other data services include Group 3 facsimile, as described in ITU-T


recommendation T.30, which is supported by use of an appropriate fax
adaptor. A unique feature of GSM, not found in older analog systems, is the
Short Message Service (SMS). SMS is a bidirectional service for short
alphanumeric (up to 160 bytes) messages. Messages are transported in a
store-and-forward fashion. For point-to-point SMS, a message can be sent to
another subscriber to the service, and an acknowledgement of receipt is
provided to the sender. SMS can also be used in a cell-broadcast mode, for
sending messages such as traffic updates or news updates. Messages can also
be stored in the SIM card for later retrieval.

Supplementary services are provided on top of teleservices or bearer services.


In the current (Phase I) specifications, they include several forms of call
forward (such as call forwarding when the mobile subscriber is unreachable by
the network), and call barring of outgoing or incoming calls, for example when
roaming in another country. Many additional supplementary services will be
provided in the Phase 2 specifications, such as caller identification, call waiting,
multi-party conversations.

3.2.3 Architecture of the GSM network:

A GSM network is composed of several functional entities, whose functions and


interfaces are specified. Figure 1 shows the layout of a generic GSM network.
The GSM network can be divided into three broad parts. The Mobile Station is
carried by the subscriber. The Base Station Subsystem controls the radio link
with the Mobile Station. The Network Subsystem, the main part of which is the
Mobile services Switching Center (MSC), performs the switching of calls
between the mobile users, and between mobile and fixed network users. The
MSC also handles the mobility management operations. Not shown is the
Operations and Maintenance Center, which oversees the proper operation and
setup of the network. The Mobile Station and the Base Station Subsystem
communicate across the Um interface, also known as the air interface or radio
link. The Base Station Subsystem communicates with the Mobile services
Switching Center across the A interface.
______________________________________________________________
Altruist Technologies

Figure3.1. General Architecture of a GSM network

(a) Mobile Station

The mobile station (MS) consists of the mobile equipment (the terminal) and a
smart card called the Subscriber Identity Module (SIM). The SIM provides
personal mobility, so that the user can have access to subscribed services
irrespective of a specific terminal. By inserting the SIM card into another GSM
terminal, the user is able to receive calls at that terminal, make calls from that
terminal, and receive other subscribed services.
The mobile equipment is uniquely identified by the International Mobile
Equipment Identity (IMEI). The SIM card contains the International Mobile
Subscriber Identity (IMSI) used to identify the subscriber to the system, a
secret key for authentication, and other information. The IMEI and the IMSI are
independent, thereby allowing personal mobility. The SIM card may be
protected against unauthorized use by a password or personal identity
number.

(b) Base Station Subsystem

The Base Station Subsystem is composed of two parts, the Base Transceiver
Station (BTS) and the Base Station Controller (BSC). These communicate
across the standardized Abis interface, allowing (as in the rest of the system)
operation between components made by different suppliers.
______________________________________________________________
Altruist Technologies

The Base Transceiver Station houses the radio tranceivers that define a cell
and handles the radio-link protocols with the Mobile Station. In a large urban
area, there will potentially be a large number of BTSs deployed, thus the
requirements for a BTS are ruggedness, reliability, portability, and minimum
cost.
The Base Station Controller manages the radio resources for one or more BTSs.
It handles radio-channel setup, frequency hopping, and handovers, as
described below. The BSC is the connection between the mobile station and
the Mobile service Switching Center (MSC).

(c) Network Subsystem

The central component of the Network Subsystem is the Mobile services


Switching Center (MSC). It acts like a normal switching node of the PSTN or
ISDN, and additionally provides all the functionality needed to handle a mobile
subscriber, such as registration, authentication, location updating, handovers,
and call routing to a roaming subscriber. These services are provided in
conjuction with several functional entities, which together form the Network
Subsystem. The MSC provides the connection to the fixed networks (such as
the PSTN or ISDN). Signalling between functional entities in the Network
Subsystem uses Signalling System Number 7 (SS7), used for trunk signalling in
ISDN and widely used in current public networks.

The Home Location Register (HLR) and Visitor Location Register (VLR), together
with the MSC, provide the call-routing and roaming capabilities of GSM. The
HLR contains all the administrative information of each subscriber registered in
the corresponding GSM network, along with the current location of the mobile.
The location of the mobile is typically in the form of the signalling address of
the VLR associated with the mobile station. The actual routing procedure will
be described later. There is logically one HLR per GSM network, although it
may be implemented as a distributed database.

The Visitor Location Register (VLR) contains selected administrative


information from the HLR, necessary for call control and provision of the
subscribed services, for each mobile currently located in the geographical area
______________________________________________________________
Altruist Technologies

controlled by the VLR. Although each functional entity can be implemented as


an independent unit, all manufacturers of switching equipment to date
implement the VLR together with the MSC, so that the geographical area
controlled by the MSC corresponds to that controlled by the VLR, thus
simplifying the signalling required. Note that the MSC contains no information
about particular mobile stations --- this information is stored in the location
registers.

The other two registers are used for authentication and security purposes. The
Equipment Identity Register (EIR) is a database that contains a list of all valid
mobile equipment on the network, where each mobile station is identified by
its International Mobile Equipment Identity (IMEI). An IMEI is marked as invalid
if it has been reported stolen or is not type approved. The Authentication
Center (AuC) is a protected database that stores a copy of the secret key
stored in each subscriber's SIM card, which is used for authentication and
encryption over the radio channel.

3.2.4 How It Work:

(a) Network aspects

Ensuring the transmission of voice or data of a given quality over the radio link
is only part of the function of a cellular mobile network. A GSM mobile can
seamlessly roam nationally and internationally, which requires that
registration, authentication, call routing and location updating functions exist
and are standardized in GSM networks. In addition, the fact that the
geographical area covered by the network is divided into cells necessitates the
implementation of a handover mechanism. These functions are performed by
the Network Subsystem, mainly using the Mobile Application Part (MAP) built
on top of the Signalling System No. 7 protocol.
______________________________________________________________
Altruist Technologies

Figure 3.2 Signaling protocol structure in GSM

The signalling protocol in GSM is structured into three general layers,


depending on the interface, as shown in Figure 3. Layer 1 is the physical layer,
which uses the channel structures discussed above over the air interface.
Layer 2 is the data link layer. Across the Um interface, the data link layer is a
modified version of the LAPD protocol used in ISDN, called LAPDm. Across the
A interface, the Message Transfer Part layer 2 of Signalling System Number 7 is
used. Layer 3 of the GSM signalling protocol is itself divided into 3 sublayers.

(i) Radio Resources Management


Controls the setup, maintenance, and termination of radio and fixed channels,
including handovers.
(ii)Mobility Management
Manages the location updating and registration procedures, as well as security
and authentication.
(iii) Connection Management
Handles general call control, similar to CCITT Recommendation Q.931, and
manages Supplementary Services and the Short Message Service.
Signalling between the different entities in the fixed part of the network, such as
between the HLR and VLR, is accomplished throught the Mobile Application Part
(MAP). MAP is built on top of the Transaction Capabilities Application Part (TCAP, the
top layer of Signalling System Number 7. The specification of the MAP is quite
complex, and at over 500 pages, it is one of the longest documents in the GSM
recommendations.
______________________________________________________________
Altruist Technologies

(b) Radio resources management

The radio resources management (RR) layer oversees the establishment of a


link, both radio and fixed, between the mobile station and the MSC. The main
functional components involved are the mobile station, and the Base Station
Subsystem, as well as the MSC. The RR layer is concerned with the
management of an RR-session, which is the time that a mobile is in dedicated
mode, as well as the configuration of radio channels including the allocation of
dedicated channels.

An RR-session is always initiated by a mobile station through the access


procedure, either for an outgoing call, or in response to a paging message. The
details of the access and paging procedures, such as when a dedicated
channel is actually assigned to the mobile, and the paging sub-channel
structure, are handled in the RR layer. In addition, it handles the management
of radio features such as power control, discontinuous transmission and
reception, and timing advance.

(c) Handover
In a cellular network, the radio and fixed links required are not permanently
allocated for the duration of a call. Handover, or handoff as it is called in North
America, is the switching of an on-going call to a different channel or cell. The
execution and measurements required for handover form one of basic
functions of the RR layer.

There are four different types of handover in the GSM system, which involve
transferring a call between:

• Channels (time slots) in the same cell


• Cells (Base Transceiver Stations) under the control of the same Base
Station Controller (BSC),
• Cells under the control of different BSCs, but belonging to the same
Mobile services Switching Center (MSC), and
• Cells under the control of different MSCs.
______________________________________________________________
Altruist Technologies

The first two types of handover, called internal handovers, involve only one
Base Station Controller (BSC). To save signalling bandwidth, they are managed
by the BSC without involving the Mobile services Switching Center (MSC),
except to notify it at the completion of the handover. The last two types of
handover, called external handovers, are handled by the MSCs involved. An
important aspect of GSM is that the original MSC, the anchor MSC, remains
responsible for most call-related functions, with the exception of subsequent
inter-BSC handovers under the control of the new MSC, called the relay MSC.

Handovers can be initiated by either the mobile or the MSC (as a means of
traffic load balancing). During its idle time slots, the mobile scans the
Broadcast Control Channel of up to 16 neighboring cells, and forms a list of the
six best candidates for possible handover, based on the received signal
strength. This information is passed to the BSC and MSC, at least once per
second, and is used by the handover algorithm.

The algorithm for when a handover decision should be taken is not specified in
the GSM recommendations. There are two basic algorithms used, both closely
tied in with power control. This is because the BSC usually does not know
whether the poor signal quality is due to multipath fading or to the mobile
having moved to another cell. This is especially true in small urban cells.

The 'minimum acceptable performance' algorithm gives precedence to power


control over handover, so that when the signal degrades beyond a certain
point, the power level of the mobile is increased. If further power increases do
not improve the signal, then a handover is considered. This is the simpler and
more common method, but it creates 'smeared' cell boundaries when a mobile
transmitting at peak power goes some distance beyond its original cell
boundaries into another cell.

The 'power budget' method uses handover to try to maintain or improve a


certain level of signal quality at the same or lower power level. It thus gives
precedence to handover over power control. It avoids the 'smeared' cell
______________________________________________________________
Altruist Technologies

boundary problem and reduces co-channel interference, but it is quite


complicated.

(d) Mobility management

The Mobility Management layer (MM) is built on top of the RR layer, and
handles the functions that arise from the mobility of the subscriber, as well as
the authentication and security aspects. Location management is concerned
with the procedures that enable the system to know the current location of a
powered-on mobile station so that incoming call routing can be completed.

(e) Location updating


A powered-on mobile is informed of an incoming call by a paging message sent
over the PAGCH channel of a cell. One extreme would be to page every cell in
the network for each call, which is obviously a waste of radio bandwidth. The
other extreme would be for the mobile to notify the system, via location
updating messages, of its current location at the individual cell level. This
would require paging messages to be sent to exactly one cell, but would be
very wasteful due to the large number of location updating messages. A
compromise solution used in GSM is to group cells into location areas. Updating
messages are required when moving between location areas and mobile
stations are paged in the cells of their current location area.
The location updating procedures, and subsequent call routing, use the MSC
and two location registers: the Home Location Register (HLR) and the Visitor
Location Register (VLR). When a mobile station is switched on in a new location
area, or it moves to a new location area or different operator's PLMN, it must
register with the network to indicate its current location. In the normal case, a
location update message is sent to the new MSC/VLR, which records the
location area information, and then sends the location information to the
subscriber's HLR. The information sent to the HLR is normally the SS7 address
of the new VLR, although it may be a routing number. The reason a routing
number is not normally assigned, even though it would reduce signaling, is
that there is only a limited number of routing numbers available in the new
MSC/VLR and they are allocated on demand for incoming calls. If the subscriber
______________________________________________________________
Altruist Technologies

is entitled to service, the HLR sends a subset of the subscriber information,


needed for call control, to the new MSC/VLR, and sends a message to the old
MSC/VLR to cancel the old registration.

For reliability reasons, GSM also has a periodic location updating procedure. If
an HLR or MSC/VLR fails, to have each mobile register simultaneously to bring
the database up to date would cause overloading. Therefore, the database is
updated as location updating events occur. The enabling of periodic updating,
and the time period between periodic updates, is controlled by the operator,
and is a trade-off between signaling traffic and speed of recovery. If a mobile
does not register after the updating time period, it is deregistered.

A procedure related to location updating is the IMSI attach and detach. A


detach lets the network know that the mobile station is unreachable, and
avoids having to needlessly allocate channels and send paging messages. An
attach is similar to a location update, and informs the system that the mobile is
reachable again. The activation of IMSI attach/detach is up to the operator on
an individual cell basis.

(f) Authentication and security


Since the radio medium can be accessed by anyone, authentication of users to
prove that they are who they claim to be, is a very important element of a
mobile network. Authentication involves two functional entities, the SIM card in
the mobile, and the Authentication Center (AuC). Each subscriber is given a
secret key, one copy of which is stored in the SIM card and the other in the
AuC. During authentication, the AuC generates a random number that it sends
to the mobile. Both the mobile and the AuC then use the random number, in
conjuction with the subscriber's secret key and a ciphering algorithm called A3,
to generate a signed response (SRES) that is sent back to the AuC. If the
number sent by the mobile is the same as the one calculated by the AuC, the
subscriber is authenticated .

The same initial random number and subscriber key are also used to compute
the ciphering key using an algorithm called A8. This ciphering key, together
______________________________________________________________
Altruist Technologies

with the TDMA frame number, use the A5 algorithm to create a 114 bit
sequence that is XORed with the 114 bits of a burst (the two 57 bit blocks).
Enciphering is an option for the fairly paranoid, since the signal is already
coded, interleaved, and transmitted in a TDMA manner, thus providing
protection from all but the most persistent and dedicated eavesdroppers.

Another level of security is performed on the mobile equipment itself, as


opposed to the mobile subscriber. As mentioned earlier, each GSM terminal is
identified by a unique International Mobile Equipment Identity (IMEI) number. A
list of IMEIs in the network is stored in the Equipment Identity Register (EIR).
The status returned in response to an IMEI query to the EIR is one of the
following:

White-listed
The terminal is allowed to connect to the network.
Grey-listed
The terminal is under observation from the network for possible problems.
Black-listed .The terminal has either been reported stolen, or is not type
approved (the correct type of terminal for a GSM network). The terminal is not
allowed to connect to the network.

(g) Communication management

The Communication Management layer (CM) is responsible for Call Control


(CC), supplementary service management, and short message service
management. Each of these may be considered as a separate sublayer within
the CM layer. Call control attempts to follow the ISDN procedures specified in
Q.931, although routing to a roaming mobile subscriber is obviously unique to
GSM. Other functions of the CC sublayer include call establishment, selection of
the type of service (including alternating between services during a call), and
call release.

(h)Call routing
Unlike routing in the fixed network, where a terminal is semi-permanently
wired to a central office, a GSM user can roam nationally and even
______________________________________________________________
Altruist Technologies

internationally. The directory number dialed to reach a mobile subscriber is


called the Mobile Subscriber ISDN (MSISDN), which is defined by the E.164
numbering plan. This number includes a country code and a National
Destination Code which identifies the subscriber's operator.
The first few digits of the remaining subscriber number may identify the
subscriber's HLR within the home PLMN.
An incoming mobile terminating call is directed to the Gateway MSC (GMSC)
function. The GMSC is basically a switch which is able to interrogate the
subscriber's HLR to obtain routing information, and thus contains a table
linking MSISDNs to their corresponding HLR. A simplification is to have a GSMC
handle one specific PLMN. It should be noted that the GMSC function is distinct
from the MSC function, but is usually implemented in an MSC.
The routing information that is returned to the GMSC is the Mobile Station
Roaming Number (MSRN), which is also defined by the E.164 numbering plan.
MSRNs are related to the geographical numbering plan, and not assigned to
subscribers, nor are they visible to subscribers.

The most general routing procedure begins with the GMSC querying the called
subscriber's HLR for an MSRN. The HLR typically stores only the SS7 address of the
subscriber's current VLR, and does not have the MSRN (see the location updating
section). The HLR must therefore query the subscriber's current VLR, which will
temporarily allocate an MSRN from its pool for the call. This MSRN is returned to the
HLR and back to the GMSC, which can then route the call to the new MSC. At the new
MSC, the IMSI corresponding to the MSRN is looked up, and the mobile is page.
______________________________________________________________
Altruist Technologies

d in its
current location area .

Figure 3.3 Call routing for a mobile terminating call

4. SOFTWARE DESIGN
4.1 what is AFC:
4.1.1 Salient Features:

• Altruist Friends Chat allows subscribers to talk/ chat over SMS /


Voice anonymously (which means by sharing only there virtual
identities as created by them and never giving out the mobile
numbers);
• A full bodied, well researched, complete user interface makes
Altruist Friends Chat an exhilarating experience;
______________________________________________________________
Altruist Technologies

• Available seamlessly over SMS & Voice it provides subscribers a


choice of media at various stages; and
• Altruist besides offering the complete hardware, software,
application platform, running and upkeep, also provides marketing
inputs accumulated from running it for over 6 months in 9 circles.

4.1.2 Driving Principle’s:


Altruist believes for any VAS to click it should:
• Offer a host of possibilities
• Appeal across verticals - segments
• Be DONKEY PROOF - easy to use
• Create Excitement - engrossing
• EVOLVING – Constant upgrade’s & a road map.
4.1.3 Advantages:
Promising as it would just accentuate all the drivers of chat
• Secure (mobiles are mostly personal unlike computers which are
shared)
• High availability (mobile is always on and with you)
• Little or no spam as it would be charged.
• No bandwidth issues for upgrading to voice
• Platform independent as chat can happen on SMS, Voice and WAP.

4.2 Friends Chat on Voice:


4.2.1 Registration

• Subscriber dials IVR Short code 543216;


• Creates his profile by answering simple questions like age,
sex, location, etc. through IVR DTMF inputs;
• Creates desired Friend’s profile by answering similar
questions;
• Subscriber then records a short prompt on himself/ herself
for others to hear and chose from;
• Asked if he would like other subscribers to be able to call
him/ her. Y/N input taken over DTMF;
______________________________________________________________
Altruist Technologies

• On successful registration subscriber sent SMS telling him


his ID – 543216ABCDEFG(Unique 7 digit numeric id appended
to 543216); and
• Preferred medium for registration is Voice for its
interactivity. Communication to be primarily about dialing
543216.
4.2.2 Service Flow

• Registered subscriber dials 543216;


• Given the option of listening to already created profiles/
editing his own profile/ allowing or dis-allowing people from
being able to call;
• If Chooses to hear profiles, while listening to profiles given
the option of speaking to the person by pressing 1;
• If one is pressed, desired profile is out-dialed; CLI shown is
ID of calling subscriber. The two subscribers talk;
• After call is disconnected the ID’s 543216ABCDEFG are sent
to both for future conversation;
• Anytime anybody (even people without an ID themselves)
can dial any ID, to be able to talk except if there is a block; and
• Also requested to make a profile for his ID.

4.2.3 Other Features:

• Subscriber can edit his or his desired partner profile by


dialing 543216;
• Can block people from being able to talk to him/ her;
• Can block people except those allowed specifically from
calling in;
• Can log out temporarily by dialing 54321601. When he does
that would not receive any calls till he logs back in;
• Toll Free Login/ Logout is available; and
• The killer element to bring back dormant subscribers is that
they are told about partners matching their profiles.
______________________________________________________________
Altruist Technologies
______________________________________________________________
Altruist Technologies

User calls
Call
CallFlow
Flow

Is the user
subscribed

Check the
circle/location
of the user This language sequence is
variable in Language options
as well their sequence .For
ex the given sequence is for
Here the default keys are playing punjab , similarly the LS for
Hindi ke liye 1 other circle is different
in hindi only dabayein, for depending upon the regional
english press 2 , and most spoken languages
punjabi lai 3 of that zone………….
dabavo

User selects a language and is


served in the same language
thereafter , if when he calls next
time after subscribing he is served
in the same language though he
can change his language if he
wants

Welcome to Airtel friends chat Now choose and make


friends from thousands of people across the country
and Talk directly to them anonymously . Friends chat
comes at a nominal monthly charge of rupees 30
.enjoy reduced call charges of Airtel friends chat by
33% from rs 3 per minute to Rs. 2 per minute .So now
chat more and pay less Currently online are a few
cool and Fun Loving people like <start playing
recordings>

Recording of the currently activated


user plays . Recordings of female
and male user play one by one.

This prompt plays after every


To subscribe and profile
talk to this Friend
press 1 or press to
listen to next
profile

Page 2 Now listen to what


our next friend has
to say

Figure 4.1 Call Flow When A User Dial Short Code


______________________________________________________________
Altruist Technologies

Before connecting say something


about yourself after the beep for
others to hear and make friends
with you. To end recording press
#

User records
his/her profile

You have
recorded

<>

To change your
recording press 2 else
pls wait

Let’s record again. After the beep, speak Your mobile number will
a few exciting things about yourself like never be disclosed to
your name, hobbies, sun sign, the kind of anyone while you chat.
music you like etc . To end the recording Press 1 if you are a Male Or
press hash key press 2 if you are a female.

Please wait while


we connect you to
your friend.

Call patches

Figure 4.2 Call Flow When We Patch Your Call To New Friend
______________________________________________________________
Altruist Technologies

Figure4.3 CallFlow For Existing user

These options and their


sequence is circle specific ad
static

Press 1 for orrisa; Press 2


Press 1 for rajasthan; Press 2 for gujrat; Press 3 for
For friends in Delhi press for kolkatta or West Bengal;
Up West; Press 4 for UP East; Press 5 for Madhya
1, For Haryana press 2, Press 3 for bangalore; Press
4 pradesh; Press 6 for mumbai; Press 7 for 9
for himachal press 3 & for 4 for Andhra Pradesh; Press
maharashtra; Press 8 for biharand Press 9 for other
other chat rooms press 4 5 for Kerala; Press 6 for
chat rooms other
Tamil Nadu or chennai

User chooses
an option

Welcome to < selected locations


name > Chat Room.

Here we will play recordings of the


friends that match your criteria and
you can speak to them directly .
This prompt will play
when none of the profile
of any gender any
We are not able to profile matches
Are there any
find any friend
matching
matching your
profiles
criteria

Here profile with recording and without


recording play consecutively .for profile without Yes
recording the below prompt plays “
The Female /Male friend that does not have
recording from<selected locations name> Matching
profile plays

On pressing 2 Profiles will If Logged out then


move in loop To talk to this prompt plays:
friend press 1 to “ The chatid you
go to next profile are trying to call This busy prompt is played
press 2 ,has logged out from our end that too when
from the service. the called up party is
female only . Reason: If
We shall like to know about We shall like to know about call made to female user
your hobbies which shall help your Chat interests which shall does not matures
us to find like minded people for help us to find like Minded Is the selected continuously4 times in an
you. Incase you are interested people for you. Incase you are chat id If Busy: The friend hour then we do not push
in Indoor Sports then press 1, interested in Friendship related available you are trying to any call to her in hat hour
For Cicket press 2, for watching talk then press 1, For Politics chat is busy , and from next hour only1
Films press 3, For Music press press 2, For Sports press 3, please try after call is pushed until the call
4, Or For interest in travelling Talk on Films press 4, For some time matures
Press 5 Music Press 5.
______________________________________________________________
Altruist Technologies

These options and their


sequence is circle specific ad
static

Press 1 for orrisa; Press 2


Press 1 for rajasthan; Press 2 for gujrat; Press 3 for
For friends in Delhi press for kolkatta or West Bengal;
Up West; Press 4 for UP East; Press 5 for Madhya
1, For Haryana press 2, Press 3 for bangalore; Press
4 pradesh; Press 6 for mumbai; Press 7 for 9
for himachal press 3 & for 4 for Andhra Pradesh; Press
maharashtra; Press 8 for biharand Press 9 for other
other chat rooms press 4 5 for Kerala; Press 6 for
chat rooms other
Tamil Nadu or chennai

User chooses
an option

Welcome to < selected locations


name > Chat Room.

Here we will play recordings of the


friends that match your criteria and
you can speak to them directly .
This prompt will play
when none of the profile
of any gender any
We are not able to profile matches
Are there any
find any friend
matching
matching your
profiles
criteria

Here profile with recording and without


recording play consecutively .for profile without Yes
recording the below prompt plays “
The Female /Male friend that does not have
recording from<selected locations name> Matching
profile plays

On pressing 2 Profiles will If Logged out then


move in loop To talk to this prompt plays:
friend press 1 to “ The chatid you
go to next profile are trying to call This busy prompt is played
press 2 ,has logged out from our end that too when
from the service. the called up party is
female only . Reason: If
We shall like to know about We shall like to know about call made to female user
your hobbies which shall help your Chat interests which shall does not matures
us to find like minded people for help us to find like Minded Is the selected continuously4 times in an
you. Incase you are interested people for you. Incase you are chat id If Busy: The friend hour then we do not push
in Indoor Sports then press 1, interested in Friendship related available you are trying to any call to her in hat hour
For Cicket press 2, for watching talk then press 1, For Politics chat is busy , and from next hour only1
Films press 3, For Music press press 2, For Sports press 3, please try after call is pushed until the call
4, Or For interest in travelling Talk on Films press 4, For some time matures
Press 5 Music Press 5.

Has the User filled in If -Busy, Switched off, no pick


his chat interests and from switch end then the
hobbies respective prompt plays
Either of the 2 prompts plays
if the user has not filled both
the fields else the non filled
The friend you wish to
entry plays . After 3 seconds
We are connecting speak to is busy , we are
Here if the user does not trying to connect you to a
responds till 3 seconds his to your female /
male friend. friend with similar interests
call is patched
Please wait

Call patch Call patch


with agent

Figure 4.4 Call Flow For New User


______________________________________________________________
Altruist Technologies

Enter the seven


digit chat id of the
friend you wish to
speak to

You have entered

Depending upon the options


< no . Repeat> the respective prompt plays

If this is correct
then press 1, to
enter again press
2
The chatid you are trying to call does not exists. /
The chatid you are trying to call ,has logged out
Check if the Id from the service./
is valid /correct/ No The chatid you are trying to call have blocked
exists your id./
The chatid you are trying to call get unsubscribed
from the service..

Check if the Id
male is male or Female
female
User is taken
to main menu

We are connecting We are connecting


to your male to your female
friend. Please wait friend. Please wait

If -Busy, Switched off, no pick


Call patch from switch end then the
respective prompt plays

The friend you wish to


speak to is busy, we are
trying to connect you to a
friend with similar interests

Call patch
with agent

Figure 4.5 Call Flow For Known Friend


______________________________________________________________
Altruist Technologies

To change Language Preference press 1, To edit Man.prof


Options3&4
your profile press 2, To edit your search Criteria 3&4
press 3, To Block/Unblock Id press 4, For Login/
logout option press 5, To Unsubscribe press 6, Or
This language sequence is for help press 9. Press * anytime to go to Main
variable in Language options Menu Man.prof
as well their sequence .For Options5,6&9
5,6&9
ex the given sequence is for
1 2
punjab , similarly the LS for
other circle is different Edit.prof
depending upon the regional Options4&5
4&5
and most spoken languages Hindi ke liye 1 For gender change press 1, to change your age
of that zone…………. dabayein, for press 2, to change your recording press 3, To
english press 2 , change your chat interest preference press 4,
punjabi lai 3 to edit your Hobby press 5 Or Press * to go to
dabavo main menu

1 2 3

Your mobile number will Enter your age.


Record something about yourself
never be disclosed to For e.g. if your are
after the beep for others to hear and
anyone while you chat . 21 yrs then press
make friends with you. To end
Press 1 if you are a Male Or 2 and 1 on your
recording press #
press 2 if you are a female. phone

User records
2
Your entry has You have entered
been saved
You have
recorded
If this is correct
press1 to enter
again press 2
<>
1
1
Your Age has To listen your
been updated recording press 1, to
Your recording has
save your recorded 2
been saved
profile press 2 and to
record again press 3

Let’s record again. After the beep, speak


a few exciting things about yourself like
your name, hobbies, sun sign, the kind of
music you like etc . To end the recording
press hash key

Figure 4.6 Call Flow For Change The Profile


______________________________________________________________
Altruist Technologies

For gender change press1, to change your age


press 2, to change your recording press 3, To
change your chat interest preference press4,
to edit your Hobby press 5 Or Press * to go to
main menu

We shall like to know about your Chat interests


We shall like to know about your hobbies which shall
which shall help us to find like Minded people
help us to find like minded people for you. Incase you
for you. Incase you are interested in Friendship
are interested in Indoor Sports then press1, For
related talk then press 1, For Politics press 2,
Cicket press 2, for watching Films press 3, For Music
For Sports press3, Talk on Films press 4, For
press 4, Or For interest in travelling Press 5.
Music Press 5.

User presses
a valid key User presses
a valid key

Your entry has


been saved Your entry has
been saved
______________________________________________________________
Altruist Technologies

T o ch an ge La ng uag e Pr efe rence1,press T o e dit


you r pro file p ress
2, T o e dit yo ur search C rite ria
pre ss3, T o Block /U nblock Id p ress4, F o r Login/
log ou t op tio n p ress
5, T o U n su bscribe pre 6,ssOr
fo r he lp pr ess
9. Pre ss* an ytim e to go to M a in
M e nu

3 4

T o ch ang e you r pa rtne r ge nder


T o block any u se r id
press1 ,to ch an ge yo ur partn er
* M ain m en u press1 or to unb lo ck
a ge press 2 a nd to go back to
a ny id pr ess
2
m a in m e nu pre*.ss

1 2

Enter the se ve n Ente r the se ve n


If you a re looking digit chat id of the digit cha t id of the
F or friends b etw e1en 8 to 25
fo r a fe m a le friend frien d you w ish to frie nd yo u w ish to
years press 1, 2 5 to 3 5 yea rs
then p ress 1, for block unb lo ck
p ress2, 3 6 to 45 yea rs p ress 3
m a le frie nd press
or m o re th an45 years p ress 4.
2.

U ser enters U ser en ters


th e C h at id the C ha t id

U se r presses
a va lid key

C heck if the C h eck if th e


en tere d cha t id entere d ch at id
is valid is valid

Your en try has


bee n saved

Figure 4.8 Call Flow For Change Profile


______________________________________________________________
Altruist Technologies

To change Language Preference press 1, To edit


your profile press 2, To edit your search Criteria
press 3, To Block /Unblock Id press 4, For Login /
1
logout option press 5, To Unsubscribe press 6, Or
for help press 9. Press * anytime to go to Main
Menu

5 6

To log in press 1 If you temporarily wish stop receiving


or press 2 to calls from your chat friends then just
logout from the logout from the service . To logout
service press 1 else to unsubscribe press 2.

1 2 2 1

You have successfully 9 You are successfully


logged out . You will not You have successfully
You have unsubscribed . To re
receive any calls from logged out . You will not
successfully subscribe call 51010
your chat friends till you receive any calls from your
logged in anytime . We would love
login chat friends till you login
to have to back .

Call
disconnects

Airtel friends chat is a unique service that provides you an opportunity to meet
and speak to people of your interest and who knows you may find that special
person you’ve been looking for !! The best part is that your mobile number will
never be disclosed while you chat with your prospective friend . It is very simple to
start using the service . All you need is to become a member of this service which
gives you a unique seven digit identification number . This number will be used by
others to get in touch with you . You may search for your friend basis your liking
and get in touch with them by dialing their seven digit identification number . We
shall recommend you to record exciting things about you which others can hear
and get encouraged to talk to you . We also have options for logout to stop
receiving calls when you are busy . So join this exclusive service and get
connected .you can get this service by dialling 543216 and also the call charges of
Friends chat has been reduced by 33% , so now talk more at rs 2 per minute
instead of rs 3 per minute .

Figure 4.9 Call Flow For Change Profile

4.3 ROAD MAP:


VAS is all about innovation and imagination, so likewise Friends Chat will also be more
enhanced, technological improved with time. Some of the ideas that can be
incorporated could be:
______________________________________________________________
Altruist Technologies

Multiple User Chat Rooms: As the next step to one to one Voice Chat there is a Chat
room feature wherein people can get into topical huddles and discuss, interact and
chose the people they may want to have a one on ne interaction with.
Add Ons: Do more than just chat. Send greeting messages, dedicate songs and gift
Hello Tunes to people using only the Chat Id. Send physical gifts to each other through
Chat Id.

• WAP/ GPRS interface to Friends Chat.


• Celebrity Chats: Bring in celebrities to chat with chosen few
subscribers. Celebrities could be national, regional or even local.
• Radio/ TV Integration: Knit chat into a TV/ Radio show with the
focus on promoting A NEW WAY OF LIFE, A NEW WAY TO INTERACT &
FIND FRIENDS.\
• Gifting of Flowers and other items
• Playing Pranks
• Play Music while Chatting and send Musical Messages

4.4 FREQUENLY ASKED QUESTIONS


The current version of the Friends Chat is made very simple and effective so as
not to confuse the subscribers and give maximum value. VAS market is very
dynamic and innovative so certainly our product will have a next release with
______________________________________________________________
Altruist Technologies

the updated features as per the market need. The service is designed in such a
way that we can enhance or plug any new features and take out the next
release.
• What is Friends Chat Service?
Sir / Ma’am, Altruist Friends Chat allows you to find friends and
talk to them over SMS or Voice without displaying your mobile
number. Instead you get a 7 digit chat ID as your Friends Chat
identity.
The service is absolutely secure with very stringent checks and
moderation. Subscribers to be able to Chat with people across
various circles of Mobile to offer a lot of choice and variety to
them.

• Is this available to all customers?


Yes, the service is available to all the postpaid & prepaid
customers of Mobile.

• How can I subscribe for this?


Subscribers should send SUB/ START to 57000 or Simply call
57000 IVR and simple prompts will guide to subscribe for the
service.

• How can I find friends on Voice Chat


Dial the Voice Chat IVR number (57000) and go to profiles option.
Here you shall hear the recordings of other users, giving you the
option to choose your own friends. Incase, you like a particular
recording/ user profile, you may press 1 from your handset to
speak to that user.
Also, the service sends you SMS alerts of Chat Id’s that match
your profile criteria. OR Simply Write F /M/ PROF and send to
57000 to receive matching profiles.

• How do I make a Friends Chat Call?


______________________________________________________________
Altruist Technologies

There a 2 ways to make a Chat call to your friends:


You can directly dial your friend’s 7 digit Chat ID number prefixed
with 543216. for e.g. to call your friend with Chat Id 3412342,
simply dial 565653412342 from your phone. The call will
automatically get connected to your friend with your Chat ID as
the calling number.
OR you can call 543216 and select the option “Make a Chat Call”.
The system will then prompt you to enter the Chat ID number you
want to call and then the call gets connected.

 How can I make Friends using SMS CHAT?


Matching Chat Id will be received by the subscriber on regular
basis (Same can be obtained by sending F/M/PROF to 543216) .
send your Text/Binary message to chatid prefixed with 543216.
eg to send msg to a friend whose chat id is 1234567 , send ur
text “Hi ..this is Amit” to 5432161234567.

Recipient will receive msg frm his/frnd’s Chatid prefixed by


543216 , eg recipient will receive msg from 5432167789457 , to
which he/she can reply back(which is toll free) and start chatting

• What are the charges for Friends Chat Service?


Monthly Subscription is Rs 30/-
Usage @ Rs 2/ SMS for non subscriber
Rs 2/SMS for subscriber

• Can I stop myself from receiving Chat calls/SMS?


YES, you can call the Service IVR at 54321602(toll free) or Simply
write LOGOUT and send to 543216(toll free).To start receiving the
calls, you need to call 54321601 (toll free) or write LOGOUT and
send to 543216(toll free).
______________________________________________________________
Altruist Technologies

• I am existing user of FRIENDS CHAT Service, now I


want to unsubscribe for this, how can I do that?
Subscribers should call 543216 and go to the options menu.
Select Unsubscribe option. Or write UNSUB/STOP and send to
543216(toll free)

• What cities is this service available in?


Sir / Ma’am, the service is available to all Mobile customers across
India.

• Can I use Chat Service while roaming?


Yes, you can use the service in Roaming also.

4.5 BEST PRACTICES WITH IMPACT ANALYSIS:

• Press Adverts – Done in Gujarat & Rajasthan in regional


language newspapers and gave a good spike , raised the level of
daily MoU’s which gave rise to SMS transistion also.

• Radio – A week long campaign around Valentine’s day in


Gujarat & Friendship day in MP wherein the RJ’s were constantly
talking about Chat and inviting people to talk to them through
Chat went a long way in promoting Voice Chat as a concept and
drove a lot of awareness amongst the youth. Particularly effective
given the high reach and salience of FM.

• Out Bound Dialer: A very exciting OBD with a very different


concept of a male profile and a female profile introducing Voice
Chat to the relevant target subscribers was done and gave
excellent results with a conversion ratio of over 8%.

• Addressing Consumer Direct Touch Points: The service


info is provided on Customer Care IVr, Call hold prompt, Bill
______________________________________________________________
Altruist Technologies

Messages, Prepaid Recharge IVR, Prepaid activation IVR, Leaflets


& Posters in Showrooms, Cross Service promos etc.

• Ladies free Offer – Subscription fee was waived off for the
ladies in some circles which helped bring more of them and also
in retaining the existing one’s. Done in Gujarat very effectively
and increased the number of ladies by 100% and the success
minutes by 50%. Similar experience informally in Punjab where

• Incentives for Receiving msg – Clearly the bottleneck in


Voice/SMS Chat as a service is on the number of people receiving
calls/msg and not so much on the calling side which is why the
following typical offers were done in some circles with good
success:
– VLCC Vouchers for people receiving more than 100
minutes/150 msg in a month.
– Ladies purses/ Movie tickets/ travel coupons from Club
Mahindra were gifted.
– Recharge worth 500 rupees to 10 top recipients in HP
has given them the highest Fem to Male ratio and also a
high success rate. The other good thing about recharge is
the ease of delivery and simple logistics.

• One Month Trial – Rental waived for first month for trial.
Attempted as a weekend offer or a one week offer and gave good
results. Done in allmost circles for Voice Chat.
• On Ground Events – Passes to various Christmas and New
Year bashes were distributed. Colleges/ Hostels etc were covered
in Punjab/ Gujarat for free trial subscription offers. Worked
extremely well but needs on ground support from Mobile for good
results and close co-ordination with Marcom teams for execution.
______________________________________________________________
Altruist Technologies

A Lot of impact is possible especially around Valentines through


the on ground medium

Celebrity Chats – Some regional personalities were put on Chat like Satinder Satti in
Punjab/ Tanaaz & Bakhtiar in Maharshtra/ some local Models etc. Some bursts in
minutes were seen in these places. The concept could be really ignited if to start with
couple of big names could be brought on Chat as then the other celebs would follow
suit for the sake of visibility. Mobile support on this count would help make it a reality
______________________________________________________________
Altruist Technologies

5. CODING
5.1 Programming Languages & Development Tools:
As our company has to provide Solutions and various Value Added Services to
any Telecom Company so in order to this we have to wok on separate VXML,
Core Java Servlets and Apache Tomcat. As all programs in our company are
based on these languages. All the code is written in CCXML, VXML, Servlets
and Java is used just to communicate with Oracle.

5).Basic Operations in Mobile voice chat:-


5.1)
How To activate a MSISDN(Mobile Station International
Subscriber Directory Number):-
MSISDN is a number used to identify a mobile phone number internationally.
To use the service first of all we have to activate a customer in the service,
their are two possible ways to activate a number.
1).Through URL:- Simplest way to activate a number in the service
is through URL. In it we just transfer the list of numbers to a particular
server location, and then simply browse the list from the position where
it is stored.
______________________________________________________________
Altruist Technologies

2). Through File Uploadation:- The second most prominent way to activate
numbers into the service is the file uploadation. In this method we have to
transfer the list of MSISDN’s to the server in the specific path .

Examplary Program
\
********************************************************************************
*****************
THIS PROGRAM INSERTS ANI(Mobile Number), STATUS ,MODE(Activation Mode)
INTO TABLE FOR SUBSCRIPTION OF NUMBERS
********************************************************************************
******************/

import java.sql.*;
import java.net.*;
______________________________________________________________
Altruist Technologies

import java.io.*;
import java.lang.*;
import java.util.*;

import com.mysql.jdbc.Driver.*;

public class AircelURL


{
public static void main(String DevelopedBy Gulab Singh[])
{
try
{
BufferedReader br =new
BufferedReader(newInputStreamReader(newFileInputStream(new
File("e:\\jfiles\\AircelURL\\ani.txt"))));
String temp="";
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con =
DriverManager.getConnection("jdbc:mysql://10.178.78.321:3306/vms","vms","
vms");

Statement stmt =con.createStatement();


String ani ="";
String status ="";
String modeofact ="";
while((temp =br.readLine()).trim()!=null)
{

StringTokenizer sstr = new StringTokenizer(temp,",");


while (sstr.hasMoreTokens())
{
ani =sstr.nextToken().trim();
modeofact=sstr.nextToken();
______________________________________________________________
Altruist Technologies

break;
}

System.out.println(ani);
try
{
ResultSet rs1=null;
rs1 =stmt.executeQuery("select count(1) from tbl_aircelurl where
ani='"+ani+"'");
rs1.next();
int state =rs1.getInt(1);
rs1.close();
if(state >0)

System.out.println(" tbl_aircelurl already contains this NUMBER made by


Gulab Singh");
}
else
{

System.out.println("PLACED IN TBL_AIRCELURL")
stmt.executeUpdate("insert into tbl_aircelurl(ani,status,mode
values('"+ani+"','SUB','"+modeofact+"')");

}
catch(Exception i)
{
i.printStackTrace(); }
______________________________________________________________
Altruist Technologies

}
catch(Exception oo)
{
oo.printStackTrace();
}
}
}

5.2)
How To deactivate a MSISDN(Mobile Station International
Subscriber Directory Number):-
MSISDN is a number used to identify a mobile phone number internationally.
To use the service first of all we have to deactivate a customer from the
service, their are two possible ways to deactivate a number.
1).Through URL:- Simplest way to deactivate a number in the
service is through URL. In it we just transfer the list of numbers to a
particular server location, and then simply browse the list from the
position where it is stored.
______________________________________________________________
Altruist Technologies

2). Through File Uploadation:- The second most prominent way to deactivate
numbers into the service is the file uploadation. In this method we have to
transfer the list of MSISDN’s to the server in the specific path .

Examplary Program
\
********************************************************************************
*****************
THIS PROGRAM INSERTS ANI(Mobile Number), STATUS ,MODE(Activation Mode)
INTO TABLE FOR SUBSCRIPTION OF NUMBERS
********************************************************************************
******************/

import java.sql.*;
import java.net.*;
import java.io.*;
______________________________________________________________
Altruist Technologies

import java.lang.*;
import java.util.*;

import com.mysql.jdbc.Driver.*;

public class AircelURL


{
public static void main(String DevelopedBy Gulab Singh[])
{
try
{
BufferedReader br =new
BufferedReader(newInputStreamReader(newFileInputStream(new
File("e:\\jfiles\\AircelURL\\ani.txt"))));
String temp="";
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con =
DriverManager.getConnection("jdbc:mysql://10.178.78.321:3306/vms","vms","
vms");

Statement stmt =con.createStatement();


String ani ="";
String status ="";
String modeofact ="";
while((temp =br.readLine()).trim()!=null)
{

StringTokenizer sstr = new StringTokenizer(temp,",");


while (sstr.hasMoreTokens())
{
ani =sstr.nextToken().trim();
modeofact=sstr.nextToken();
break;
______________________________________________________________
Altruist Technologies

System.out.println(ani);
try
{
ResultSet rs1=null;
rs1 =stmt.executeQuery("select count(1) from tbl_aircelurl where
ani='"+ani+"'");
rs1.next();
int state =rs1.getInt(1);
rs1.close();
if(state >0)

System.out.println(" tbl_aircelurl already contains this NUMBER made by Gulab


Singh");
}
else
{

System.out.println("Excluded fom TBL_AIRCELURL")


stmt.executeUpdate("insert into tbl_aircelurl(ani,status,mode
values('"+ani+"','SUB','"+modeofact+"')");

}
catch(Exception i)
{
i.printStackTrace(); }

}
______________________________________________________________
Altruist Technologies

}
catch(Exception oo)
{
oo.printStackTrace();
}
}
}

There are two different ways how a customer


comes for Subscription into voicechat :-

1). Through IVR:-


In IVR the user just dials the short code consist of six digits (for local location) or ten
digit long code (for remote location), then the user just interact with the prerecorded
computer instructions and subscribe the service. Here is the activation flow which
takes place as follows..

Registration Registration Complete


On To IVR and user gets his Unique
Voice Chat Chat ID via SMS

New User Calls

Profile Pool

Voice Chat System Selects a profile to Browses Voice Chat


calls to selected party chat with
. User Profiles

Call connected to
selected profile
______________________________________________________________
Altruist Technologies

2). Through OBD(OUT BOUND DIALING):-

OBD(Out bound dialing) is the second prominent way with the help of which we make
to subscribe a customer into the service. In OBD we just plays prerecorded prompts to
users which they listen and opt to subscribe the service.
For playing a prompt to a selected number of users we make the following steps.
2.1) Free the channels on which we have to make the OBD:

SAMPLE PROGRAM TO FREE THE CHANNELS FOR PLAYING OBD:


import java.lang.*;
import java.util.*;
import java.io.*;

class DeleteUnWantedHelloTunesFiles extends Thread

private static String Path="E:\\HelloTunes\\";


private static int Channels=118 ;
private static File InsideChannelDir=null;
public static void main(String ImplementedByManishSharma[])
{
int i=105;
for(i=105;i<Channels;i++)
{
try
{
File Directory=new File(Path + i + "\\log");
String FileName[]=Directory.list();
int j=0;

for(j=0;j<FileName.length;j++)
{
File FullPath = new File(Directory + "\\" + FileName[j]);
if(FullPath.isDirectory()==true)
{
}
else
{
System.out.println("Deleting File-->"+" " + FullPath);

System.out.println("");
______________________________________________________________
Altruist Technologies

FullPath.delete();
}
//Thread.sleep(100);
}
}
catch(Exception ex)
{
System.out.println("Error Occured-->"+" " + ex);
}
}
}
}

2.2) Loding the base into the specified channels:

import java.io.*;
import java.util.*;
import java.sql.*;
import java.lang.*;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.text.DecimalFormatSymbols;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.lang.Integer;
class FileCopy
{ //Function to print the exception
private void alert(Exception e)
______________________________________________________________
Altruist Technologies

e.printStackTrace();

} //End Function to print the exception

private String divideAndMakeFile(String FolderName,String FileName,String TotalSubsFile,String


PromoFile,String HelloTuneFile,int StartChannel,int EndChannel)

{
int i,j;
try
{

System.out.println(FolderName + FileName + ".txt");


BufferedReader in = new BufferedReader(new FileReader( FolderName + FileName "+.txt"));

Try
{
BufferedWriter[] Out = new BufferedWriter[160];
BufferedWriter[] TotalSubs1=new BufferedWriter[160];
BufferedWriter[] Promo1=new BufferedWriter[160];
BufferedWriter[] HelloTune1=new BufferedWriter[160];
int[] TotalSubs=new int[160];
{
System.out.println("totalsubs length---->done good .."+TotalSubs.length);
}
for (i=0; i<TotalSubs.length; i++)
{
TotalSubs[i]=0;
}
for (i=StartChannel;i<=EndChannel ;i++ )
{
Out[i] = new BufferedWriter(new FileWriter( FolderName +FileName + i+ ".txt",true));
}
String str;
int isEOFile = 1;

while(isEOFile==1)
{
for (i=StartChannel;i<=EndChannel ;i++ )
{
if ((str = in.readLine()) != null)
{
if (Integer.parseInt(str.substring(0,1))==0)
{
Out[i].write(str);

TotalSubs[i]=TotalSubs[i]+1;
______________________________________________________________
Altruist Technologies

Out[i].newLine();
}
else
{
Out[i].write(str);

TotalSubs[i]=TotalSubs[i]+1;

Out[i].newLine();
}
}
else
{
isEOFile=0;
}
}
}
for (j=StartChannel;j<=EndChannel ;j++ )
{
Out[j].close();
}
in.close();

for (i=StartChannel;i<=EndChannel ;i++ )

{
TotalSubs1[i] = new BufferedWriter(new FileWriter( FolderName +TotalSubsFile+ i+
".txt"));
TotalSubs1[i].write(Integer.toString(TotalSubs[i])) ;

TotalSubs1[i].close();
}
for (i=StartChannel;i<=EndChannel ;i++ )
{
Promo1[i] = new BufferedWriter(new FileWriter( FolderName +PromoFile+ i+ ".txt"));

Promo1[i].write("STARTPROMO");

Promo1[i].close();
}
for (i=StartChannel;i<=EndChannel ;i++ )
{
HelloTune1[i] = new BufferedWriter(new FileWriter( FolderName +HelloTuneFile+ i+
".txt"));
HelloTune1[i].write("0");
HelloTune1[i].close();
}
return("yes");
}
catch (Exception e)
______________________________________________________________
Altruist Technologies

{
alert(e);
return("no");
}
}
catch (Exception e)
{
alert(e);
return("no");
}
} //Function to move the created files in the required folders

private String copyAndPasteFile(String SrcDir,String DestDir,String SrcfileName,String


DestfileName)
{
String srcDirName = SrcDir;
String destDirName = DestDir;

String absSrcName = new


StringBuffer( srcDirName ).append( File.separator ).append( SrcfileName ).toString();
String absDestName = new
StringBuffer( destDirName ).append( File.separator ).append( DestfileName ).toString();

try
{
File srcFile = new File( absSrcName );

File destFile = new File( absDestName );

if ( srcFile.renameTo( destFile ) )

return("yes");
else
{
return("no");
}
}

catch( Exception x )

x.printStackTrace();
}
return("no");

} // End Function to copy and paste the created files in the required folders

public static void main(String[] args)


{
______________________________________________________________
Altruist Technologies

Try
{
FileCopy objFileCopy=new FileCopy();

Calendar cal = new GregorianCalendar();

NumberFormat formatter = new DecimalFormat("00");

int Channels;

String SourceDir,DestDir;

String FolderName, SrcFileName, DestFileName,TotalSubsFile,PromoFile,HelloTuneFile;

int StartChannel,EndChannel,count;

int year = cal.get(Calendar.YEAR);

int month = cal.get(Calendar.MONTH);


int day = cal.get(Calendar.DAY_OF_MONTH);

DestFileName="HelloSubs" ;

SrcFileName="HelloSubs" + Integer.toString(year) +formatter.format(month+1)+


formatter.format(day) ;

TotalSubsFile="TotalSubs" ;

PromoFile="Promo" ;

HelloTuneFile="HelloTune" ; // File Making for Prompt OBD

StartChannel=105;
EndChannel=118;

SourceDir="E:\\HelloTunes\\OBD1\\";
if
((objFileCopy.divideAndMakeFile(SourceDir,SrcFileName,TotalSubsFile,PromoFile,HelloTuneFil
e,StartChannel,EndChannel))=="yes")
{
for (count=StartChannel; count<=EndChannel;count++ )
{
DestDir="E:\\HelloTunes\\" + Integer.toString(count) + "\\log";
If
(!new File(DestDir).exists())
new File(DestDir).mkdir();
else
{
DeleteDirectory(new File(DestDir));
new File(DestDir).mkdir(); }
______________________________________________________________
Altruist Technologies

if (objFileCopy.copyAndPasteFile(SourceDir,DestDir,SrcFileName+integer.toString(count)
+".txt",DestFileName+".txt")=="yes")
{
If (objFileCopy.copyAndPasteFile(SourceDir,DestDir,TotalSubsFile+Integer.toString(count)
+".txt",TotalSubsFile+".txt")=="yes")

If (objFileCopy.copyAndPasteFile(SourceDir,DestDir,PromoFile+Integer.toString(count)
+".txt",PromoFile+".txt")=="yes")

If (objFileCopy.copyAndPasteFile(SourceDir,DestDir,HelloTuneFile+Integer.toString(count)
+".txt",HelloTuneFile+".txt")=="yes")

catch(Exception ex) {ex.printStackTrace();}


}

public static void DeleteDirectory(File filename)


{
Try
{
if(filename.isDirectory())
{
String children[]=filename.list();
for(int i=0;i<children.length;i++)
{
System.out.println(filename+"\\"+children[i]);
new File(filename+"\\"+children[i]).delete();
}
System.out.println(filename);

filename.delete();

}
}
catch(Exception excep){ excep.printStackTrace();}

}
}
______________________________________________________________
Altruist Technologies

5.3 An Introduction toVoiceXML


5.3.1 What is VoiceXML?
VoiceXML is a mark-up language for specifying interactive voice dialogues
between a human and a computer Analogous to HTML VoiceXML browser
interprets .vxml pages Can be dynamically generated by server-side scripts
(JSP, ASP, CGI, Perl) Can access external databases (e.g. SQL)
Example
<?xml version="1.0"?>
<vxml version="2.0">
<form>
<prompt>
Hello world!
</prompt>
</form>
</vxml>
VoiceXML platform
______________________________________________________________
Altruist Technologies

Architecture:

Figure 5.1 Architecture


______________________________________________________________
Altruist Technologies

Figure 5.2 Architecture of VXml


5.2.2 Voice User Interface (VUI):
Traditional web-based forms The purpose of a dialogue is to fill forms GUI vs.
VUI Fonts vs. prosody Large menus vs. short utterances Hypertext navigation
vs. voice commands Constraint on forms vs. recognition grammars Global
options always visible vs. only uttered at the beginning of the dialogue.

5.2.3 Why use VoiceXML?


Advantages of VoiceXML platforms Special-purpose programming languages Reduces
development costs Separation between dialogue system components Portability of
application
Flexibility: outsource or purchase equipment Choose best-of-breed components Re-
use of Internet infrastructure VoiceXML is becoming a standard

5.3 The VoiceXML language


(a) XML structure

< element_name attribute_name="attribute_value">


......contained items......
< /element_name>
______________________________________________________________
Altruist Technologies

(b) Basic elements


prompt: specifies the system’s utterance
audio: play pre-recorded prompts
form: set of fields
field: information needed to complete task
grammar: specifies possible inputs to a field

(c ) Basic elements
filled: what to do if user input is recognized
value: return a field’s value
goto: go to another form or file
submit: go to another file and keep field values

(d) Error handling


user says nothing: noinput
nothing matches the grammar: nomatch

(e) VoiceXML document


<?xml version="1.0"?>
<vxml version="2.0”>
<form id= “get_student_name”>
<field name= “student_name”>
<prompt> What's your name? </prompt>
<grammar> john | mary | rob </grammar>
<noinput> Please say your name. </noinput>
<nomatch> I didn’t understand that. </nomatch>
<filled>
Thank you, <value expr= “student_name” />
<submit next=“next_document.vxml” />
</filled>
</field>
</form>
______________________________________________________________
Altruist Technologies

</vxml>
What do we want
to know?
What’s next?
Acceptable answer
Wrong answer?
No answer?
Possible answers
Question

(f) Recognition grammars


Key to successful recognition Many platform-dependent formats (JSGF, SGL,
etc.)
Inline grammar External file
<grammar src=“mygram.gram” type=“application/x-jsgf” />
Example with optional inputs (in brackets)
#JSGF V1.0;
grammar pizza;
public <pizza> = [I’d like a] <size> <type> [pizza] [please];
<size> = small | medium | large;
<type> = vegetarian | pepperoni | cheese;

(g) Built-in grammars


Boolean
Currency
Date
Digits
Number
Phone
Time

Example:
______________________________________________________________
Altruist Technologies

<field name=“get_digits” type=“digits”>


Can add additional constraints
<field name=“get_digits”
type=“digits?minlength=3;maxlength=9”>

(h) Events
<nomatch count=3> What did you say ? </nomatch> Similar to exceptions
Thrown by Platform: ASR misrecognition Application: <throw>
Handler Specific: <noinput>, <nomatch>, <help> General: <catch event=…>
Can count number of event occurrences Successive ASR errors with different
repairs

5.4 VoiceXML properties


Can be modified using the <property>element Confidence level of ASR .
Barge-in Time-out Voice/DTMF Properties can be defined at all levels: for the
whole application, document, or a specific field

5.5 Mixed-initiative dialogues


VoiceXML allows for simple mixed-initiative More flexible More room for errors
A form-level grammar that can recognize multiple fields at once E.g. “Please
tell me a departure day and a destination”. Grammar needs to account for all
possible orderings
• “I’m going to DEST on DATE”
• “I’m leaving on DATE to go to DEST”
What if we don’t have all required information at once?
• Back to directed dialogue
• Need traditional fields
How to know what fields remain unfilled?

5.6) Tables Used:-


1.) Subregmaster:-
______________________________________________________________
Altruist Technologies

The main basic table used in voice chat, it contains all the entries which
comes into the service.
Column Name Data Type Precesion
serialno int 10
mobileno varchar 10
subId int 10
PlanId int 10
MmsKeyword varchar 10
requestMode int 10
deliverymode int 10
gwdatetime datetime 10
regId int 10
validitydate datetime 10
inittransid int 10
trRequest int 10
Amt int 10
nDays int 10
isBilled bit 10
OperatorId int 10
CircleId int 10
OperatorIdentifier varchar 10
trInitiater int 10
OprBillResponse varchar 10
DivisionId int 10
ClientId int 10
ShortcodeId int 10
responsedate datetime 10
campaignId int 10
contenttypeid int 10
BillingType int 10
UsageMinutes int 10
UserAccountType varchar 10

2).Subscriptionbilled:-
This table contains the entries whose billing has been done. It’s main fields are

Column Name Data Type Precesion


______________________________________________________________
Altruist Technologies

RegId int 10
mobileno numeric 18
Name varchar 25
Sex bit 10
Address varchar 25
City varchar 15
Proviance varchar 15
Organization varchar 15
RegistrationDate datetime
SubId int 10
UrlId int 10
LastPushLevenNo int 10
unsubflag int 10
UpdateDate datetime
TransID int 10
Channel varchar 10
Pushdate datetime
ValidityDate datetime
RenevalAlert int 10
AlertUrl varchar 10
SubscriptionMode varchar 10
PlanID int 10
dctLoginName varchar 15
ProviderMasterId int 10
OperatorId int 10
CircleId int 10
OperatorIdentifier varchar 10
CampaignId int 10
nRenewal int 10
UserRequestedPlanId int 10
ShortCodeId int 10
UsedMinutes int 10
BalanceMinutes int 10

5.7 Form Interpretation Algorithm


Defines how control flows through a VoiceXML application as it executes Makes
VoiceXML declarative Just specify utterances, fields and grammars Define what
happens, not how FIA deals with procedural details
• Keeps querying undefined fields
______________________________________________________________
Altruist Technologies

• Throw events and loop until field is filled by user


<nomatch> or <noinput>
<filled>

5.8 FIA – confirmations


If a field value isn’t confirmed by user, set it to undefined and the FIA will ask
for it again
<field name=“confirm” type=“boolean”>
<prompt> Do you want details on <value expr=“student_name” />?
</prompt>
<filled>
<if cond=“confirm”>
Looking up details on <value expr=“student_name” />
<else />
Let’s try again
<clear namelist=“student_name confirm” />
</if>
</filled>
</field>

5.9 Limitations
Simple mixed initiative How to retrieve information from a database?
What about more advanced dialogue system features?
Content summarization Multiple database entries Find alternatives answers
Dynamic grammars If the database changes, the recognition grammar must
adapt
Generate VoiceXML pages dynamically

5.10 Dynamic VoiceXML


Similar to dynamic HTML pages Content isn’t stored on the server, but created
on-the- fly based on the user’s parameters and a database Typical interaction:
A static VXML page collects information from the user Submit the fields to a
server-side script (JSP, PHP, ASP, Perl, etc.) The script queries the database and
______________________________________________________________
Altruist Technologies

processes the results The script outputs VXML code which is interpreted by the
browser.
5.10.1 Dynamic VoiceXML
(Database)
JSP, PHP,
Perl scripts

5.10.2 Implementation in Perl


When form is filled, send fields value to the server-side script for Processing
<filled> Thank you
<submit next=“http://mywebserver/script.perl”>
</filled>
The Perl script collects information
$q = new CGI;
$name = $q->param('student_name');
Connect to the SQL database
$handler = DBI->connect("DBI:mysql:$db", $user, $password);
Query the database for the student’s name
$query = $handler->prepare(“SELECT * FROM students
WHERE name = \”$name\”” );
$query->execute;
Output beginning of VoiceXML document (<xml>, <voicexml>,
<form>, <prompt>)
Output result, i.e. the student’s phone number
@row = $sth->fetchrow_array;
print “The phone number of $name is $row[2]\n”;
Output end of VoiceXML document (</form>, </voicexml>, etc.)

5.10.3 Dynamic grammars


What to do when the recognition vocabulary is not known in advance?
Rewrite a grammar at each database update Better, use a server-side script to
Retrieve patterns from database Write grammar to an external file Call
a VXML page using this grammar
______________________________________________________________
Altruist Technologies

5.11 Conclusion
VoiceXML has become a standard All-in-one solutions available Reduces
dialogue system development time Comes with limited dialogue management
and language generation capabilities Additional functions can be easily
Implemented Develop your own dialogue system with free VoiceXML browsers!

6. SOFTWARE TESTING
6.1 INTRODUCTION:
Testing of software deals with checking of the software that whether it is
working as it should be according to the system design. The software should
not be performing any functions less than the required and also not follow
something extra or perform unwanted operations. Thus a software testing
______________________________________________________________
Altruist Technologies

deals with the process of verifying that the system works according to the
requirement specifications and the system design.
The testing may be done in many ways. On the basis of the knowledge
of the software tester the testing may be divided into three groups. They are:

6.1.1 Black-Box Testing: In Black-Box Testing the tester only knows what
the software is supposed to do-he can’t see how it operates. If he types in
a certain input, he gets a certain output. He doesn’t know how or why it
happens, just that it does. Means run a test, give input and verify its
output and if any bug or unexpected result u have faced, and ask
developer to review its related code.

6.1.2 White-Box Testing: While in White-Box Testing the software tester has
access to the program’s code and can examine it for clues to help him
with his testing-he scan see inside the box. Thus we can say that in white-
box testing the tester has knowledge about the software that what and
how the things are going on inside the system. Thus he can debug that
the certain error is coming from which part of the software.

6.1.3 Static Testing: Static Testing refers to testing something that’s not
running, means just examining and reviewing it without running it. It is just
related to reviewing of concerned code.

6.1.4 Dynamic Testing: While the Dynamic Testing refers to the process that
you would normally think of as testing-running and using the software.
Other testing procedures can be the mixture of the above i.e. Static Black-
Box testing, Dynamic Black-Box testing, Static White-Box testing, and the
Dynamic White-Box testing and so on.
The testing could be done on basis of confirming the behavior of a module and
the features related to a particular type. This is the Object based testing. One
could say that the process of testing is fully related on the Software
Development Model followed to develop the software. If there is no record of
requirements and design specifications of the software then one could not
think of the Static testing of the software. Similarly the dynamic testing is
______________________________________________________________
Altruist Technologies

possible only at the completion of some portion of the project. The project
should be in the state of running for the dynamic testing.

6.1.5 Conclusion: The test cases are based to test the behavior in a specific
condition. They are formed generally to test each and every part of the code
i.e. each statement is executed at least once when testing the software.
The first step is to test the application for all the methods. They are checked
whether are working according to the requirement specifications or not. Only
after rigorous testing, the module is passed to the next phase.
The second phase consists of the Negative testing. I played with the
application and just try to produce an exception. Still the software application
should be good enough to handle all the activities of the user and still behave
properly. This is a real test of the application from the torture level point of
view. The application, which passes from this phase, is then sent to the next
and the final phase of the testing.
Thus each of the methods in the application undergoes rigorous testing before
being actually opened for the users.
For Black Box testing, we have made a number of automated test cases,
considering all the run time requirements. These test cases are made in such a
way that about every part of code would be executed by the tester, at least for
once. So the tester can run these test cases without continuously giving his
time to these as these are capable to run themselves without requiring
interaction from tester. So in this phase, there is a little to do for tester, just he
is responsible only for running this test case unit and for sending them to
concerned authority, after their completion.
For white box testing, we have followed unit-testing procedure. Besides it, we
have also followed the static testing technique, to make our code more
efficient. For it, the senior engineers, generally working in same team, are
appointed for reviewing of any particular part of component. This helps us in
optimizing our code quality and in rectifies the hidden bug in our architecture,
which is traced out by reviewing of code, due to experience of concerned
appointed engineer.
______________________________________________________________
Altruist Technologies

6.2 Steps for checking service:

1. Open the VNC server and enter the IP address for the Landline server.
2. Open the VOSBOX (ADL Display).
3. Right click on the vosbox and select the control panel.
4. In the control Panel, select the ADL (Topaz).
5. In Topaz, we check for the channels on which our Trunk and Media
resources are running. By clicking the refresh button we can check the
present status of the channels like Idle, Calling, Connected, Remote
Disconnected etc.
6. If they are working properly, then click on Close.
7. After that go to E:/IVR/Update folder.
8. There create a file number.txt which contains the dialing number.
9. After that we open the ADL display to check the call status.
10. If the service is running properly, then we stop, otherwise next step
is followed to correct it.

6.3 Steps for the Correcting the Service:


Mainly two basic steps are followed to correct the Services and third step if
the problem is not corrected by the first two steps, these are:
A). Restart the services.
B). Restart the System.
C). Find the problem.

a).Steps to restart the services:


1.Stop the VOS box by right clicking on the VOS box and then selecting the
stop option.
2. Then go to desktop click icon named Configuration Manager-DCM present
on the Desktop, the window appears on which start, stop and other
buttons are present. Stop the dialogic card by clicking the Stop button.
When the stop button is clicked, the window shows the status as ‘Stop
Pending’ which means that the card is in process to stop. When the card
is stopped the status will show ‘Stopped’.
______________________________________________________________
Altruist Technologies

3. Do check whether any instance of the Dialogic might not be running,


throw Task Manager. If running do stop that.
4. Now restart the Dialogic by clicking on the start button.
5. After that run the batch files such as VOS.BAT and VAS.BAT/TATA,exe.
These files are present on the desktop in the folder named ‘”Batch File”.
6. Now, see whether problem is solved or not. For this, follow the step of
the Checking service.

b).Steps to restart the System:


1. Stop VOS box and VAS. Stop the VOS box by right clicking on the VOS
box and then selecting the stop option.
2. Then go to desktop click icon named Configuration Manager-DCM
present on the Desktop, the window appears on which start, stop and other
buttons are present. Stop the dialogic card by clicking the Stop
button. When the stop button is clicked, the window shows the status as
‘Stop Pending’ which means that the card is in process to stop. When the
card is stopped the status will show ‘Stopped’.
3. After that restart the System.
4. As System get restated, and then do start the Card by clicking icon
named Configuration Manager-DCM present on the Desktop. Then Click the
Start button on the Configuration Manager window.
5. After that run the batch files such as VOS.BAT and VAS.BAT present on
the desktop in the folder named “Batch File”.
6.Now, see whether problem is solved or not. For this, follow the step of the
Checking service.

c).Find the problem: Under this, there may be different errors responsible
for the problem such as:
1. Database error : If there is a database error check weather the record
in the database is ok or not. Check for the procedures used.
2. VOS error : If there is a problem regarding incoming call and outgoing
call
then check the code written in VOS.
______________________________________________________________
Altruist Technologies

4. Text File error : If there is any problem regarding logs then check for the
code which is used to make corresponding logs.
5. VAS error : If there is any error in writing the records in the database or
there is any error in calling procedures then we check the VAS.java file.
As this code is used for the connectivity of Database and VOS Code.

7. EVALUATION & IMPLEMENT

7.1 EVALUATION:
We have following approaches for the evaluation
1) Benchmarking- Comparing the performance of hardware and
software.
2) Experience of other users- Vendors generally gives a list of users
who are satisfied with their work. But it is advisable to seek the
opinion independently.
3) Report of independent research organizations- Many research
organizations undertake project of evaluating the proprietary
software offered by various software agencies. They publish the
report at regular interval. The prospective buyer of a software
package can have faith in their evaluation.
In our case we have evaluated our System and found that the hardware and
software are in absolute sync with each other. Their performance has been
found to be up to the mark. We also compared our software with other
recruitment systems on other platforms and found that we were offering a
much better system at a lesser price and on a more sophisticated and user
friendly technology. Plus we offered complete maintenance and support for a
certain period of time.
7.2 IMPLEMENTAION:
Implementation includes all those activities that take place to convert from old
system to the new one. The new system may be completely new. Successful
Implementation may not guarantee improvement in the organization using the
______________________________________________________________
Altruist Technologies

new system, improper installation will prevent it. Implementation uses the
design document to produce code. Demonstration that the program satisfies
its specifications validates the code. Typically, sample runs of the program
demonstrating the behavior for expected data values and boundary values are
required. Small programs are written using the model: It may take several
iterations of the model to produce a working program. As programs get more
complicated, testing and debugging alone may not be enough to produce
reliable code. Instead, we have to write programs in a manner that will help
insure that errors are caught or avoided.

7.2.1 Top-down implementation: Top down implementation begins with the


user invoked module and works toward the modules that do not call any other
modules. The implementation may proceed depth-first or breadth-first.

7.2.2 Bottom- Up implementation: Implementation begins with modules


that do not call any other modules and work toward the main program. Test
harnesses are used to test individual modules. The main module constitutes
the final test harne

7.2.3 STUBS: Stub programming is the implementation analogue of top-down


and stepwise refinement. It supports incremental program development by
allowing for error and improvement. A stub program is a stripped-down,
skeleton version of a final program. It doesn't implement details of the
algorithm or fulfill all the job requirements. However, it does contain rough
versions of all subprograms and their parameter lists. Furthermore, it can be
compiled and run. Extensive use of procedures and parameter are the
difference between stub programs and prototypes. Quick and dirty prototypes
should be improved and rewritten. A stub program helps demonstrates that a
program's structure is plausible. Its procedures and functions are
unsophisticated versions of their final forms, but they allow limited use of the
entire program. In particular, it may work for a limited data set. Often the high-
level procedures are ready to call lower-level code, even if the more detailed
subprograms haven't even been written.
______________________________________________________________
Altruist Technologies

7.3 INCREMENTAL PROGRAM DEVELOPMENT:


As program becomes more complex, changes have a tendency to introduce
unexpected effects. Incremental programming tries to isolate the effects of
changes. We add new features in preference to adding new functions, and add
new function rather than writing new programs. The program implementation
model becomes:
 define types/compile/fix;
 add load and dump functions/compile/test;
 add first processing function/compile/test/fix;
 add features/compile/test/fix;
 add second processing function/compile/test/fix;
 keep adding features/and compiling/and testing/ and fixing.

System was implemented at the client site in the following manner:


1) First of all we did a thorough system check on the client’s machine in
terms of hardware and software to ensure that there was enough space
to load and run our application with ease.
2) Then we installed Oracle 10g, VXml,CCXml, Server (back end) and Java
Servlets (front end) on the server.
Since the software was present on other systems and running properly,
there wasn’t much trouble in obtaining and installation.
3) Then came the process of Database Creation at the server site which
involved the generation This procedure is also known as Database
4) To establish contact with the server as per their requirement and each
request should be implemented. This task actually is fairly crucial
depending on the number of users trying to access the server at same
time so a load test needs to be performed.
5) Finally came the job of training the users which meant that the clients were
given instructions regarding the working of the system which included teaching
them the When the user was fully trained, he or she was asked to run the system
independently and enter different sorts of data to test the system to its limits.
______________________________________________________________
Altruist Technologies

6) Our system not only met the user requirements but to certain extent
exceeded in achieving much more then what was actually needed.

8. SCOPE OF THE PROJECT

8.1 TELECOM VALUE ADDED SERVICES


______________________________________________________________
Altruist Technologies

Altruist enables carriers to unlock the Revenue potential of their networks by


delivering best - in- class, revenue- critical VAS products and services to their
subscribers. VAS is now a core business proposition contributing 20 percent of
operator revenue and fast emerging as the only differentiator in a very price
sensitive market. We. provides solutions on various platforms like :IVR, ASR,
SMS, USSD.

Value Added Services are those mobile operator's services that allow
customers to do more from their phones than just traditional voice calls to
other phones. The emerging trends in mobile telephony clearly point towards a
domain vastly governed by the customers' whims and fancies.

The Value added Services (VAS) offered by Altruist are in sync with the tastes
and preferences of subscribers and range from Entertainment, Gaming,
Information to Community services (Music cards, Tambola, Quiz, Cricket, self
provisioning, group messaging etc).

8.1.1 Entertainment: Altruist's entertainment segment is to cater the


subscribers who wish to use their mobile phones also for their entertainment.
Widely popular entertainment services include, both IVRS and SMS based,
include Online Comedy, Voice Chat, SMS Chat and many more

(a)Voice Chat: Voice Chat service is for the subscribers who wish to chat with
varied people without disclosing their identity. All they need to do is create a
Chat Id and Login by sending SMS with specific keywords to a number. A list of
Chat rooms and currently online ID's are provided on the mobile screen.
Subscribers can search for the Id they feel fascinated to talk to and call a
preconfigured IVR number followed by the chosen Id they wish to talk to and
chat!

( b) MOBILE PANDIT: Every person has a desire to get answers to questions


that future will unfold. MOBILE PANDIT is the service that provides the solution.
It is an IVR based service in which the subscriber can talk to an astrologer on
dialing a particular short code and can get answers to various queries.
______________________________________________________________
Altruist Technologies

(c) SMS Chat: SMS Chat service provides you with all the features of
Chatting , a login Id, chat rooms, chat groups etc all on the subscribers mobile.
The user just needs to create a unique Chat Id , login, join a room or send
personal messages to other chat Id's which are received on the other's mobile.
The user's mobile number is never disclosed. Subscriber is recognized only by
the chat Id he/she has created.

(d) Comedy: Comedy is an IVR based Automatic Speech Recognition service.


Subscriber just need to dial a predefined IVR number and speak Comedy, and it
will play non stop comedy on your mobile, unconditionally leaving the
subscriber in bits of laughter!

(e) Music: Music is loved by all and Altruist loves to encash the fact by
providing a wide variety of services all based on music. Be it Jukebox or
dedications, all behold the potential to enlighten the subscriber with lively
music of vivid kind.

(f) Jukebox: We as humans, all have music linked to few special moments in
our lives and on hearing our song we end up reliving those personal events.
Jukebox allows your subscribers to listen to their own song anytime anywhere.
It also prompts your subscribers to express their feelings through song
dedications or allow them to simply share music with their loved ones which in
turn assists you as an operator to have emotionally loyal subscribers

(g) Gaming: Gaming segment is devoted to subscribers who like to use their
mobile phones to enliven their moods by choosing a game to play. Our games
can be used not only to refresh the moods of the subscribers but also make
them all the happier by offering special prizes to winners. The list of games
include,Tambola, Quiz.

(h) Quiz: Quiz is an IVR based service. In this quiz user needs to dial a
preconfigured number and participate in the quiz. Subscribers are asked to
choose the category and then questions related to that selected category will
be asked. Every correct answer gives the user some credits which he can
gather and qualify to win.
______________________________________________________________
Altruist Technologies

(i) Tambola: Tambola is one of the most popular games among Indian masses
and is often a part of games at clubs and parties. Tambola has the potential to
attract all masses irrespective of their age or gender. A unique game which
gives a feeling of competing with others and winning prizes. Altruist offers this
game a universal approach by making it available on a mobile phone. A feeling
to play anytime anywhere.

(j) Information: Information is vital for all. It is even more valuable if it


reaches people fast, is accurate and reliable. Altruist just aims at that. We look
forward at providing information, which the subscribers had always wanted to
access just on the dial of a number or a request through SMS. It may then be
an enquiry of the latest Movies, News be it National, International, General,
Business or Sports. Horoscope, Cricket Alerts, or any other information
subscriber would wish to acquire

(k) Horoscope: Who does not wish to know what their star signs have in store
for them. How their stars define their personality. Altruist can provide a
customized Horoscope to all mobile subscribers both on IVRS and SMS.

(l) Cricket Updates: A cricket match going on and you are away from your
Television set. Wish to know what the scores could be like. Who could be
batting? Who took how many wickets etc? Altruist offers a service on USSD,
SMS and IVRS dedicated just to bring mobile subscriber with the latest
updates on the cricket match.

8.1.2 MCC ( MOBILE CAREER CATALYST ):

Every student is concerned about his future and wants to know about various
career opportunities available to them. Altruist provides information about the
upcoming competitive exams and the tips to prepare for them.

(a) Downloads: Altruist's download offerings are an attraction to all


subscribers for we offer them a huge gallery of endless variety of Ringtones,
Picture Messages, Logos and Jokes from where they can choose and download
what ever they've liked by dialing an IVR number or sending a SMS with a
______________________________________________________________
Altruist Technologies

specific keyword to a number. It is an every day attraction for those who wish
to start their day with a new music on their phone, a new Logo and a different
wallpaper to dress their mobile!

(b) Ringtone Download: By this service you can download the exiting Ring
Tones. Altruist provides you the option to choose the Ring Tones from various
categories and download them. For download you just have to send a SMS as
TONE <CODE> to a pre-configured number. You can also download ring tone
by making a call on a pre-configured number, and then choose your category
and your selected tone will be downloaded on your mobile.

8.2 REFERENCES
Google Search Engine
Java in a Nutshell
By David Flanagan
Programming and Problem Solving With Java
By Nell B. Dale, Chip Weems, Mark R. Headington - 2003
Java Network Programming
By Elliotte Rusty Harold - 2000
JavaTech, an Introduction to Scientific and Technical Computing with Java
By Clark S. Lindsey, Johnny S. Tolliver, Thomas Lindblad - 2005
Java 2: A Beginner's Guide
By Herbert Schildt - 2001
Oracle in a Nutshell
By Ricky Greenwald, David C. Kraines - 2003
Mastering Oracle SQL
By Sanjay Mishra, Alan Beaulieu - 2004
Oracle PL/SQL Programming
By Steven Feuerstein - 2002
Securing Windows NT/2000 Servers for the Internet
By Stefan Norberg - 2000

Das könnte Ihnen auch gefallen