IVR

Published on May 2016 | Categories: Documents | Downloads: 62 | Comments: 0 | Views: 476
of 44
Download PDF   Embed   Report

Comments

Content

INTERACTIVE VOICE RESPONSE

(IVR)

Prima K - PENS

OBJECTIVES
¾What is IVR ?
¾General Benefits
¾How IVR works ?
¾IVR infrastructure
¾IVR services
¾IVR Applications
¾Voice Processing Board
¾IVR Programming
Prima K - PENS

What is IVR ?
Definisi :
IVR adalah teknologi teleponi dimana sebuah komputer bisa
mendeteksi suara (voice) dan penekanan tombol pesawat telepon
dengan menggunakan panggilan telepon normal
Sistim IVR dapat me-respon panggilan menggunakan suara yang telah
direkam terlebih dahulu, kepada pemanggil untuk pemrosesan
berikutnya.

Definisi Lain :
IVR adalah sistem teleponi otomatis yang berinteraksi dengan
pemanggil, menghasilkan informasi dan me-rute kan panggilan ke
tujuan yang tepat.
Sistim IVR menerima kombinasi input suara dan pemilihan
berdasarkan penekanan keypad telepon dan menghasilkan respons
dalam bentuk suara, fax, callback, email atau media yang lain.

IVR adalah salah satu aplikasi dari teknologi CTI
Mengapa memilih IVR ?
1. IVR bisa diaplikasikan untuk berbagai jenis layanan yang tidak
memerlukan proses diskusi antara user dengan penyedia jasa
layanan (misal : telephone-banking, layanan tagihan pulsa telepon,
layanan prakiraan cuaca, validasi credit card dsb)
2. IVR hanya berbasis input dari keypad pesawat telepon user
(12 tombol yang tersedia : 1,2,3,4,5,6,7,8,9,*,0,#) dan jalur PSTN
3. Speech recognition bisa diaplikasikan pada sistim IVR untuk
menggantikan fungsi keypad.
Pada intinya, IVR mendukung tiga ‘A’ :

Anyone, Anywhere, Anytime
Prima K - PENS

General Benefits
1. Membatasi / mengurangi waktu agent / operator.
2. Membatasi kelelahan agent terhadap pertanyaan yang berulangulang.
3. Nilai tambah untuk waktu tunggu.
4. Kemampuan mem-broadcast message yang berulang-ulang.
5. Menguntungkan bagi user lepas, yang tidak ingin mengunjungi
website karena tidak memiliki PC, atau merasa membuang waktu
untuk memboot-up PC mereka hanya untuk menjalankan transaksi
yang sederhana.
6. Penyediaan supply informasi ter-update secara konstan via voice.
7. Bisa diakses selama 24 jam perhari, 365 hari dalam setahun.
8. Menyimpan informasi dari pemanggil / customer.
9. Menyediakan operasi-operasi streamline
Prima K - PENS

Apa saja yang bisa dilakukan oleh IVR ?
9 Pengenalan DNIS (Dialed Number Identification Service)
9 Kemampuan konversi Text-to-Speech
9 Arsitektur dari skala kecil sampai besar
9 Multiple Development Platform
9 Dilengkapi dengan Graphical Design sesuai selera
9 Punya kemampuan Speech Recognition
9 Dapat dikoneksikan dengan bermacam-macam jenis jalur
(twisted-pair, T1, E1, IP maupun ISDN)
9 Punya konektifitas Database
9 Memiliki kemampuan monitoring
9 Kemampuan call transfer ke ekstensi lain
9 Punya konektifitas web site
9 de-el-el…

Contoh Graphical User Interface untuk IVR

Dibuat oleh Voxtron-Telebutler

How IVR works ?
1. Pemanggil mendial nomor server IVR, sampai terkoneksi dengan
diberikannya jawaban dari server IVR (biasanya berupa greeting).
2. Sistim IVR mengeksekusi aplikasi yang dipilih berdasarkan DNIS
(Dialed Number Identification Service).
3. Di dalam aplikasi tersebut akan dimainkan suara yang sudah direkam
sebelumnya kepada pemanggil.
4. Pemanggil memilih opsi-opsi yang disediakan dalam aplikasi dengan
cara menekan tombol-tombol keypad pesawat teleponnya
(menggunakan sistim DTMF) atau membunyikan kata (Speech
recognition).

Prima K - PENS

IVR Infrastructure
Hardware :
1. PC + Accessories (detailed on Voice Processing Board Explanation)
2. Voice Processing Board
3. Phone Terminal

Software :
1. Application Programming (Visual Basic, C++, Java, etc)
2. Database Programming (MySQL, MS Access, Oracle)
3. Voice Processing Board Driver
Tambahan :
•Jalur telepon (analog, digital, E1, T1)
•Alarm eksternal
•Signal Processor
•Interface IP atau PBX
•Host (IP Server)
•Video

Flow Chart Pengaksesan IVR (Inbound)
START
A

B

Dial Server No.
1
N

Y

Database Menu 1

N

Connected
?

2

Y

Database Menu 2

Y
N

..

Opening Greeting
B
Choose Menu :
1..
2..
.
# Out of System
A

#

Closing Greeting

STOP

Jenis Layanan IVR

INBOUND SERVICE
Æ Jenis layanan yang akan dijalankan setelah user /
customer mendial nomor IVR server

OUTBOUND SERVICE

Æ Jenis layanan yang bersifat delivering messaging,
pemberitahuan atau pengingat suatu event
Æ Disampaikan pada waktu tertentu dengan membroadcast suara yang telah direkam sebelumnya ke
telepon customer, karyawan atau khalayak umum

Prima K - PENS

IVR Applications :

Inbound Service

1. Business Applications
Phone Banking
Credit card validation
Human Resources
Inventory queries and stock availability
Survey automation
Employee Scheduler
Tax information

2. Educational Applications
Transcripts
Grades
Course registration
Special events
Prima K - PENS

3. Service Applications
Health care
Medical Lab test results
Physician selection
Hotel reservation and information

4. Entertainment Applications
Voting in TV game shows such as Pop Idol
Take orders for mobile content, such as ringtones
Weather forecasts
Political or commercial purpose

Prima K - PENS

IVR Applications :

Outbound Service

¾ Hotel wake up calls
¾ Medication reminder untuk pasien
¾ Pemberitahuan darurat untuk bisnis atau sekolah (misal :
pemadaman listrik, atau issue keamanan)
¾ Pemberitahuan Event khusus (misal : pertandingan
olahraga, musik dll)
¾ Iklan Politik atau komersial
¾ Patient Appointment
¾ Payment Reminder

Prima K - PENS

IVR Illustration
Outdial Patient Reminder
Dokter
Agus
5947288

Wayan
8712345

Butet
3942215
Perangkat IVR
Sentral
Telepon

Prima K - PENS

IVR Customer’s Profile

"For ten of the last twelve years, Pizza Hut® was named Best Pizza Chain
in America in the "Choice in Chains" national consumer survey published
annually by Restaurants & Institutions Magazine. In 1997 Consumer
Reports named Pizza Hut the best pizza chain in America and in 2000 and
2003, The Dallas Business Journal named Pizza Hut "The Best Company to
Work For" in Dallas/Fort Worth. This is our mission. Everything we do
reflects this mission and the values that make it possible" www.pizzahut.com
Pizza Hut utilizes phone answering services at Database Systems Corp. to
provide announcements and special offers to its existing clients. As a
special promotion to customers who have previously placed orders, Pizza
Hut offers discounts and free specials with new orders. Pizza Hut has
realized significant returns on this novel marketing program.

VOICE PROCESSING BOARD
Fungsi-fungsi :
- Digital Signal Processing,
- Telephone Signaling System Handling
- Voice processing and recognizing
- DTMF (Dual Tone Multi Frequency) Recognizing.

Manufacturer :






Intel Æ Dialogic
Brooktrout Æ Rhetorex
Altigen Æ TRITON
Natural Microsystem
Toshiba

Types of Dialogic Cards

Minimum System Requirements
IBM PC/AT based on Pentium I 233MHz (or higher) processor.
64 Megabytes RAM
1.44 MB Floppy Drive.
Minimum 4.0 GB Hard Disk (Note: 10 MB. 1 Hour of voice).
56K Hayes Compatible MODEM. (3Com U.S. Robotics
Recommended) Æ optional
VGA Card.
SVGA Monitor
Keyboard and Mouse
4-Port Voice Processing Boards. (Up to 12 boards per system)
Functional Capacity
Number of Ports 4 - 128
Prima K - PENS

Konfigurasi IVR via PBX

Card Card
Dialogic

Telepon 11
Telepon

Computer
Computer

PBX
PBX
Telepon
2 2
Telepon

Prima K - PENS

D/41JCT-LS
This board contains of 4 analog ports, J series, PCI slot, CT Bus
Windows and Linux Operating System
Software driver is installed first, followed by hardware installation
Features :
• Voice mail / messaging
• Interactive Voice Response
• Contact Center
• Audiotext
• Operator Service
• Dictation
• Autodialer
• Unified messaging
• Online data entry/query

Prima K - PENS

D/4PCIU
This board contains of 4 analog port, with PCI slot
Windows 2000, NT Operating System
Features :
•Networked voice messaging
•Automated attendant
•Interactive voice response
•Enhanced messaging
Plug & Play Board, implemented for small or medium
Enterprise application
Prima K - PENS

IVR PROGRAMMING
Persiapan-persiapan :
1.
2.
3.
4.

Install Voice Board Driver pada PC
Pasang Voice Board pada PC, untuk digunakan sebagai IVR Server
Aktifkan Voice Board
Siapkan Software Pemrograman (C/C++) untuk membuat program
Aplikasi IVR
5. Rekam suara dengan informasi tertentu. SImpan dalam file.
6. Koneksikan port-port analog pada Voice Board dengan jalur telepon
analog
7. Jalankan Program Aplikasi IVR

Prima K - PENS

Instalasi Voice Board Driver
Untuk tipe D/41JCT-LS Æ Dialogic System Release 5.1
Æ Driver ini juga dilengkapi beberapa fungsi untuk pemrosesan Voice
dan fungsi teleponi lainnya oleh Dialogic Card, berbasis C
Programming
Untuk tipe D/4PCI-U Æ Dialogic System Release 5.1.1 dan Feature Pack
Æ idem dengan di atas

Pemasangan Voice Board pada slot PCI

Prima K - PENS

Pengaktifan Voice Board

Prima K - PENS

Pembuatan Software Aplikasi IVR
#include <stdio.h>

Preprocessor directive

fungsi_lain();

Prototype fungsi lain

main()
{
statement;
}
fungsi_lain()
{
statement;
}

Fungsi utama

Fungsi lain

Struktur Pemrograman C/C++
Prima K - PENS

Beberapa Fungsi Dialogic yang harus disiapkan :
1. dx_open()
Fungsi ini untuk membuka channel pada card.
Fungsi lain dapat dijalankan setelah channel dibuka.
Command yang digunakan adalah :
int dx_open(namep, oflags)
char *namep=pointer ke channel yang akan dibuka
channel B1C1=dxxxB1C1
channel B1C2=dxxxB1C2
channel B1C3=dxxxB1C3
channel B1C4=dxxxB1C4
int oplags=disediakan fungsi selanjutnya
oflags=null

Prima K - PENS

2. dx_sethook()
Fungsi yang mengontrol status kondisi hook dari channel tertentu.
int dex_sethook(chdev, hookstate, mode)
Parameter
chdev

Menunjukkan channel yang telah
dibuka

hookstate

Menunjuk kondisi hook
•DX_ONHOOK untuk kondisi
onhook
•DX_OFFHOOK untuk kondisi off
hook

mode

Prima K - PENS

Penjelasan

•EV_SYNC
: menjalankan
dengan mode sinkron
•EV_ASINC : menjalankan
dengan mode asinkron

3. dx_wtring()
Fungsi yang menunggu banyaknya jumlah ring tone dan merubah
kondisi channel menjadi On Hook atau Off Hook.
int dx_wtring(chdev, nrings, hookstate, timeout)
Parameter

Prima K - PENS

Penjelasan

chdev

menunjukkan channel yang
sudah dibuka dx_open

rings

banyaknya rings yang ditunggu
sebelum setting hookstate

hookstate

Menunjuk kondisi hook
•DX_ONHOOK untuk kondisi
onhook
•DX_OFFHOOK untuk kondisi
off hook

timeout

lamanya
waktu
untuk
melaksanakan fungsi tersebut

4. dx_getdig ()
Fungsi ini digunakan untuk menerima digit dari penelpon.
int dx_getdig(chdev, tptp, digitp, mode)
DV_TPT*tpt = menunjuk ke stuktur tabel parameter terminasi
DV_DIGIT
= menunjuk ke struktur User Digit Buffer
Stuktur dari DV_DIGIT :
typedef struct dv_digit {
char dg_value[DG_MAXDIGS-1];
char dg_type[DG_MAXDIGS-1];
} DV_DIGIT;

Prima K - PENS

5. dx_playiottdata()
Fungsi untuk menjalankan rekaman suara (file suara) dari
beberapa sumber.
short dx_playiottdata (chdev, iottp, tptp, xpbp, mode)
Parameter
Penjelasan
chdev

menunjukkan channel
dibuka dx_open

iottp

menunjuk ke struktur DX_IOTT

tptp

menunjuk ke struktur DX_TPT

xpbp

menunjuk ke struktur DX_XPB

mode

menunjukkan mode yang digunakan;
•EV_SYNC : mode sinkron
•EV_ASYNC : menjalankan dengan
mode asinkron
•PM_TONE : menjalankan 200 ms
audible tone

Prima K - PENS

yang

telah

Program Deteksi Digit

DV_TPT tpt[3];
DV_DIGIT digp;
int numdigs,cnt;
dx_clrtpt(tpt,3);
tpt[0].tp_type=IO_CONT;
tpt[0].tp_termno=DX_MAXDTMF;
tpt[0].tp_length=x;
tpt[0].tp_flags=TF_MAXDTMF;
tpt[1].tp_type=IO_CONT;
tpt[1].tp_termno=DX_LCOFF;
tpt[1].tp_length=10;
tpt[1].tp_flags=TF_LCOFF|TF_10MS;
tpt[2].tp_type=IO_EOT;
tpt[2].tp_termno=DX_MAXTIME;
tpt[2].tp_length=50;
tpt[2].tp_flags=TF_MAXTIME;
//Get digit//

Prima K - PENS

if((numdigs=dx_getdig(chdev,tpt,&digp,EV_SYNC))==1){
MessageBox("Error get digit");
exit(1);
}
SetDlgItemText(IDC_DIGIT1,"Get digit success");
for(cnt=0;cnt<numdigs;cnt++){
digit[cnt]=digp.dg_value[cnt];
} return(digp.dg_value[0]);

Program Play Suara

int fd;
DX_IOTT iott;
DV_TPT tpt;
DX_XPB xpb;
if((fd=dx_fileopen(fname,O_RDONLY|O_BINARY)) ==-1) {
}
tpt.tp_type =IO_EOT;
tpt.tp_termno =DX_MAXDTMF;
tpt.tp_length =1;
tpt.tp_flags =TF_MAXDTMF;
iott.io_fhandle =fd;
iott.io_bufp =0;
iott.io_offset =0;
iott.io_length =-1;
iott.io_type =IO_DEV|IO_EOT;
xpb.wFileFormat =FILE_FORMAT_WAVE;
xpb.wDataFormat =DATA_FORMAT_DIALOGIC_ADPCM;
xpb.nSamplesPerSec =DRT_8KHZ;
xpb.wBitsPerSample =4;

Prima K - PENS

if(dx_playiottdata(chdev,&iott,&tpt,&xpb,EV_SYNC)==-1){
MessageBox("Error play wav file");
exit(1);
}
SetDlgItemText(IDC_PLAY,"Play Wav File Success");

Contoh Informasi yang direkam dan disimpan dalam file suara

Nama File
intro.wav
pilihan.wav

makanan.wav

spesial.wav
diet.wav

kolesterol.wav
kalori.wav
keluar.wav

Prima K - PENS

Kalimat
Selamat datang dalam Layanan Informasi Restoran Cepat Saji Makan Enak
Tekan 1 untuk informasi menu makanan
Tekan 2 untuk informasi menu spesial hari ini
Tekan 3 untuk informasi menu diet
Tekan * untuk keluar
Ayam saus Inggris
Ayam Bakar Mentega
Kepiting Saus Asam Manis
Udang Cah Jamur
Mie goreng spesial
Menu spesial hari ini adalah Ikan Bakar Madu
Tekan 1 untuk informasi diet rendah kolesterol
Tekan 2 untuk informasi diet rendah kalori
Tekan # untuk kembali ke menu utama
Menu rendah kolesterol yang disarankan adalah nasi putih tumis kangkung
tempe bacem
Menu rendah kalori yang disarankan adalah kentang stik daging salad buah
Terima kasih telah mengakses layanan Informasi Restoran Cepat Saji Makan
Enak

START
Tekan
nomor.serve
r
N
Connect
Y
intro.wav
pilihan.wav
Y

‘1’

Flow Chart Aplikasi IVR
untuk Layanan Informasi Makanan Restoran

A
Makanan.wav

N
‘2’ Y
1’ N
Y
‘3’
1’ N
‘*’

spesial.wav
diet.wav

Y

‘1’
N
‘2’
1’ N
‘ # ’’

keluar.wav
musik.wav
STOP
Prima K - PENS

A

Y

kolesterol.wav
kalori.wav

Program Utama
void CKenalDigitDlg::OnTombol()
{
int chdev;
char number[4],dig[10];
//Open channel//
if((chdev = dx_open("dxxxB1C1",NULL))==-1) {
MessageBox("Error open channel");
exit(1);
}
SetDlgItemText(IDC_CHANNEL,"Open channel success");

//Set on hook//
if(dx_sethook(chdev,DX_ONHOOK,EV_SYNC)==-1){
MessageBox("Error on hook");
exit(1);
}
SetDlgItemText(IDC_HOOK,"On hook success");

Prima K - PENS

//Wait ring tone//
if(dx_wtring(chdev,2,DX_OFFHOOK,-1)==-1){
MessageBox("Error off hook");
exit(1);
}
SetDlgItemText(IDC_WAITRING,"Off hook success");

PlaySuara(chdev,"intro.wav");
awal:
PlaySuara(chdev,"pilihan.wav");
number[0]=DetectDigit(chdev,dig,1);
number[1]='\0';
if(number[0]=='1')
{
PlaySuara(chdev,"makanan.wav");
goto awal;
}
else if(number[0]=='2')
{
PlaySuara(chdev,"spesial.wav");
goto awal;
}
Prima K - PENS

else if(number[0]=='3')
{
PlaySuara(chdev,"diet.wav");
number[0]=DetectDigit(chdev,dig,1);
number[1]='\0';
if(number[0]=='1')
{
PlaySuara(chdev,"kolesterol.wav");
goto keluar;
}
else if(number[0]=='2')
{
PlaySuara(chdev,"kalori.wav");
goto keluar;
}
else if(number[0]=='#')
goto awal;
}
else if(number[0] == '*')
{
keluar:
PlaySuara(chdev,"keluar.wav");
PlaySuara(chdev,"musik.wav");
}
}

SELAMAT BERKREASI
MEMBUAT PROGRAM LAYANAN
BERBASIS IVR

Prima K - PENS

TUGAS-TUGAS
INTERACTIVE VOICE RESPONSE….(1)
Buat flow chart cara pengaksesan dari beberapa
aplikasi IVR berikut ini:
1. BUSSINESS
a.
b.
c.
d.
e.
f.

Employee Management Service
Pencarian Lokasi Toko
Pelaporan Inventory dan stok Toko
Reminder Jadwal Kerja Karyawan
Bill Payment by Phone
Delivery Order by Phone

TUGAS-TUGAS
INTERACTIVE VOICE RESPONSE….(2)
2. EDUCATION
a.
b.
c.
d.
e.
f.

Layanan Akses Informasi Kesiswaan
Student Wake Up Call
Student Events Reminder
Parent Notification Service by Phone
School Announcement Service
Special Course Registration

TUGAS-TUGAS
INTERACTIVE VOICE RESPONSE….(3)
3. SERVICE
a.
b.
c.
d.
e.
f.

Public Service Announcement
RSVP Service
Clinical Patient Appointment
Medication Reminder
Hotel Reservation and Information
Weather Forecast

TUGAS-TUGAS
INTERACTIVE VOICE RESPONSE….(4)
4. MARKETING
a.
b.
c.
d.
e.

Retail marketing
Real Estate Marketing
Insurance Marketing
Subscription Renewal
Sales Support Service (layanan untuk status
produk, perencanaan meeting, pembukaan
cabang baru)

TUGAS-TUGAS
INTERACTIVE VOICE RESPONSE….(5)
5. COMMUNITY
a.
b.
c.
d.
e.
f.

Voting a Reality Show Idol
Political Polling Service
Security Guard Monitoring
Club Member Event Reminder
Apartment Residence Broadcast Service
Transportation Phone Service

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close