background image

 

WOJSKOWA  AKADEMIA  TECHNICZNA  

im. Jarosława Dąbrowskiego 

WYDZIAŁ  CYBERNETYKI 

 
 
 
 
 

 

 
 

Sprawozdanie z projektu 

Temat: Automatic call center – aplikacja wykorzystująca standard VXML

 

 
 

 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Autor: 
 

Prowadzący: 

Łukasz Śledzik 
 

dr inż. Andrzej Wiśniewski 

 

W a r s z a w a  2012

 

 

background image

 

Spis Treści 

 
 
 

Spis Treści ......................................................................................................................................2 

Treść zadania ...........................................................................................................................3 

Identyfikacja aplikacji ..............................................................................................................3 

Projekt bazy danych ................................................................................................................7 

Utworzenie aplikacji za pomocą standardu VXML..................................................................8 

Architektura aplikacji...............................................................................................................9 

Opis działania aplikacji ............................................................................................................9 

Opis testowania .....................................................................................................................10 

Wnioski ..................................................................................................................................10 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

background image

 

1

 

Treść zadania 

 

Tematem projektu było stworzenie aplikacji Automatycznego biura obsługi klienta jak u operatorów 

komórkowych. Aplikacja obejmuje: 

−−−−

 

możliwość sprawdzenia stanu własnego konta, oraz jego ważności 

−−−−

 

możliwość sprawdzenia posiadanych usług oraz ich ilości 

−−−−

 

możliwość zarządzania usługami (kupno, usuwanie) 

2

 

Identyfikacja aplikacji 

 

Założenia funkcjonalne: 

−−−−

 

system umożliwia sprawdzenie aktualnego stanu swego konta, ważności konta oraz stanu usług 

−−−−

 

system umożliwia dokupienie dodatkowej ilości usług 

−−−−

 

System umożliwia usunięcie posiadanych usług 

 

Założenia niefunkcjonalne: 

 

wszystkie pliki znajdują się na portalu 

http://sledz87.ugu.pl/

 

 

 

na portalu 

https://evolution.voxeo.com/

 jest przekierowanie do pliku startowego

 

 

z systemu można korzystać za pomocą telefonu stacjonarnego, komórkowego oraz skype

 

 

dostępność aplikacji zależy od w/w portali

 

 

Scenariusz użytkowania aplikacji: 
 

a)

 

Przykładowy dialog dla doświadczonego użytkownika 

 

S: System 
U: 
User 
 
S: Welcome in automatic call center. You need to log in. Please enter your 6 digit client number. 
 
U: (podaje cyfry głosowo) 
 
S: Please enter your 4 digit PIN code 
 
U: 
(podaje cyfry głosowo) 
 
S: 
Login correct. Main menu. What would You like to do? You can choose between: balance, validity, 
services, manage. 
 
U: Manage. 
 
S: You can manage your services. You can buy service. 
 
U: I would like to buy two packets of minutes. 
 
S: You have chosen to buy two packets of minutes. New amount is xxx*. 
 
 
 
 
 

background image

 

b)

 

Alternatywny dialog dla doświadczonego użytkownika 

 
S: System 
U: 
User 
 
S: Welcome in automatic call center. You need to log in. Please enter your 6 digit client number. 
 
U: (podaje cyfry głosowo) 
 
S: Please enter your 4 digit PIN code 
 
U: 
(podaje cyfry głosowo) 
 
S: 
Login correct. Main menu. What would You like to do? You can choose between: balance, validity, 
services, manage 
 
U: Balance 
 
S: Your account balance is 10$. 
 
c)

 

Alternatywny dialog dla niedoświadczonego użytkownika 

 
S: System 
U: 
User 
 
S:
 Welcome in automatic call center. You need to log in. Please enter your 6 digit client number. 
 
U: (podaje cyfry głosowo) 
 
S: Please enter your 4 digit PIN code 
 
U: 
(podaje cyfry głosowo) 
 
S: 
Login correct. Main menu. What would You like to do? You can choose between: balance, validity, 
services, manage 
 
U: Manage. 
 
S: You can manage your services. You can buy service. 
 
U: (nic nie mówi w tym momencie, użytkownik milczy…) 
 
S: Okay, I'll ask you for information one piece at a time. What is the action? Available actions: Buy. 
 
U:
 Buy 
 
S: Which Service? Available services: Minutes, Messages. 
 
U:
 Minutes 
 
S: What amount do you choose ? Available amount: one, two, three, four, five. 
 
U:
 Two  

background image

 

 
S: You have chosen to buy two packets of minutes. New amount is xxx*.  

 

* - Nowa ilość posiadanych pakietów. 

 
 
 
 
 
 
 
 

Sposób kontaktu użytkownika z aplikacją: 
 
 

Użytkownik może zadzwonić z telefonu stacjonarnego, komórkowego oraz poprzez Skype. 
 
 

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

background image

 

Model dialogu w postaci schematu blokowego: 

 

background image

 

3

 

Projekt bazy danych 

 

Aplikacja korzysta z jednej bazy danych db605838, w której znajdują się trzy tabele:  
 
srv zawierającą dane na temat posiadanych przez użytkownika usług oraz ich ilości: 
 

 

 

users zawierającą loginy i hasła użytkowników systemu: 
 

 

 
acc zawierającą dane na temat stanu konta i jego ważności: 
 

 

 
Zarządzanie bazą danych jest możliwe za pomocą panelu phpMyAdmin: 
 

 

 
 
Skrypty zarządzające bazą danych: 

−−−−

 

odczyt.php (skrypt odpowiada za pobranie z bazy danych informacji o posiadanych przez 

użytkownika usługach oraz ilości tych usług) 

−−−−

 

update.php (skrypt aktualizuje w bazie danych informacje o usługach użytkownika, gdy ten dokupi 

dodatkową ilość) 

−−−−

 

stan.php ( skrypt odpowiada za pobranie z bazy danych informacji o posiadanych przez 

użytkownika środkach do wykorzystania na rozmowy) 

−−−−

 

wazn.php (skrypt odpowiada za pobranie z bazy danych informacji o ważności konta) 

−−−−

 

login.php (skrypt odpowiadający za uwierzytelnianie użytkownika) 

 
 
 
 
 

background image

 

4

 

Utworzenie aplikacji za pomocą standardu VXML 

 

−−−−

 

login.xml  jest to plik wywoływany jako pierwszy. W nim znajduje się powitanie użytkownika oraz 
polecenie logowania. 

−−−−

 

login.php plik pomocniczy logowania ( w nim znajdują się skrypty uwierzytelniające użytkownika) 

−−−−

 

subD.xml jest to główny plik aplikacji. W nim znajduje się główne menu aplikacji. 

−−−−

 

Subdialog_File.xml plik z subdialogiem dla pliku subD.xml zawiera prostą gramatykę dla menu 
wyboru. 

−−−−

 

przemienna_ini.xml zawiera pytania i podpowiedzi wykorzystane do zrealizowania przemiennej 
inicjatywy 

−−−−

 

grammar.xml gramatyka do pliku przemienna_ini.xml zawiera gramatykę przemiennej inicjatywy 

−−−−

 

odczyt.php skrypt odczytujący z bazy danych informacje o stanie posiadanych usług 

−−−−

 

update.php skrypt aktualizuje bazę danych zgodnie z wyborami użytkownika 

−−−−

 

config.php plik zawiera konfigurację do nawiązania połączenia z bazą danych 

−−−−

 

stan.php skrypt odczytujący z bazy danych informacje o stanie środków na koncie 

−−−−

 

wazn.php skrypt odczytujący z bazy danych informacje o ważności konta 

 
 

Podpowiedzi dla użytkownika: 
 

Pytanie 

Podpowiedź 

What is the action? 

Available action: Buy, Delete 

Which service? 

Available services: Minutes, Messages 

What amount do you choose? 

Available amount: one, two, three, four, five 

 
 
Określenie odpowiedzi rozmówcy wraz z wypełniaczami. 

 
 

What is the action? 

I want to BUY 
Action is BUY 
I would like to BUY 

 

Which service? 

Service is MINUTES 
I choose  MINUTES 
I would like to take MINUTES 

 

What amount do you choose? 
The amount is TWO 
I choose TWO 
I need TWO 

 

 
 
 
 
 
 

background image

 

5

 

Architektura aplikacji 

 

Poniżej schemat strukturalny portalu głosowego. Wszystkie pliki znajdują się na serwerze ugu.pl 

 

 

 
 

6

 

Opis działania aplikacji 

 

Użytkownik aby skorzystać z aplikacji musi zadzwonić pod numer telefonu +48 22 3978818 lub zadzwonić 

za pomocą skype 

+990009369996205518

. Po uzyskaniu połączenia użytkownik słyszy powitanie, a następnie 

polecenie podania loginu i pinu do zalogowania się do systemu. Przy niepowodzeniu logowania użytkownik  
może spróbować ponownie podać prawidłowy login i pin. Po pomyślnym zalogowaniu użytkownik zostaje 
przeniesiony do głównego menu gdzie są dostępne do wyboru opcje. W przypadku, gdy żadna opcja nie 
zostaje wybrana system informuje o takim braku i oczekuje na podjęcie decyzji. Po wybraniu opcji rozmówca 
jest kierowany do odpowiedniego dialogu/menu gdzie uzyskuje wybrane informacje, następnie jest 
ponownie kierowany do głównego menu.  

W przypadku wybrania opcji manage w menu głównym użytkownik jest kierowany do menu zarządzania 

usługami, w którym podejmuje decyzję o kupnie lub usunięciu danej usługi oraz pożądanej ilości. Jeśli 
użytkownik nie wie jakie ma opcje do wyboru system będzie go pytał po kolei udzielając jednocześnie 
podpowiedzi z możliwymi opcjami. Po zebraniu wszystkich informacji od rozmówcy system przedstawi mu 
podsumowanie dokonanych wyborów i przekieruje go do głównego menu. Aby zakończyć pracę z systemem 
należy się po prostu rozłączyć. 

background image

10 

 

 

7

 

Opis testowania 

 

Testowanie aplikacji polegało początkowo na uploadzie plików xml na portal VOXEO oraz dzwonienia 

poprzez skype, w celu sprawdzenia poprawności działania kolejno dopisywanych funkcji aplikacji. Po 
pomyślnych testach pliki zostały przeniesione na portal ugu.pl, na którym powstała baza danych obsługiwana 
za pomocą nowo utworzonych plików php. Na portalu VOXEO został podany adres do głównego pliku na 
portal ugu.pl. Aplikacja była testowana pod kątem poprawności odczytu i zapisu informacji do bazy danych. 

Podczas wykonywania wszystkich testów bardzo przydatny okazał się debugger dostępny na portalu 

VOXEO. Dzięki niemu łatwiej było mi zlokalizować plik, który zawierał błędy. 

 

 
 
 

8

 

Wnioski 

 

Realizując projekt wirtualny dziekanat nabyłem umiejętność posługiwania się językiem vxml. Język ten nie 

jest trudny do opanowania, posiada bardzo dobrą dokumentację oraz daje dużo możliwości. Łatwo można 
łączyć z innymi językami programowania przez co aplikacja staję się bardzo dynamiczna. W aplikacji 
zrealizowanej przeze mnie podczas projektu wykorzystałem zewnętrzny język php który pośredniczył między 
aplikacją głosową a bazą danych.  

 
 
 
 
Telefon Krajowy 
+48 22 3073666  
 
 
Telefon SKYPE 

+990009369996159568