Anda di halaman 1dari 87

PROYEK AKHIR

APLIKASI IVR (INTERACTIVE VOICE RESPONSE)


SEBAGAI OPERATOR TELEPON
OTOMATIS

Sexti Erianto
NRP.7203.030.005

Dosen Pembimbing:
Ir Prima Kristalina, MT
NIP. 131 843 904

Arifin , ST, MT
NIP. 131 793 754

JURUSAN TELEKOMUNIKASI
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
SURABAYA 2006
APLIKASI IVR (INTERACTIVE VOICE RESPONSE)
SEBAGAI OPERATOR TELEPON
OTOMATIS

Oleh:
SEXTI ERIANTO
7203.030.005

Proyek Akhir ini Diajukan Sebagai Salah Satu Syarat Untuk


Memperoleh Gelar Ahli Madya (A.Md.)
di
Politeknik Elektronika Negeri Surabaya
Institut Teknologi Sepuluh Nopember Surabaya

Disetujui oleh
Tim Penguji Proyek Akhir: Dosen Pembimbing:

1. I Gede Puja Astawa, ST, MT 1. Ir Prima Kristalina, MT


NIP. 132 102 837 NIP. 131 843 904

2. Amang Sudarsono, ST 2. Arifin , ST, MT


NIP. 132 300 371 NIP. 131 793 754

3. Akuwan Saleh, A.Md.,SST


NIP. 131 831 467

Mengetahui:
Ketua Jurusan Telekomunikasi

Drs. Miftahul Huda, MT


NIP. 132 055 257

ii
ABSTRAK

Dalam sebuah instansi pendidikan atau perguruan tinggi terdapat


banyak ruangan, untuk menghubungkan satu ruang dengan ruang yang
lain diperlukan suatu alat dalam hal ini adalah PABX. IVR/ Dialogic
bisa dimanfaatkan sebagai pengganti fungsi switching dari PABX yang
berfungsi untuk menghubungkan telepon pengguna ke nomor yang
dituju secara otomatis hanya dengan menekan nomor-nomor tertentu
yang telah disediakan dimana penelpon pengguna akan dipandu oleh
suara (operator).

Dengan memasang dialogic card pada komputer (PC), selain untuk


menggantikan fungsi switching dari PABX juga diharapkan dapat men-
dial nomor-nomor tertentu dengan mudah, tanpa harus mencari nomor
yang dituju dengan menggunakan Dialogic Card. Dari hasil pengujian
program diperoleh kesimpulan bahwa delay maksimum untuk
memasukkan 3 digit nomor tujuan adalah 15 detik dimana delay
maksimum untuk setiap digit adalah 5 detik, dan rata-rata waktu yang
diperlukan untuk transfer dari penekanan digit sampai terdengar adanya
ringtone pada sisi penerima adalah 1,465 detik.

Kata kunci: Dialogic Card, PABX, Telepon DTMF.

iii
ABSTRACT

Generally, in a Company or a College using PABX to communicate


from one room to other room (internal). The conventional of PABX same
as the conventional of Central of telephone. We can use IVR to handle
switching function of PABX, which is use for connecting one user to
other user automatically, by listening to the voice (operator) and
pressing number we heard before. We choose this dialogic Card D/41
JCT-LS because of the feature of the dialogic it self who can handle the
switching process of PABX.

This research is proposed not only to handle the switching function


of PABX by using Dialogic Card but also make more easy to dial by
listening the operator. From this final project we can say that maximum
delay to give 3 digit input is 15 second which is every digit has
maximum delay about 5 second and time of transfer is 1,465 second.

Key words: Dialogic Card, PABX, DTMF telephone.

iv
KATA PENGANTAR

Assalamu’alaikum WR.Wb.
Alhamdulillah! Saya panjatkan puji syukur kehadhirat Allah SWT
atas rahmat dan hidayah-Nya hingga selesainya kegiatan proyek akhir
ini dengan judul “Aplikasi IVR (Interactive Voice Response) sebagai
Operator Telepon Otomatis ”.
Proyek Akhir ini disusun sebagai salah satu syarat untuk
memperoleh gelar Ahli Madya (A.Md.) di Politeknik Elektronika Negeri
Surabaya, Institut Teknologi Sepuluh Nopember Surabaya (ITS).
Pada kesempatan ini saya sampaikan terima kasih yang sebesar-
besarnya kepada :
1. Orang tuaku yang telah membiayai kuliah ku
2. Ir. Prima Kristalina, MT dan Arifin ST, MT selaku dosen
pembimbing.
3. Semua dosen Politeknik Elektronika Nageri Surabaya - ITS,
bidang keahlian Telekomunikasi Multimedia atas dorongannya
4. Buat Miu miu tercinta, atas dukungan dan perhatiannya selama
ini
5. Teman-teman 3 Telkom A Politeknik Elektronika Negeri
Surabaya , atas dukungannya
6. Teman-teman bidang keahlian Telekomunikasi Multimedia
angkatan tahun 2003, atas kekompakannya
7. Dan semua pihak yang telah mendukungku.

Akhir kata, segala kritik dan saran sangat saya harapkan untuk
pengembangan penelitian selanjutnya.
Wassalamu’alaikum WR.Wb.

Surabaya, Juli 2006

Penulis

v
DAFTAR ISI

JUDUL……………………………………………………………... i
PENGESAHAN…………………………………………………..... ii
ABSTRAK…………………………………………………………. iii
ABSTRACT………………………………………………………... iv
KATA PENGANTAR……………………………………………... v
DAFTAR ISI……………………………………………………….. vi
DAFTAR GAMBAR………………………………………………. vii
DAFTAR TABEL………………………………………………….. ix
BAB 1. PENDAHULUAN………………………………………… 1
1.1. LATAR BELAKANG…………………………………. 1
1.2. TUJUAN……………………………………………….. 1
1.3. BATASAN MASALAH……………………………….. 2
1.4. METODOLOGI………………………………………... 2
1.5. SISTEMATIKA PEMBAHASAN.................................. 3

BAB 2. TEORI PENUNJANG.......................................................... 5


2.1. TELEPON........................................................................ 5
2.1.1 Sejarah Telepon……………………………………. 5
2.1.2 Fungsi Pesawat Telepon…………………………… 5
2.1.3 Sistem Switching…………………………………... 6
2.1.4 Alerting…………………………………………….. 7
2.1.5 Nada-nada Telepon………………………………… 7
2.1.6 Pesawat Telepon Sistem DTMF…………………… 9
2.2. PABX (NEAX 2000 IPS)……………………………... 10
2.2.1 Instalasi PABX......................................................... 13
2.2.2 Program PABX.......................................................... 13
2.2.3 Program Penomoran .................................................. 13
2.3 COMPUTER TELEPHONY INTEGRATION (CTI)….. 14
2.4 DIALOGIC CARD……………………………………... 15
2.3.1 Syntac-syntac Dialogic Card ..................................... 17
2.5 MICROSOFT VISUAL C++............................................ 18

BAB 3. PERENCANAAN DAN IMPLEMENTASI……………... 19


3.1 PENDAHULUAN……………………………………… 19
3.2 DIAGRAM KERJA SISTEM…………………………... 19

vi
3.3 INSTALASI DIALOGIC CARD……………………….. 21
3.2.1 Konfigurasi Card …………………………………... 21
3.4 PERENCANAAN PROGRAM………………………… 22
3.4.1 Perekaman file suara menggunakan.
Multi Thread Program.................................................. 25
3.5 ALGORITMA PROGRAM…………………………….. 28
3.5.1 Memainkan file suara………………………………. 28
3.5.2 Pendeteksian Digit DTMF………………………….. 29
3.5.3 Transfer panggilan…………………………………. 29
3.6 FLOWCHART…………………………………………. 30
3.6.1 Memainkan file suara………………………………. 30
3.6.2 Pendeteksian Digit DTMF………………………….. 31
3.6.3 Transfer panggilan………………………………….. 32
3.7 SYNTAX-SYNTAX DIALOGIC………………………. 33
3.7.1 dx_open…………………………………………….. 34
3.7.2 dx_close…………………………………………….. 34
3.7.3 dx_sethook………………………………………….. 35
3.7.4 dx_wtring…………………………………………… 35
3.7.5 dx_dial……………………………………………… 35
3.7.6 dx_playiottdata……………………………………... 36
3.7.7 dx_getdig.................................................................... 36
3.8 DATA FILE SUARA…………………………………… 37

BAB 4. PENGUJIAN DAN ANALISA…………………………… 39


4.1 TUJUAN PENGUJIAN………………………………… 39
4.2 METODE PENGUJIAN………………………………... 39
4.3 ANALISA HASIL PENGUJIAN………………………. 39
4.3.1 Pendeteksian digit DTMF………………………….. 39
4.3.2 Memainkan File Suara……………………………… 41
4.3.3 Fungsi wtring……………………………………………. 43
4.3.4 Transfer panggilan………………………………….. 44

BAB 5. KESIMPULAN DAN SARAN…………………………… 47


5.1 KESIMPULAN…………………………………………. 47
5.2 SARAN-SARAN……………………………………….. 47

DAFTAR PUSTAKA……………………………………………… 49
LAMPIRAN………………………………………………………... 51

vii
DAFTAR GAMBAR
Gambar 2.1 PIM (Port Interface Module)........................... 12
Gambar 2.2 Dialogic Card D/41 JCT-LS………………... 17
Gambar 3.1 Diagram Kerja Sistem………………………. 19
Gambar 3.2 Flowchart Aplikasi………………………….. 22
Gambar 3.3 Jendela Dialogic Configuration Manager
setelah start..................................................... 22
Gambar 3.4 Jendela pembuatan project baru...................... 23
Gambar 3.5 Jendela link library.......................................... 23
Gambar 3.6 Menambahkan Include untuk Include
files milik dialogic........................................... 24
Gambar 3.7 Menambahkan Library untuk Library
Files milik dialogic......................................... 25
Gambar 3.8 Tampilan Voice Sample Program................... 25
Gambar 3.9 Tampilan Select Channel................................. 26
Gambar 3.10 Jendela set offhook........................................... 26
Gambar 3.11 Jendela record wav.......................................... 27
Gambar 3.12 Jendela select a file.......................................... 27
Gambar 3.13 Jendela record wav file.................................... 28
Gambar 3.14 Flowchart play suara....................................... 30
Gambar 3.15 Flowchart deteksi digit.................................... 31
Gambar 3.16 Flowchart transfer panggilan.......................... 32
Gambar 3.17 Jendela Microsoft Visual C++ sebelum
ditambahkan header........................................ 33
Gambar 3.18 Jendela Microsoft Visual C++ sesudah
ditambahkan header........................................ 34
Gambar 4.1 Tampilan deteksi digit…………………………. 40
Gambar 4.2 Sinyal suara 6KHz ADPCM.wav.................... 41
Gambar 4.3 Sinyal suara ADPCM8KHz.wav..................... 42
Gambar 4.4 Sinyal suara 8KHz LINEAR.wav................... 42

viii
DAFTAR TABEL

Tabel 2.1 Nada-nada pada Tone Signalling……………........ 9


Tabel 2.2 Pengaturan Tombol Sistem DTMF........................ 10
Tabel 2.3 Fungsi Dasar Peralatan Sentral............................... 11
Tabel 3.1 Data file suara......................................................... 37
Tabel 4.1 Data hasil pengujian digit DTMF………………... 40
Tabel 4.2 Tabel hasil pengujian rekam suara......................... 42
Tabel 4.3 Tabel hasil pengujian fungsi wtring....................... 43
Tabel 4.4 Tabel hasil pengujian transfer............................... 44
Tabel 4.5 Waktu transfer dari nomor 100………………….. 44
Tabel 4.6 Waktu transfer dari nomor 200………………….. 45
Tabel 4.7 Waktu transfer dari nomor 202…………………... 45
Tabel 4.8 Waktu transfer dari nomor 204………………….. 45

ix
BAB 1
PENDAHULUAN

Pada bab ini berisi mengenai materi yang memberikan


penggambaran secara umum hal – hal yang berhubungan dengan
penulisan tentang proyek akhir, antara lain :
Latar Belakang.
Tujuan.
Batasan masalah.
Metodologi.
Sistematika pembahasan.

1.1 LATAR BELAKANG

Dalam sebuah instansi pendidikan atau perguruan tinggi


terdapat banyak ruangan, untuk menghubungkan satu ruang dengan
ruang yang lain diperlukan suatu alat dalam hal ini adalah PABX.
IVR / Dialogic bisa dimanfaatkan sebagai pengganti fungsi
switching dari PABX yang berfungsi untuk menghubungkan
telepon pengguna ke nomor yang dituju secara otomatis hanya
dengan menekan nomor-nomor tertentu yang telah disediakan
(penelpon akan dipandu oleh suara operator). Dipilihnya Dialogic
Card karena fitur-fitur yang ada pada Dialogic memungkinkan hal
tersebut.
Dengan memasang dialogic card pada PC, diharapkan dapat
men-dial nomor-nomor tertentu dengan mudah, tanpa harus mencari
nomor yang dituju.

1.2 TUJUAN

Tujuan dari proyek akhir ini adalah membuat sebuah sistem


switching menggunakan Dialogic Card D/41 JCT-LS yang
merupakan teknologi Computer Telephoni Integration (CTI)
sebagai pengganti fungsi switching dari PABX dan juga sebagai
operator telepon otomatis.

1
2

1.3 BATASAN MASALAH

Dalam Proyek Akhir ini digunakan Dialogic Card D/41 JCT-


LS yang merupakan teknologi Computer Telephoni Integration
(CTI), PABX NEAX 2000 IPS dan Pesawat telepon DTMF.
Penggunaan dari Dialogic Card D/41 JCT-LS digunakan sebagai
interface antara PC dengan pesawat telepon.

Adapun batasan masalah yang akan dikerjakan dalam Proyek


Akhir ini adalah sebagai berikut :
1. Pesawat telepon digunakan oleh pengguna untuk
menghubungi switching center.
2. PABX digunakan untuk memberikan penomoran jalur
telepon, baik untuk pesawat pengguna atau switching
center(dialogic)
3. PABX tanpa hunting dan caller ID.
4. Pada proyek akhir ini hanya bisa men-dial, tidak dapat
digunakan untuk percakapan.

1.4 METODOLOGI

Untuk mengembangkan Dialogic Card D/41 JCT-LS sebagai


switching pengganti PABX, dibutuhkan langkah-langkah sebagai
berikut :

1. Perancangan Sistem

Perancangan sistem dengan cara penginstalan Dialogic Card


D/41 JCT-LS pada komputer yang telah ter-install dengan
Dialogic Card tersebut dihubungkan ke PABX dimana pesawat
telepon DTMF terhubung ke Dialogic Card, setelah ditambah
dengan perangkat lunak (software).

2. Perancangan Perangkat Keras (Hardware) dan Perangkat


Lunak (Software)

Perancangan pada perangkat keras (hardware) meliputi: instalasi


Dialogic Card pada komputer, dan pengintegrasian antara
komputer, PABX dan pesawat telepon DTMF. Sedangkan untuk
3

perancangan perangkat lunak (software) meliputi: Pendeteksian


digit DTMF dan perekaman file suara, transfer panggilan.
3. Pembuatan dan Pengukuran/Pengujian Perangkat Keras
(Hardware) dan Perangkat Lunak (Software)

Dari hasil perancangan, dilakukan realisasi/pembuatan baik


perangkat keras maupun perangkat lunak. Dan diadakan
pengujian kinerja masing-masing bagian (sub-sistem) dari
perangkat-perangkat tersebut sebelum dilakukan integrasi.

4. Integrasi dan Pengujian Sistem

Hasil dari realisasi perangkat keras (hardware) dan perangkat


lunak (software) kemudian diintegrasi. Integrasi system terdiri
dari komputer (Dialogic Card D/41 JCT-LS), PABX NEAX
2000 IPS, dan pesawat Telepon DTMF. Selanjutnya dilakukan
pengujian sistem untuk mengetahui kinerja (performance) sistem
yang telah dikembangkan.

5. Eksperimen dan Analisa Sistem

Sistem yang sudah dibangun dan telah terintegrasi, jika unjuk


kerjanya dianggap memadahi dapat digunakan untuk eksperimen
Aplikasi IVR (interactive voice response) sebagai operator
otomatis. Analisa meliputi: analisa software serta analisa kinerja
sistem yang telah dikembangkan.

1.5 SISTEMATIKA PEMBAHASAN

Buku laporan proyek akhir ini tersusun atas beberapa bab


pembahasan. Sistematika pembahasan tersebut adalah sebagai
berikut :

BAB I: Pendahuluan, menguraikan secara singkat latar belakang


tentang permasalahan, tujuan, batasan masalah, metodologi dan
sistematika pembahasan.

BAB II: Teori Penunjang, berisi dasar teori untuk menunjang


penyelesaian masalah dalam proyek akhir ini. Teori dasar yang
4

diberikan secara garis besar meliputi: telepon DTMF, dialogic


card, PABX, dan perencanaan software.

BAB III: Perencanaan dan Implementasi, yang membahas


tentang perencanaan dan implementasi sistem yang dibangun,
meliputi proses instalasi Dialogic card, algoritma pemrograman,
flowchart, perancangan software serta instalasi sistem.
.
BAB IV: Analisa dan Pengujian, Pada bab ini memuat hasil
pengujian dan analisa terhadap hasil yang didapat sesuai dengan
tujuan yang ditetapkan.

BAB V: Penutup, Bab ini berisi tentang kesimpulan dari


pembahasan bab bab sebelumnya dan saran – saran serta beberapa
kemungkinan pengembangan proyek akhir ini.
BAB 2
TEORI PENUNJANG
Pada bagian teori ini akan diuraikan beberapa materi pustaka yang
mendukung perancangan dan pembuatan sistem aplikasi telephone
reminder. Materi – materi tersebut meliputi : Telepon, PABX NEAX
2000IPS, Dialogic D/41 JCT-LS, Microsoft Visual C++.

2.1 TELEPON

2.1.1 Sejarah Telepon

Dengan ditemukannya telepon lebih dari 1 abad yang


lalu , kebutuhan kebutuhan untuk berkomunikasi jarak jauh
dapat dengan mudah terpenuhi. Kata-kata telepon berasal dari
bahasa Yunani, yaitu “TELE” yang berarti jauh dan “PHON”
berarti suara, jadi telephon berarti komunikasi jarak jauh. Maka
telekomunikasi adalah suatu proses hubungan jarak jauh
dengan menggunakan suatu daya listrik . Informasi
disampaikan ke tujuan baik melalui kawat penghantar
berisolasi yang disebut saluran transmisi (transmission line)
maupun melalui udara tanpa menggunakan kawat penghantar
tapi melalui sinyal-sinyal radio.

2.1.2 Fungsi Pesawat Telepon


Pesawat telepon digunakan untuk mengirim dan
menerima satu panggilan telepon. Alat yang sederhana ini
sebenarnya mempunyai beberapa fungsi dan tugas yang sangat
penting diantaranya :

1. Saat handset diangkat, pesawat telepon memberitahu


sentral bahwa seseorang ingin berkomunikasi
2. Menerima “dial tone”. Yang menandakan bahwa sentral
siap melayani penelpon.
3. Mengirimkan nomor yang akan dituju pada sentral dengan
menekan dial nomor telepon.
4. Memberitahu tahap-tahap proses pemanggilan dengan
menerima nada-nada signaling (ringing, busy dll).

5
6

5. Memberitahu adanya telepon yang masuk dengan bunyi bel


yang bervariasi.
6. Disisi pemanggil, pesawat telepon mengubah sinyal suara
menjadi sinyal listrik dan sebaliknya disisi penerima
berfungsi mengubah sinyal listrik menjadi sinyal suara.
7. Memberitahu sentral bahwa pembicaraan telah selesai
dengan diletakkannya handset oleh pelanggan.

2.1.3 Sistem Switching

Peralatan switching diperlukan untuk menghubungkan


antara telepon satu dengan yang lain. Pada sistem dasar
switching pesawat telepon, pelanggan dapat digambarkan
sebagai sebuah titik . Antara pelanggan satu dengan yang lain
nya saling terhubung satu sama lainnya, sehingga sistem
switching ini dapat digambarkan sebagai beberapa titik yang
saling terhubung antara satu dengan yang lainnya.

Sistem yang digambarkan diatas tidak dapat diterapkan


untuk sistem jaringan telepon karena banyak titik yang harus
terhubung sedangkan saluran yang dibutuhkan sangat besar.
Untuk mengatasi hal tersebut, titik tersebut dihubungkan dalam
suatu saluran yang tidak berubah-ubah dan bertujuan untuk
mengandakan kerja switching yang dipusatkan disuatu tempat
yang disebut sebagai sentral telepon.

Sentral ini menggunakan peralatan switching khusus yang


disebut junctor, hal ini memungkinkan satu titik terhubung
dengan titik lain. Agar diantara semua titik dapat
berkomunikasi satu dengan yang lain, maka perubahan-
perubahan desain dalam sistem telepon harus sesuai dengan
sistem telepon lama.

Syarat-syarat agar antara telepon satu dengan yang lainnya


dapat berkomunikasi adalah :
1. Sistem harus mengetahui kapan seseorang pelanggan
akan menelpon, berarti ada / tidaknya suatu call request.
2. Pemanggil harus memberitahu sistem mengenai identitas
saluran yang diperlukan yaitu saluran menuju nomor
tujuan (addressing).
7

3. Sistem harus memberitahu orang yang dituju, bahwa ada


panggilan telepon yang harus dijawab (allerting).

2.1.4 Alerting

Alerting merupakan suatu tanda yang menandakan bahwa


ada suatu panggilan yang masuk . Alerting ini diaktifkan oleh
sinyal AC frekuensi rendah dan dihubungkan oleh saluran pada
suatu terminal, dan alat ini tidak melewatkan sinyal DC.
Allerter sederhana terdiri atas sebuah bel yang dikontrol oleh
sinyal AC denagn sebuah kapasitor yang berfungsi sebagai
penahan sinyal DC.

2.1.5 Nada-nada Telepon

Nada-nada yang terdapat pada sebuah proses


penyambungan telepon merupakan penunjuk status suatu
panggilan telepon selama proses penyambungan sedang
berlangsung. Dimana nada-nada tesebut adalah:

• Dial Tone(DT)
Yaitu nada – nada yang berfungsi sebagai tanda bahwa
pelanggan telah terhubung dengan sentral (local loop
exchange closed). Nada ini terdengar saat pelanggan
mengangkat handset. Dial Tone adalah kombinasi nada
yang diperoleh dengan menambahkan dua nada dengan
frekuensi yang sedikit berbeda dan amplitudonya sama
yaitu 350 Hz dan 440 Hz.
.
• enganged tone (ET)
Nada ini terdengar sebagai tanda bahwa pemanggil tidak
berhasil untuk menghubungi tujuan. Hal ini disebabkan
antara lain oleh pesawat yang dihubungi sedang terpakai/
rusak atau lalu lintas pembicaraan terlalu padat (overload).
Ciri – ciri dari nada ini yakni bergantian antara ada dan
tidak ada selama 0.3 detik.

Nada sibuk (engaged tone) akan memberitahukan


penelpon bahwa yang ditelpon sedang sibuk atau bicara
(off hook). Nada tersebut merupakan kombinasi nada
8

dalam keadaan on selama 0.5 detik dan dalam keadaan off


selama 0.5 detik. Sinyal peringatan bahwa receiver sedang
off hook (handset tidak pada tempatnya) adalah merupakan
gabungan nada – nada dengan empat frekuensi dalam
keadaan on selama 0.1 detik dan keadaan off selama 0.1
detik.

Sinyal ini sangat keras dengan tujuan untuk menarik


perhatian seseorang mengetahui bahwa posisi handset
tidak pada tempatnya (handset pada posisi off hook).

• Ringing Tone(RT)
Nada ini memberitahukan bahwa hubungan yang
diinginkan belum tersambung dan diharapkan kepada
penelpon untuk menunggu pengangkatan handset telepon.
Nada ini terdengar secara terputus-putus dengan tiga
periode 3 detik, yaitu 1 detik ada dan 2 detik tidak ada
nada.

• Ring Back Tone(RBT)


Yaitu nada pada terminal asal sebagai tanda bahwa sudah
terhubung dengan terminal tujuan.

• Number unobtainable(NU)
Yaitu nada sebagai tanda bahwa nomor yang dituju belum
terdaftar. Number Unobtainable mempunyai sinyal
kontinyu murni.

• Nada pulsa
Nada ini tidak begitu terdengar karena dikirim dengan
frekuensi 16 KHz dari sentral telepon dengan selang waktu
100 mili detik untuk setiap pulsa yang dikirim. Nada ini
mulai saat pertama lawan bicara mengangkat handset dan
diulang secara periodik untuk menghitung pulsa pada
sentral telepon.
9

Tabel 2.1 Nada-nada pada Tone Signalling

Nada Frekuensi Waktu Waktu


On Off
(detik) (detik)
Dial 350 + 440 Kontinyu -
Busy/ 480 + 620 0.5 0.5
sibuk
Ringback 440 + 480 2 4
normal
Ringback 440 + 480 1 3
PBX
Congestio 480 + 620 0.2 0.3
n (Toll)
Reorder 480 + 620 0.3 0.2
(lokal)
Receiver 1400 + 2060 0.3 0.1
Off-hook + 2450 +
2600
No such 200 hingga Kontinyu Kontinyu
number 400 termodul termodul
asi FM asi FM
dengan dengan
kecepata kecepata
n 1 Hz n 1 Hz

2.1.6 Pesawat Telepon Sistem DTMF

Pada proyek akhir ini digunakan Pesawat telepon yang


menggunakan metode Dual Tone Multi Frequency (DTMF)
yang befungsi untuk mengirimkan kode Pin, nomor telepon
yang dituju, dan pilihan-pilihan kepada sentral dapat digunakan
apabila sentral telepon dilangkapi rangkaian pendeteksi
nada-nada tersebut. Pesawat telepon DTMF dilengkapi dengan
keypad tombol tekan (16 tombol) yang diwakili dengan 0
hingga 9, A hingga D, dan tombol * dan #.
10

Menekan satu tombol menyebabkan rangkaian elektronika


membangkitkan kombinasi dua buah nada dari dua buah
frekuensi (frekuensi rendah dan tinggi). Satu nada frekuensi
rendah untuk tiap kolom seperti tampak pada Tabel 2.2, dengan
metode dua nada ini bisa dihasilkan 16 kombinasi yang hanya
dengan 8 nada bila diinginkan keypad dengan 16 tombol.

Tabel 2.2 Pengaturan Tombol Sistem DTMF

FREKUENSI 1209 1336 1477 1633


Hz Hz Hz Hz
697 Hz 1 2 3 A
770 Hz 4 5 6 B
852 Hz 7 8 9 C
941 Hz * 0 # D

2.2 PABX (NEAX 2000 IPS)

Pada Proyek Akhir ini digunakan PABX NEAX 2000 IPS


berfungsi sebagai sentral. Uraian dari fungsi dasar peralatan sentral
adalah sebagai berikut :

Bila ada permintaan penyambungan telepon, maka peralatan sentral


akan bekerja yang berkaitan dengan :
• Menganalisa permintaan pembicaaan
• Menghubungkan pelanggan pemanggil dengan yang dipanggil
melalui saklar kanal bicara.
• Melepas semua rangkaian dan fasilitas saat pembicaraaan
selesai.

Fungsi tersebut diatas yang berkaitan dengan penyambungan


pembicaraan dinamakan sebagai fungsi dasar peralatan sentral,
sedangkan hubungan antara fungsi dasar dan operasi pensinyalan
exchange ditunjukkan pada tabel di bawah ini
11

Tabel 2.3 Fungsi Dasar Peralatan Sentral

Fungsi Dasar Peralatan Operasi Pensinyalan


Pelanggan Pemanggil
1. Fungsi untuk Mendeteksi permintaan
mendeteksi panggilan
permintaan panggilan
2. Fungsi untuk Mengirim nada putar
menganalisa permintaan Meneima sinyal pulsa dial
panggilan dan Menerjemahkan
memutuskan pelanggan informasi
yang dituju Memilih saluran keluar
3. Fungsi untuk Mengirim sinyal Panggil
Menyusun Kanal bicara Mengirim nada Bel
Mendeteksi jawaban
Menentukan titik silang
kanal bicara
4. Melakukan
pembicaraan
5. Fungsi memutus Mendeteksi bahwa
pembicaraan telah selesai.
Memutus semua titik
silang kanal bicara
6. Pembicaraan selesai

Perangkat Modul PABX (NEAX 2000 IPS) terdiri dari PIM dan
rumah kabel yang saling terhubung. PIM (Port Interface Modul)
memiliki kapasitas fisik 64 port dengan dilengkapi tempat battery
back up internal. Dalam konfigurasi satu sistem maksimal terdiri dari
delapan

PIM dengan kapasitas 512 port. Sedangkan rumah kabel berisi


saluran-saluran yang akan terhubung ke tiap ekstensi. Dalam satu PIM
terdapat beberapa card yaitu :

• MP (PN-CP14) yaitu main processor card. Untuk


setiap satu system PABX hingga kapasitas maksimal
512 port diperlukan satu buah MP.
12

• COT (Central Office Trunk) yaitu card untuk


penggunaan line PSTN.
• DLC (Digital Line Circuit) yaitu card penggunaan
pesawat telepon digital.
• LC (Line Circuit) yaitu card untuk penggunaan
pesawat telepon analog.

Gambar 2.1 PIM (Port Interface Module)[5]

Keterangan :
LT00-LT11 Line/Trunk card mounting slot
AP00-AP11 Application Processor card mounting slot
MP PN-CP14 mounting slot
FP PN-CP15 mounting slot
VM PZ-VM00-M Mounting Slot
PFT PZ-8PFTB Mounting Slot
AC/DC PWR PZ-PW121/PW126 Mounting Slot
DC/DC PWR PZ-PW122 Mounting Slot

1 PZ-VM00-M CARD diletakkan pada slot LT00 untuk


menggunakan slot VM
2 Baik line/ trunk card atau aplikasi processor card dapat
diletakkan pada slot LT00/AP00-LT10/AP10
3 Baik PN-CP15 atau line/ trunk card atau aplikasi processor card
diletakkan pada slot LT11/AP11/FP11 berdasarkan konfigurasi
sistem.
4 PN-CP14 atau PN-CP15 card diletakkan pada slot MP12/FP12
berdasar konfigurasi sistem.
5 PZ-8PFTB card diletakkan pada slot PFT
13

2.2.1 Instalasi PABX


Adapun cara instalasi PABX adalah seperti di bawah ini:
a. Letakkan card DLC di LT 00.
b. Jika lampu MP sudah running putar switch SW3 di MP ke
arah B.
c. Tekan switch SW3 di MP.
d. Putar kembali SW3 ke 0.
e. Tekan SW1, tunggu sampai lampu di card menyala semua
dan berkedip-kedip.
f. Connect telepon digital di LSA pertama di MDF.
g. PABX dapat diprogram.
2.2.2 Program PABX
Langkah-langkah masuk ke “COMMAND”
Tekan transfer
Tekan conf
Tekan *
Tekan transfer
Tekan conf
Tekan #
Redial (tampilan di monitor “COMMAND”)

Keterangan :
• Conf : menyimpan data (save)
• Answer : membatalkan
• Redial : kembali ke command
• Speaker : menaikkan data
• Feature : menurunkan data
2.2.3 Program Penomoran
Pengesetan nomor ekstensi terdiri dari :
1. untuk telepon digital
Command 10 recall 000 recall F100 conf
Command 10 recall 001 recall F200 conf
Command 10 recall 002 recall F300 conf
Keterangan :
Command 10 : command untuk pengesetan ekstensi
000 : nomor jalur digital pada MDF
14

F100 : nomor jalur tersebut diberi kode ekstensi


100, F menyatakan digital
2. untuk telepon analog
Command 10 recall 016 recall 101 conf
Command 10 recall 017 recall 201 conf
Command 10 recall 018 recall 301 conf
Keterangan :
Command 10 : command untuk pengesetan ekstensi
016 : nomor jalur analog pada DTMF
017 : nomor jalur tersebut diberi kode 101
3. untuk membuat digital
Command 200 recall 1 recall 803 conf
Command 200 recall 2 recall 803 conf
Command 200 recall 3 recall 803 conf

Pengesetan nomor ekstensi digital terdiri dari :


o Command 9000 recall 100 recall 100 transfer (,) 16 recall
100 conf
o Command 9000 recall 200 recall 100 transfer (,) 16 recall
100 conf
o Command 9000 recall 300 recall 100 transfer (,) 16 recall
100 conf
o Command 93 recall 100 recall 100 conf
o Command 93 recall 200 recall 200 conf
o Command 93 recall 300 recall 300 conf

2.3 COMPUTER TELEPHONY INTEGRATION (CTI)


Computer Telephony Integration (CTI), merupakan teknologi
yang mengintegrasikan kekuatan aplikasi teknologi informasi dengan
infrastruktur telekomunikasi [4]. CTI mempunyai beberapa aplikasi
diantaranya, yaitu [4]:
1. Pemrosesan panggilan secara otomatis (automatic call
processing)
2. Pengenalan suara secara otomatis (automatic speech processing)
3. Konversi text-to-speech untuk information on-demand, call
switching dan konferensi.
4. Menyediakan akses layanan mengirim suara, fax dan Email dalam
satu jalur (Unified Messaging)
5. Voice mail dan voice messaging
15

6. Sistem fax yang terdiri dari fax broadcasting, fax mailbox,


fax-on-demand dan fax gateway
7. Audiotext dan sistem informasi Pay-per-call (untuk layanan
transaksi).
8. Penyampaian informasi produk (promosi).

2.4 DIALOGIC CARD

Pada Proyek akhir ini dipergunakan beberapa program pokok


yaitu: Instalasi Dialogic Card, pemrograman untuk switching,
perekaman file suara, dan pendeteksian DTMF. Program yang dibuat
dengan memanfaatkan fitur – fitur yang tersedia pada Dialogic Card
D/41 JCT-LS.
Dialogic D/41 JCT-LS merupakan suatu perangkat yang
digunakan untuk mengolah suara dimana arsitekturnya
mengkombinasikan kemampuan pengolahan sinyal dan penggunaan
transfer data dengan menggunakan prosesor yang cepat dan
menyediakan memori yang lebih besar. Arsitektur perangkat ini
berfungsi untuk menangani kejadian – kejadian real-time, mengatur
aliran data ke PC yang memerlukan respon waktu yang cepat,
melayani permintaan pengolahan dari suatu PC, dan mengolah DTMF
dan sinyal telepon dan menjalankan pengolahan sinyal pada incoming
call. Gateway jaringan terhubung pada PSTN (Public Switched
Telephone Network) melalui Dialogic card D/41 JCT-LS yang
melayani hubungan antara jalur telepon dan gateway jaringan.

Perangkat Dialogic D/41 JCT-LS merupakan hasil produk


dialogic yang menggunakan PCI yang sesuai dengan H.100 standart
CT BUS. Arsitektur terbuka dari perangkat ini membuat para
developers membangun solusi dari sistem komunikasi yang ada
menggunakan produk dari berbagai vendor. Apabila pengistallan
beraneka ragam perangkat Dialogic D/41JCT-LS dapat dilakukan
didalam sebuah PC maka sebanyak 32 port sistem dapat dibangun.

Software Springware dan Firmware yang didownload dan


dijalankan pada board DSP, akan menghasilkan beraneka ragam
pengkodean suara antara 24 hingga 32 Kb per detik ADPCM dan 48
serta 64 Kb per detik u-law atau A-law PCM.
16

Springware Fireware juga menyediakan pendeteksian DTMF


dan pengkondisian talk off ataupun play off melalui berbagai macam
kondisi jaringan telephone yang dipakai.

Software Dialogic Global Dial Pulse Code Detection merupakan


software yang sesuai untuk perangkat yang mempunyai pelayanan
touchtone telephone sehinnga dapat dioptimasikan untuk
menyediakan superior dial pulse detection.

Berikut ini adalah kelebihan dari perangkat Dialogic


D/41JCT-LS :
1. Empat port voice processing yang berdiri sendiri di dalam
sebuah slot PCI yang digunakan untuk aplikasi enterprise CT
baik low atau medium.
2. Konektor CT Bus dapat meningkatkan kapasitasnya dengan
mengoperasikan bersama CT Bus dari perangkat lain yang
sesuai.
3. Mudah dalam pemasangan karena plug and play serta memiliki
installasi hardware yang mudah dengan men-setting DIP Switch
dan Jumper hanya dengan mengontrol konfigurasi software saja.
4. Konfigurasi dengan banyak perangkat dapat dilakukan hingga
32 port analog digunakan.
5. Dukungan aplikasi program bahasa C untuk Windows
NT/Windows 2000 dan UNIX/Linux.
6. Dukungan Feature Global Dial Tone Pulse Detection yang
sesuai caller dengan non-touchtone phone untuk aplikasi
tambahan “Pulse to Tone Conversion”.

Dialogic board D/41JCT-LS dapat digunakan untuk


aplikasi-aplikasi seperti di bawah ini :
• Voice mail / messaging
• Interactive Voice Response
• Contact Center
• Audio-text
• Layanan Operator
• Dikte
• Auto-dialer
• Unified messaging
• Online data entry/query
17

Gambar 2.2 Dialogic Card D/41 JCT-LS

2.3.1 Syntax-syntax Dialogic Card


Syntax-syntax dialogic yang digunakan antara lain:
dx_open
fungsi untuk membuka channel pada card, fungsi lain akan
terbuka setelah channel terbuka
dx_close
fungsi untuk menutup setelah sebelumnya dibuka dengan
fungsi dx_open ( ). Int dx_close (chdev). Setelah channel
ditutup dengan fungsi tersebut kita tidak dapat menjalankan
fungsi lain.
dx_sethook
fungsi yang mengontrol status kondisi hook dari channel
tertentu.
dx_recwav
fungsi untuk menjalankan perekaman suara (file suara)
kedalam sebuah file wav
dx_playwav
fungsi untuk menjalankan rekaman suara (file suara) dari
sebuah file wav
dx_wtring
fungsi yang menunggu banyaknya jumlah ring tone dan
merubah kondisi channel menjadi On Hook atau Off Hook.
dx_dial
fungsi untuk mendial dari ASCII string dari channel open,
idle dan memungkinkan untuk call analysis untuk
mengetahui keterangan dari panggilan baik itu gagal
(enganged) atau berhasil (connect).
18

2.5 MICROSOFT VISUAL C++


C adalah bahasa yang standar, artinya suatu program yang ditulis
dengan versi bahasa C tertentu akan dapat dikompilasi dengan versi
bahasa C yang lain dengan sedikit modifikasi. Standar bahasa C yang
asli adalah standar dari UNIX. Sistem operasi, kompiler C dan seluruh
program aplikasi UNIX yang esensial ditulis dalam bahasa C. Patokan
dari standar UNIX ini diambilkan dari buku yang ditulis oleh Brian
Kerninghan dan Dennis Ritchie berjudul “The C Programming
Language”, diterbitkan oeh Prentice Hall tahun 1978. Deskripsi C
dari Kerninghan dan Ritchie ini kemudian dikenal secara umum
sebagai “K&R C”.

Dalam beberapa literatur bahasa C digolongkan sebagai bahasa


tingkat menengah. Penggolongan ke dalam bahasa tingkat menengah
bukanlah berarti bahwa bahasa C lebih sulit dibandingkan dengan
bahasa seperti PASCAL atau BASIC. Demikian juga bahasa C
bukanlah bahasa yang berorientasi pada mesin seperti bahasa mesin
dan assembly. Pada kenyataannya bahasa C mengkombinasikan
elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah.
Kemudahan dalam membuat program yang ditawarkan pada bahasa
tingkat tinggi dan kecepatan eksekusi dari bahasa tingkat rendah
merupakan tujuan diwujudkannya bahasa C.
BAB 3
PERENCANAAN DAN IMPLEMENTASI

3.1 PENDAHULUAN
Program-program yang dibutuhkan untuk mewujudkan tugas
akhir ini meliputi beberapa hal pokok yaitu : Instalasi Dialogic
Card, play file suara , Pendeteksian Digit DTMF, dan transfer
Panggilan. Program-program yang dibuat memanfaatkan fitur-fitur
yang tersedia pada Dialogic Card

3.2 DIAGRAM KERJA SISTEM.


Sistem informasi yang disajikan pada server ini adalah sistem
informasi mengenai nomor-nomor telepon suatu ruang dan pada saat
penelpon menghubungi nomor dialogic (server) maka penelpon akan
menerima pesan berupa suara yang berasal dari server untuk
memberikan informasi nomor telepon tersebut dan apabila penelpon
telah menentukan pilihannya, maka dialogic akan menghubungkan
(men-dial) langsung dengan nomor tujuan.

Dialogic Card yang merupakan Computer Telepony Integration


(CTI), dan dengan memanfaatkan fitur yang ada memungkinkan
untuk digunakan sebagai fungsi perekaman file suara, playback file
suara, pendeteksian digit DTMF, dan transfer panggilan pada proyek
akhir ini.

USER A PC + DIALOGIC

USER B

USER C

USER D
PABX NEAX 2000 IPS

Gambar 3.1 Diagram Kerja Sistem

19
20
Mulai

Menu pilihan:
• 100 = nomor lab. Komunikasi
digital.
• 200 = nomor lab. Optik
• 202 = Nomor lab. Radiowave dan
Propagasi.
• 204 = Nomor lab.multimedia.

Deteksi digit
yang ditekan

Tidak
Nomor ada
di pilihan?

Ya

Rekam suara
Ya
Sibuk?
Transfer

Tidak

Tidak No Ya
Sambung
Answer

Play rekaman suara

Set on hook

Selesai

Gambar 3.2 Flowchart aplikasi


21
Adapun nomor nomor ekstensi yang digunakan sebanyak
delapan nomor, Dimana empat nomor digunakan untuk dialogic dan
empat nomor yang lain untuk user,berikut ini adalah nomor-nomor
yang digunakan dalam proyek akhir ini::

• Nomor ekstensi untuk dialogic :101, 102, 103, dan 104.


• Nomor ekstensi untuk user : 100, 200, 202, dan 204.

Dari empat nomor yang digunakan untuk dialogic di bagi menjadi


dua, yaitu dua nomor digunakan untuk jalur ke nomor tujuan (jalur
transfer panggilan) dan dua nomor lagi digunakan sebagai server.

Prinsip kerja dari Proyek akhir ini sebagai berikut saat user A
(misal: nomor 100) ingin menghubungi user B (misal:nomor 200),
maka user A harus terlebih dahulu men-dial nomor dari dialogic
(server (101 atau 103)). Setelah tersambung akan ada menu pilihan
nomor telepon yang dipandu dengan suara dan akan dideteksi digit
yang ditekan oleh user A. Sebelum disambungkan ke nomor tujuan,
akan di-check apakah nomor yang ditekan terdapat dalam menu
pilihan, jika nomor yang ditekan tidak terdapat pada menu pilihan
maka program akan me-looping kembali ke menu awal dan meminta
user A untuk memasukkan kembali nomor yang ingin dihubungi
setelah nomor yang ditekan benar maka akan disambungkan ke
nomor tujuan. Setelah penyambungan ke jalur keluar server akan
mengecek status nomor yang dipanggil, dalam proyek ini terdapat
tiga buah kondisi yaitu kodisi dimana nomor yang dipanggil sedang
sibuk, no answer dan kondisi dimana transfer berhasil.

3.3 INSTALASI DIALOGIC CARD

3.2.1 Konfigurasi Card


Konfigurasi Dialogic card ini dapat dilakukan setelah Dialogic
System Software dari CD Dialogic Development kit. Setelah diinstall
dan komputer di-restart maka pada start menu akan terdapat item
Dialogic Development Package.

Konfigurasi dari Dialogic Card ini dapat dilakukan dengan


memilih jendela Dialogic configuration Manager pada Dialogic
Development Package. Apabila card sudah terpasang dengan benar
pada motherboard, maka pada Dialogic Configuration Manager
22
akan ditampilkan jenis card yang terinstal pada motherboard dan
ada pesan bahwa card siap untuk dikonfigurasi.
Tombol start digunakan untuk memulai konfigurasi card. Proses
konfigurasi ini dapat dilakukan dengan dua operasi yaitu secara
otomatis atau manual. Pada pemilihan otomatis maka card akan
selalu dikonfigurasi setiap masuk ke Windows. Untuk pemilihan
operasi dapat dilakukan sesuai gambar di bawah ini.

Gambar 3.3 Jendela Dialogic Configuration Manager setelah start

3.4 PERENCANAAN PROGRAM


Bahasa pemrograman yang digunakan adalah bahasa
pemrograman C/C++, tetapi tidak semua bahasa pemrograman
C/C++ dapat digunakan. Contohmya C++ Builder tidak dapat
digunakan, karena tidak memiliki fasilitas untuk menambah link
library pada project yang dibuat, sehingga pada saat program di
compile selalu didapatkan pesan error berupa ” LINKER ERROR ”.
Bahasa pemrograman yang dapat digunakan adalah Visual C++
karena selain mempunyai fasilitas tersebut juga sesuai dengan contoh
program yang diberikan oleh Dialogic Corporation. Adapun jenis
project yang yang digunakan adalah MFC Application Wizard.exe.
23

Gambar 3.4 Jendela pembuatan project baru

Library yang perlu ditambahkan adalah “libsrlmt.lib” dan


“libdxxmt.lib”. Untuk menambah link library tersebut, pilih pilihan
pulldown menu project, setting, link dan tambahan library-library
diatas sehingga tampak seperti pada gambar di bawah ini

Gambar 3.5 Jendela link library


24
Setelah itu directory tempat file-file header dan library milik
Dialogic ditambahkan Tools Æ Options Æ Directories Æ
ShowDirectories for : pilih Include file Æ browse folder dimana
Directory INC untuk Dialogic berada, sehingga didapatkan :

C:\Program Files\Dialogic\INC

Show Directories for : pilih Library file Æ browse folder dimana


Directory LIB untuk Dialogic berada, sehingga didapatkan :

C:\Program Files\Dialogic\LIB

seperti terlihat pada Gambar 3.6 dan 3.7

Gambar 3.6 Menambahkan Include untuk Include files milik


dialogic
25

Gambar 3.7 Menambahkan Library untuk Library Files milik


dialogic
3.4.1 Perekaman file suara menggunakan Multi Thread
Program
1. Membuka Voice Sample Program yang terdapat pada
Dialogic Development Package
2. Memilih file open sehingga terdapat tampilan seperti
gambar dibawah
3.

Gambar 3.8 Tampilan Voice Sample Program


26
4. Memilih channel yang akan digunakan (dalam hal ini
menggunakan channel B1C1)

Gambar 3.9 Tampilan Select Channel

5. Menghubungi nomor 101 (nomor ekstensi yang


digunakan oleh dialogic)
6. Channel yang terbuka akan menunggu sampai
terdeteksinya ring tone, apabila ada ring tone yang
masuk maka kondisi on-hook di ubah menjadi off-hook.

Gambar 3.10 Jendela set offhook


27
7. Kemudian pilih function dan record wav.

Gambar 3.11 Jendela record wav

8. Sebelum melakukan perekaman, perlu dibuat file


sebagai tempat penyimpanan file suara yang akan
direkam.

Gambar 3.12 Jendela select a file


28
9. Ketika kondisi ini, maka proses perekaman file suara
akan dimulai.

Gambar 3.13Jendela record wav file

3.5. ALGORITMA PROGRAM

Pada bagian ini akan dibahas algoritma program,


diantaranya adalah perekaman file suara, pendeteksian digit DTMF,
dan tranfer panggilan. Adapun algoritma dari program tersebut
adalah sebagai berikut :

3.5.1 Memainkan File Suara


1. Kondisi awal dari channel B1C1 dibuka dan kondisi
hook diset on-hook.
2. Channel yang terbuka akan menunggu sampai
terdeteksinya adanya ringtone, apabila terdeteksi adanya
ringtone yang masuk maka program akan mengeset
hook menjadi off-hook.
3. ketika kondisi ini, maka program akan digunakan untuk
memainkan suara.
4. Untuk proses memainkan suara yang perlu dipersiapkan
adalah file handler (tempat file suara disimpan), jenis
data, jenis coding, jumlah bit per sample serta sampling
ratenya
5. selesai
29

3.5.2 Pendeteksian Digit DTMF


1. Kondisi awal dari channel B1C1 (dxxxB1C1) dibuka dan
kondisi hook diset on-hook.
2. Insialisasi jumlah digit maksimum, fungsi waktu untuk
pendeteksian digit.
3. Channel yang terbuka akan menunggu sampai
terdeteksinya adanya ringtone, apabila terdeteksi adanya
ringtone yang masuk maka program akan mengeset
menjadi kondisi off-hook.
4. Clear Digit pada Buffer.
5. Deteksi digit DTMF.
6. Selesai.

3.5.3 Transfer Panggilan.


1. Kondisi awal dari channel B1C1 dibuka dan kondisi
hook diset on-hook.
2. Channel yang terbuka akan menunggu sampai
terdeteksinya adanya ringtone, apabila terdeteksi adanya
ringtone yang masuk maka program akan mengeset
menjadi kondisi off-hook.
3. Buka channel saluran baru (dxxxB1C2), channel ini
akan digunakan sebagai saluran keluar untuk transfer ke
nomor tujuan.
4. Transfer nomor tujuan.
5. Apabila tersambung, set kondisi hook menjadi on-hook.
6. selesai.
30
3.6. FLOWCHART
3.6.1 Memainkan File Suara

mulai

Inisialisasi

Buka kanal

Ya
Error buka
kanal?

tidak
Buka file suara

Ya
Error buka
file suara?

tidak
Play suara

selesai

Gambar 3. 14 Flowchart play suara


31
3.6.2 Pendeteksian Digit DTMF

Mulai

Inisialisasi

Buka Channel

Ya
Error buka
kanal?

tidak

Deteksi digit yang


ditekan

selesai

Gambar 3. 15 Flowchart deteksi digit


32
3.6.3 Transfer Panggilan

Mulai

Buka channel

Eror Ya

Tidak

Deteksi adanya
nada

Dial

Ya
Sibuk

Tidak

sambung

Set on hook

selesai

Gambar 3. 16 Flowchart transfer panggilan


33
3.7 SYNTAX-SYNTAX DIALOGIC
Dalam membuat program, header dari Dialogic harus
disertakan header tersebut adalah :
#include <windows.h>
#include <fcntl.h>
#include <srllib.h>
#include <dxxxlib.h>
#include <stdio.h>
#include <srllib.h>
#include <dxxlib.h>
Header-header tersebut diletakkan stelah #include
“TAtazDlg.h”. adapun tampilan setelah header dialogic
tersebutsebelum dan setelah ditambahkan header, terlihat
seperti pada Gambar 3.12.
Catatan : penulisan header –header diatas harus berurutan.

Gambar 3.17 Jendela Microsoft Visual C++ sebelum


ditambahkan header
34

Gambar 3.18 Jendela Microsoft Visual C++ sesudah


ditambahkan header

3.7.1 dx_open
Fungsi untuk membuka channel pada card tersebut,
fungsi yang lain baru dapat dijalankan setelah channel dibuka.
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 oflags = disediakan fungsi selanjutnya
oflags = NULL

3.7.2 dx_close
Fungsi untuk menutup channel setelah sebelumnya
dibuka dengan fungsi dx_open( ). Int dx_close (chdev). Setelah
channel ditutup dengan fungsi tersebut kita tidak dapat
menjalankan fungsi lainnya.
35
3.7.3 dx_sethook
Fungsi yang mengontrol status kondisi hook dari
channel tertentu,
Int dx_sethook(chdev, hookstate, mode)

Parameter Penjelasan
Chdev : menunjukkan channel yang sudah dibuka.
Hookstate : menunjukkan kondisi hook.
• DX_ONHOOK untuk kondisi onhook
• DX_OFFHOOK untuk kondisi offhook
Mode :
• EV_SYNC untuk menjalankan secara
sinkron
• EV_ASYNC untuk menjalankan secara
Asinkron.
3.7.4 dx_wtring
Fungsi yang menunggu banyaknya jumlah ring tone dan
merubah kondisi channel menjadi ON Hook atau Off Hook.
Int dx_wtring(chdev,nrings,hstate,timeout)

Parameter Penjelasan
Chdev : menunjukkan channel yang sudah
dibuka dx_open
Rings : banyaknya rings yang ditunggu
sebelum setting hookstate
hstate : hookstate
timeout : lamanya waktu untuk melaksanakan
fungsi tersebut.

3.7.5 dx_dial
Fungsi untuk men-dial dari ASCII string dari channel
open, idle dan memungkinkan untuk call Analysis untuk
mengetahui keterangan dari panggilan baik itu gagal (engaged)
atau berhasil (connect).
int dx_dial (chdev, dialstrap, capp, mode)

char * dialstrap = pointer ke ASCII dial string


DX_CAP * capp =pointer ke Call Analysis Parameter
Structure.
36
Structure dari DX_CAP (yang diperlukan) adalah
Typedef struct DX_CAP
{
unsigned short ca nbra /*/banyaknya ring sebelum ada
jawaban */
}DX_CAP;

catatan :
• Dx_dial ( ) tidak berpengaruh pada hook state
• Dx_dial ( ) tidak menunggu dial tone sebelum men-dial.

3.7.6 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 yang telah dibuka dx_open
Iottp : menunjukkan nama file
Tptp : menunjukkan ke struktur DX_TPT
Xpbp : menujukkan ke struktur DX_XPB
Mode : menujukkan mode yang digunakan
• EV_SYNC : mode sinkron
• RM_RONE : mengirimkan sebuah tone
merekam file
• PM_TONE :menjalankan 200 ms audible
tone

3.7.7 dx_getdig
Fungsi ini digunakan untuk menerima digit dari penelpon.
Int dx_getdig (chdev,tptp, digitp, mode)

DV_TPT*tpt = menunjukkan ke struktur tabel parameter


terminasi
DV_DIGIT = menunjukkan ke struktur User Digit Buffer.
Struktur dari DV_DIGIT :
Typedev structur dv_digit :
Char dg_value [DG_MAXDIGS-1 ]
Char dg_type [ DG_MAXDIAG-1 ]
} DV_DIGIT :
37
3.8 DATA FILE SUARA

Tabel 3.1 Data file suara


NO NAMA FILE ISI
1. hello.wav ”selamat datang di layanan operator
otomatis”
2. utama.wav ”Silahkan masukkan pilihan anda :
Tekan 100 untuk menghubungi lab
komunikasi digital
Tekan 200 untuk menghubungi lab optik
Tekan 202 untuk menghubungi lab
radio- wave dan propagasi
Tekan 204 untuk menghubungi lab
multimedia”.
3. salah.wav ”Maaf nomor yang anda tekan tidak ada
dalam pilihan”
4. menuRekam.wav ”Silahkan masukkan pesan anda setelah
bunyi bep dan akhiri dengan menekan
satu digit”.
38

.........halaman ini sengaja dikosongkan.........


BAB 4
PENGUJIAN DAN ANALISA
4.1. TUJUAN PENGUJIAN
Pengujian merupakan salah satu langkah penting yang harus
dilakukan untuk mengetahui apakah sistem yang dibuat telah sesuai
dengan apa yang direncanakan. Hal ini dapat dilihat dari hasil-hasil
yang dicapai selama pengujian sistem.

Selain untuk mengetahui apakah sistem sudah bekerja secara


efektif sesuai dengan yang diharapkan, pengujian juga bertujuan
untuk mengetahui kelebihan dan kekurangan dari sistem yang dibuat.
Hasil-hasil pengujian tersebut akan dianalisa mengapa terjadi
kekurangan

4.2. METODE PENGUJIAN


Dalam pengerjaan proyek akhir ini dibuat tiga buah dialog,
yaitu pengenalan digit DTMF, perekaman file suara dan transfer
panggilan. Analisa meliputi: pendeteksian digit DTMF, memainkan
file suara, fungsi wtring, dan fungsi transfer.

4.3. ANALISA HASIL PENGUJIAN


4.3.1. Pendeteksian digit DTMF.

Untuk menguji sistem ini dapat dilakukan dengan menekan


nomor dialogic (dalam hal ini yakni nomor101 atau 103) pada
keypad pesawat telepon, apabila terdengar nada sambung maka pada
saat ini dialogic siap untuk menerima digit dari penelpon.

Fungsi pendeteksian digit digunakan untuk menerima dan


menginisialisasi digit yang diterima oleh sistem. Untuk menguji
sistem ini perlu diperhatikan parameter-parameter yang menentukan
dalam pendeteksian digit. Parameter-parameter tersebut yaitu jumlah
digit maksimum, jenis digit dan waktu terminasi. Sebelum program
dijalankan, parameter-parameter tersebut diinisialisasi sebagai
berikut :
1 Jumlah digit maksimum : 3 digit
1 Jenis digit : DTMF
1 Delay maksimum : 15 detik

39
40

Tampilan program pengujian deteksi digit sebagai berikut

Gambar 4.1 Tampilan deteksi digit

Berikut ini hasil uji pendeteksian digit DTMF yang telah


dilakukan :

Tabel 4.1 Data hasil pengujian digit DTMF

No Digit Input Digit Kondisi


Output Ok Tidak
1. 123 123
2. 456 450
3. 789 789
4. 235 235
5. 504 504
6. 1234 123
7. 5678 567
8. 9012 901
9. 3456 345
10. 7809 780
41

Pada data yang telah diperoleh, dapat diketahui bahwa data


yang benar adalah data ke-1 sampai data ke-5. Pada data tersebut
terlihat bahwa jumlah digit keluaran sama seperti digit masukan.

Pada data yang telah diperoleh, dapat diketahui bahwa data


ke-5 sampai dengan data ke-10 adalah salah. Pada data tersebut
digit input 1234 tetapi digit output sama dengan 123, hal ini
disebabkan karena fungsi pendeteksian digit berakhir sesudah
pemasukan sebanyak 3 digit sehingga digit ke-4 dianggap
sebagai karakter kosong.

4.3.2 Memainkan File Suara


Fungsi play suara digunakan untuk memanggil dan
memainkan file suara yang disimpan dalam bentuk file WAVE.
Pengujian fungsi play suara perlu diperhatikan parameter-
parameter yang menentukan dalam play suara. Parameter-
parameter tersebut yaitu format file, format data, jumlah sample
per detik dan jumlah bit per sample.

Pengujiian dilakukan dengan cara survey kepada 5 orang


pendengar. File suara yang dimainkan yaitu file suara yang
direkam pada Multi-Thread Voice dibandingkan dengan rekaman
dari software Cool Edit Pro 2.0. Dari hasil survey diketahui
bahwa file suara dari Multi-Thread Voice dengan format
ADPCM 8KHz memiliki kualitas suara yang bagus. Untuk
melihat sinyal dari file suara yang diujikan menggunakan Cool
Edit Pro 2.0 dan Vox Studio. Sinyal-sinyal tersebut seperti pada
gambar-gambar di bawah :

Gambar 4.2 Sinyal suara 6KHz ADPCM.wav


42

Gambar 4.3 Sinyal suara ADPCM8KHz.wav

Gambar 4.4 Sinyal suara 8KHz LINEAR.wav

Dengan menggunakan Multi-Thread Voice dapat dilakukan


perekaman dengan empat format dimana masing-masing format
memiliki kapasitas maksimal perekaman yang berbeda-beda
seperti terlihat pada tabel dibawah ini

Tabel 4.2 Tabel hasil pengujian rekam suara

Format Perekaman Waktu Maksimal Ukuran (KB)


ADPCM 6KHz 30,49 detik 87
ADPCM 8KHZ 30,49 detik 116
Linier PCM 8KHz 30,49 detik 231
Linier PCM 11KHz 30,49 detik 317
43

Dari data-data tersebut didapatkan waktu rata-rata maksimal


perekaman suara adalah 30,56 detik

4.3.3 Fungsi wtring

Untuk menguji fungsi ini dapat dilakukan dengan menekan


nomor dialogic, apabila terdengar nada sambung, maka dialogic
akan menunggu hingga jumlah waitring / ring back tone (RBT)
terpenuhi dan kemudian akan mengubah kondisi channel menjadi
on hook dan offhook.

Tabel 4.3 Tabel hasil pengujian fungsi wtring

Delay sampai
No Jumlah waitring
off hook (detik)
1 1 3.20
2 1 3.70
3 1 2.23
4 1 2.35
5 2 3.80
6 1 3.36
7 1 3.32
8 2 3.75
9 1 3.07
10 1 3.20

Dari data pengujian fungsi wtring menunjukkan bahwa


terjadi perbedaan jumlah ring back tone yang diset pada program
dengan aplikasinya. Pada program diset 2 ring back tone dan
pada aplikasinya terjadi 1 ring back tone dan 2 ring back tone,
tetapi lebih banyak 1 ring back tone. Hal ini dipengaruhi oleh
proses switching pada PABX
44

4.3.4 Transfer Panggilan

Untuk menguji sistem ini dapat dilakukan dengan menekan


nomor dialogic (dalam hal ini yakni nomor101 atau 103) pada
keypad pesawat telepon. Apabila sudah tersambung maka perlu
diberikan nomor yang merupakan nomor telepon tujuan.

Pengujian pertama dari transfer panggilan dengan mencoba


melakukan transfer dalam waktu yang hampir bersamaan.
Pengujian ini dilakukan sebanyak 10 kali, dibawah ini hasil dari
pengujian tersebut

Tabel 4.4 Tabel hasil pengujian transfer.

Transfer Banyaknya Hasil pengujian


pengujian berhasil gagal
1 nomor tujuan 10 10 -
2 nomor tujuan 10 10 -

Karena dialogic tidak dapat dibuat hunting maka untuk


transfer 2 nomor tujuan diperlukan dua program yang dijalankan
bersamaan.

Berikut ini hasil dari pengujian kedua dengan melihat


waktu yang diperlukan untuk transfer dari penekanan digit
sampai terdengar adanya ringtone pada sisi penerima :

Tabel 4.5 Waktu transfer dari nomor 100

Percobaan Waktu yang diperlukan(detik)


ke Dial no. 200 Dial no. 202 Dial no. 204
1. 1,82 1,36 1,.45
2. 1,70 1,41 1,39
3. 1,67 1,36 1,33
4. 1,61 1,42 1,40
5. 1,76 1,37 1,37
total 8,56 6,92 6,94
45

Tabel 4.6 Waktu transfer dari nomor 200

Percobaan Waktu yang diperlukan(detik)


ke Dial No 100 Dial No 202 Dial No 204
1 1,54 1,43 1,44
2 1,74 1,44 1,38
3 1,59 1,43 1,37
4 1,70 1,42 1,40
5 1,64 1,40 1,33
total 8,21 7,12 6,92

Tabel 4.7 Waktu transfer dari nomor 202

Percobaan Waktu yang diperlukan(detik)


ke Dial No 100 Dial No 200 Dial No 204
1 1,84 1,60 1,56
2 1,49 1,27 1,48
3 1,46 1,63 1,70
4 1,54 1,42 1,67
5 1,44 1.,3 1,58
total 7,77 7,35 7,99

Tabel 4.8 Waktu transfer dari nomor 204.

Percobaan Waktu yang diperlukan(detik)


ke Dial No 100 Dial No 200 Dial No 202
1 1,67 1,17 1,30
2 1,78 1,35 1,21
3 1,28 1,19 1,19
4 1,41 1,23 1,37
5 1,37 1,44 1,16
total 7,51 6,38 6,23
46

Dari hasil pengujian tersebut diatas dapat dihitung rata-rata


waktu dengan menggunakan rumus


Rata − rata = ⎜
∑ waktu ⎞


⎝ ∑ jumlah sample ⎟⎠

didapatkan nilai rata-rata total:

Rata-rata = ( 8,56 + 6,92 + 6,94 + 8,21 + 7,12 + 6,92 + 7,77 +


7,35 +7,99 + 7,51 + 6,38 + 6,23 ) / (60)
= ( 87.9 / 60 )
= 1,465 detik

Jadi rata-rata waktu yang diperlukan untuk transfer dari


penekanan digit sampai terdengar adanya ringtone pada sisi
penerima adalah 1,465 detik.
BAB 5
KESIMPULAN DAN SARAN

5.1 KESIMPULAN
Setelah dilakukan pengujian alat, maka diperoleh kesimpulan
dan yang diharapkan berguna untuk perbendaharaan ilmu dan
teknologi serta bagi kelanjutan dalam penyempurnaan alat ini.
Dari hasil pengujian dan analisa diperoleh beberapa kesimpulan
sebagai berikut :
• Dalam Transfer panggilan diperlukan minimal dua buah jalur
agar dapat terlaksana, dua jalur tersebut digunakan sebagai jalur
input dan output dialogic.
• Sistem informasi ini tidak menggunakan sistem hunting
sehingga ada dua jalur yang digunakan sebagai server yaitu
nomor 101 dan nomor 103, sedangkan dua jalur yang lain
digunakan untuk jalur transfer panggilan.
• Fungsi pendeteksian digit berakhir sesudah pemasukan
sejumlah digit maksimum yang telah di-set, sehingga digit
yang melebihi batas maksimum dianggap sebagai karakter
kosong. Delay maksimum untuk memasukkan 3 digit adalah 15
detik dan delay maksimum untuk setiap digit adalah 5 detik.
• Waktu rata-rata yang diperlukan untuk transfer sebesar 1,465
detik.

5.2 SARAN-SARAN
Saran untuk pengembangan pada proyek akhir di masa
mendatang :
• Sistem informasi yang menggunakan sistem hunting sehingga
hanya perlu satu nomor server.
• Sistem tidak hanya untuk penyambungan tetapi dapat dibuat
untuk percakapan.

47
48

.........halaman ini sengaja dikosongkan.........


50

DAFTAR PUSTAKA

[1] Kristalina, Prima, “Introduction to Computer Telephony


Integration CTI”, In-House Training CTI Telecommunication
– Department, 2005.
[2] Kristalina, Prima, “Introduction to Voice Processing Board”,
In-House Training CTI Telecommunication – Department,
2005.
[3] Kristalina, Prima, “Aplikasi Voice Programming pada Dialogic
Card”, In-House Training CTI Telecommunication –
Department, 2005.
[4] Kristalina, Prima, “Praktikum IVR”,_____.
[5] Kristalina, Prima, ”Praktikum Instalasi PABX”,_____.
[6] Kurniawati, Endah, ”Aplikasi Studi Islam Anak – anak dengan
menggunakan Dialogic D/41 JCT-LS”, Proyek Akhir PENS-
ITS, 2005.
[7] Anang Fauzi, “Layanan Sistem Informasi Menggunakan
Dialogic Card D/41 JCT-LS”, Proyek Akhir PENS -ITS, 2004
[8] Setyowati, Eryk, ”Pembuatan Sistem Informasi Nilai IP PENS
Via Telepon dengan Pemanfaatan Dialogic Card D/4”, Proyek
Akhir PENS-ITS, 2005.
[9] Abdul Kadir, ”PEMROGRAMAN C++”, Andi, Yogyakarta.

49
LAMPIRAN
Algoritma Program

1. Tekan nomor server 101 atau 103.


2. Set hook menjadi off-hook, play pesan pembuka.
3. Play menu utama yaitu nomor-nomor yang dapat dihubungi
(tujuan).
4. Deteksi digit yang ditekan oleh pengguna.
5. Cek apakah nomor ada dalam pilihan.
6. Kondisi jika tidak ada maka
• Play pilihan salah
• Kembali ke menu pilihan utama.
7. Kondisi jika ada maka rekam pesan.
8. Transfer ke nomor tujuan.
9. Cek status nomor yang dipanggil
10. Kondisi :
• Sibuk (busy)
• Tidak ada jawaban (no answer)
• Tersambung (connect)
11. Jika kondisi sibuk atau tidak ada jawaban maka set hook
menjadi off-hook
12. Selesai
13. Jika kondisi tersambung maka play suara yang direkam oleh
pengguna ke nomor tujuan
14. Selesai

51
52

Dialogic D/41JCT-LS

4-Port PCI Voice Processing Board

Features and Benefits

• Four independent voice processing ports in a single PCI slot for


low- to medium-density enterprise CT applications
• With approvals in North America, Europe, and Japan, the
D/41JCT-LS board cost effectively expands an application's
ability to serve several global markets (other international
approvals pending)
• CT Bus* connector increases the board's capacity to
interoperate with other CT Bus/SCbus compatible boards
• SCbus connectivity through a simple cable adapter enables
applications to access additional resources such as text-to-
speech (TTS) and automatic speech recognition (ASR)
• Universal PCI edge-connector for compatibility with 3.3 volt
and 5.0 volt bus signals, enables deployment in a wide variety
of PCI chassis from popular manufacturers
• Plug and Play* ready. Simplifies hardware installation by
eliminating DIP switches and jumper settings and enabling
software controlled configuration.
• Configure multiple boards in a single chassis, PCI bus or mixed
PCI/ISA bus, for easy and cost-effective system expansion up
to 32 analog ports
• Downloadable Spring Ware firmware signal and call
processing firmware, provides field-proven performance based
on over 3 million installed ports with access to future feature
enhancements
• DTMF (touch tone) detection provides reliable detection during
voice playback - lets callers "type-ahead" through menus
• A-law or µ-law voice coding at dynamically selectable data
rates, 24 Kb/s to 64 Kb/s, selectable on a channel-by-channel
basis for optimal tradeoff between disk storage and voice
quality
• International Caller ID capability via on-hook audio path.
Supports Bellcore CLASS*, UK CLI, Japanese Caller ID, and
other international protocols.
53

• Patented outbound call progress analysis monitors outgoing call


status quickly and accurately
• C language application program interfaces (API) for Windows
NT*, Windows 2000*, UNIX*, and Linux shorten the
development cycle for faster time to market
• Supports the PBX Expert32 tool, a software utility that
simplifies switch integration
• Optional onboard Global Dial Pulse Detection (Global DPD)
feature enables callers with non-touch-tone phones to access
applications without additional "pulse-to-tone conversion"
equipment

Applications

• Voice messaging
• Interactive voice response
• Call center
• Audiotex
• Operator services
• Dictation
• Auto dialers
• Notification systems
• Online data entry/query

The D/41JCT-LS board is a four-port analog converged communications


voice processing board ideal for developers building enterprise unified
messaging and interactive voice response (IVR) applications for the
global market. The D/41JCT-LS provides four telephone line interface
circuits for direct connection to analog loop start lines. A dual-processor
architecture, comprising a digital signal processor (DSP) and a general-
purpose microprocessor, handles all telephony signaling and performs
DTMF (touch tone) and audio/voice signal processing tasks. The
D/41JCT-LS board, a part of the Intel PCI board product family,
conforms to the H.100 CT Bus standard. The open architecture enables
developers to build converged communications solutions using products
from multiple vendors. And since you can install multiple D/41JCT-LS
boards in a single PC chassis, you can build systems scaling up to 32
ports.
54

Downloaded Spring Ware firmware algorithms, executed by the onboard


DSP, provide variable voice coding at 24 and 32 Kb/s ADPCM, and 48
and 64 Kb/s µ-law or A-law PCM, as well as µ-law to A-law
conversion. Sampling rates and coding methods are selectable on a
channel-by-channel basis. Applications may dynamically switch
sampling rate and coding method to optimize data storage or voice
quality as the need arises. Additional coding algorithms such as GSM
and G.726 are available for use in applications that support the Voice
Profile for Internet Mail (VPIM) standard.

Spring Ware firmware also provides reliable DTMF detection, DTMF


cut-through, and talk off/play off suppression over a wide variety of
telephone line conditions.

Global Dial Pulse Detection (Global DPD) algorithm, available as a


software option for the D/41JCT-LS board, lets you use the board in
countries that have limited touchtone telephone service. The Global
DPD product can be optimized on a country-by-country basis to provide
superior dial pulse detection.

Configurations

Use the D/41JCT-LS board to build sophisticated CT systems to which


capabilities such as speech recognition, facsimile, and text-to-speech
(TTS) can be added. The D/41JCT-LS board shares a common hardware
and firmware architecture with other CT Bus and SCbus based boards
for maximum flexibility and scalability. Add features or grow the
system while protecting your investment in hardware and application
code. Applications can be easily ported to lower or higher line-density
platforms with minimum modifications.

The D/41JCT-LS board installs in PCI-based PCs or servers (PCI bus or


mixed PCI/ISA) and compatible computers (Intel® 80486, or Pentium®
processor-based PC platforms). The D/41JCT-LS board provides for
building integrated voice solutions scalable from four ports to 32 ports.
The maximum number of lines that can be supported is dependent on the
application, the amount of disk I/O required, and the host computer CPU
and power supply.
55

The D/41JCT-LS board can operate within a mixed chassis containing


PCI and ISA products. The forward-looking design of the D/41JCT-LS
conforms to the new H.100 CT Bus to enable connection to next-
generation CT Bus products. The D/41JCT-LS can also connect to
existing SCbus products through the use of an optional CT Bus/SCbus
adapter. The adapter provides both SCbus and H.100 physical
connectors required to link the D/41JCT-LS to current SCbus products.

Mixed PCI/ISA Configuration Example

Software Support

The D/41JCT-LS board is currently supported by the System Software


and Software Development Kit for Windows NT and Windows 2000,
and the System Software and Software Development Kit for UNIX and
Linux Systems. These packages contain a set of tools for developing
complex multichannel applications.

Functional Description

The D/41JCT-LS board uses a dual-processor architecture that combines


the signal processing capabilities of a DSP with the decision-making and
data movement functionality of a general-purpose 80186 control
microprocessor. This dual-processor approach offloads many low-level
decision-making tasks from the host computer and thus enables easier
development of more powerful applications. This architecture handles
real-time events, manages data flow to the host PC for faster system
response time, reduces host PC processing demands, processes DTMF
and telephony signaling, and frees the DSP to perform signal processing
on the incoming call.

Each of four analog loop start telephone line interfaces on the D/41JCT-
LS board receives analog voice and telephony signaling information
from the telephone network (see block diagram). Each telephone line
interface uses reliable, solid-state hook switches (no mechanical
contacts) and FCC-part 68 class B ring detection circuitry. This FCC-
approved ring detector is less susceptible to spurious rings created by
random voltage fluctuations on the network. Each interface also
incorporates circuitry that protects against high-voltage spikes and
56

adverse network conditions and lets applications go off-hook any time


during ring cadence without damaging the board.Inbound telephony
signaling (ring detection, loop-current detection, and Caller ID
information) is detected by the line interface and routed via a control bus
to the control processor. The control processor responds to these signals,
informs the application of telephony signaling status, and instructs the
line interface to transmit outbound signaling (on-hook/off-hook) to the
telephone network.

The audio voice signal from the network is bandpass filtered and
conditioned by the line interface and then applied to a CODEC
(COder/DECoder) circuit. The CODEC filters, samples, and digitizes
the inbound analog audio signal and passes this signal to a Motorola
56303* DSP.

Based on Spring Ware firmware loaded in DSP SRAM, the DSP


performs the following signal analysis and operations on this incoming
data:

• Automatic gain control to compensate for variations in the level


of the incoming audio signal
• Applies an ADPCM (Adaptive Differential Pulse Code
Modulation) or PCM (Pulse Code Modulation) algorithm to
compress the digitized voice and save disk storage space
• Detects the presence of tones - DTMF, MF, or an application-
defined single or dual tone
• Silence detection to determine whether the line is quiet and the
caller is not responding

For outbound data, the DSP performs the following operations:

• Expands stored, compressed audio data for playback


• Adjusts the volume and rate of speed of playback upon
application or user request
• Generates tones - DTMF, MF, or any application-defined
general-purpose tone
57

The dual-processor combination also performs the following outbound


dialing and call progress monitoring

• Transmits an off-hook signal to the telephone network


• Dials out (makes an outbound call)
• Monitors and reports results: line busy or congested; operator
intercept; ring, no answer; or if the call is answered, whether
answered by a person, an answering machine, a fax machine, or
a modem

The D/41JCT-LS board also supports optional Global DPD software that
recognizes dial pulse digits even in the most difficult telephony
environments.

When recording speech, the DSP can use different digitizing rates from
24 to 64 Kb/s as selected by the application for the best speech quality
and most efficient storage. The digitizing rate is selected on a channel-
by-channel basis and can be changed each time a record or play function
is initiated. The DSP processed speech is transmitted via the control
processor to the host PC for disk storage. When replaying a stored file,
the processor retrieves the voice information from the host PC and
passes it to the DSP, which converts the file into digitized voice. The
DSP sends digitized voice and appropriate signaling responses to the
CODEC to be converted into analog format for transmission to the
telephone network.

Signaling data (on-/off-hook, ringing, Caller ID, etc.) is passed to the


onboard control processor and transmitted to the application via a dual-
port shared RAM and the host PCI bus.

When using the D/41JCT-LS board and the CT Bus, digital voice and
signaling information from a network board or other resource enter the
board via the H.100 connector and CT Bus interface. A CT612 chip
manages these signals and acts as the traffic coordinator and matrix
switch to buffer the high-speed digital data from the bus until the data
for each channel can be transmitted to the DSP.

The CT612 chip transmits several lower speed data streams over the CT
Bus high-speed channel. The bus configuration is set when the firmware
58

is downloaded at system initialization. This chip incorporates matrix


switching capabilities. Under control of the onboard control processor,
the CT612 chip can connect any call being processed to any of the four
analog lines or to any of the 4096 CT Bus time slots. This enables the
application to switch calls to or from other resources, such as facsimile
or speech recognition, as they are needed, or to reroute calls.

The onboard control processor controls all operations of the D/41JCT-


LS board via a local bus and interprets and executes commands from the
host PC. The processor handles real-time events, manages data flow to
the host PC to provide faster system response time, reduces PC host
processing demands, processes DTMF and telephony signaling before
passing them to the application, and frees the DSP to perform signal
processing.

Communications between a processor and the host PC is via the Shared


RAM that acts as an input/output buffer and thus increases the efficiency
of disk file transfers. This RAM interfaces to the host PC via the PCI
bus. All operations are interrupt-driven to meet the demands of real-time
systems. When the system is initialized, Spring Ware firmware is
downloaded from the host PC to the onboard code/data RAM and DSP
RAM to control all board operations. This downloadable firmware gives
the board all of its intelligence and enables easy feature enhancement
and upgrades.

With the rotary switch on the D/41JCT-LS board set to 0, the D/41JCT-
LS board is Plug and Play enabled. Configuration is handled exclusively
by software. Alternatively, you can set the rotary switch to another value
to manually control board location for ease of cabling or backwards
compatibility with Dialogic Board Locator Technology (BLT)
installation.

Technical Specifications**
Number of ports 4
Maximum 8
boards/system
59

Analog network Onboard loop start interface circuits


interface
Resource sharing CT Bus, SCbus compatible with bus adapter
bus
Control 80C186 @ 34.8 MHz
microprocessor
Digital signal Motorola DSP56303 @100 MHz, with 128Kx24
processor private SRAM
HOST INTERFACE:
Bus compatibility PCI. Complies with PCISIG Bus Specification,
Rev. 2.1.
Bus speed 33 MHz max.
Bus mode Target mode operation only
Shared memory 32 KB page
I/O ports None
TELEPHONE INTERFACE‡:
Trunk type Loop start
Loop current range 20 to 120 mA
Impedance 600 Ohms nominal
Ring detection 15 Vrms min., 13 to 68 Hz (configurable by
parameter)
Echo return loss Configurable by software parameter
Crosstalk coupling Less than -70 dB at 1 KHz channel to channel
Receive 70 dB referenced to -15 dBm
signal/noise ratio
Frequency 200 Hz to 3400 Hz ±3 dB (transmit and receive)
response
60

Connector Four RJ-11 type


POWER REQUIREMENTS:
+5 VDC 750 mA max.
+12 VDC 200 mA max.
-12 VDC 100 mA max.
Operating 0° C to +50° C
temperature
Storage -20° C to +70° C
temperature
Humidity 8% to 80% non-condensing
Form factor Universal slot (5 V or 3.3 V) PCI long card, 12.3
in. long (without edge retainer) or 13.3 in. long
(with edge retainer), 0.79 in. wide (total envelope),
3.87 in. high (excluding edge connector)
SAFETY & EMI CERTIFICATIONS:
FCC Part 15 class A; FCC Part 68 EBZUSA-
United States
75385-VM-T UL: E96804 UL1950
Canada DOC: 885-5542A DOC: 885-5542A For specific
country approval designation, see the product
approvals list or contact your Technical Sales
Representative
Warranty 3 years standard
Spring Ware Firmware Technical Specifications**
AUDIO SIGNAL:
Receive range -50 to -13 dBm (nominal), for average speech
signals1 configurable by parameter‡
Automatic gain Application can enable/disable. Above -18 dBm
control results in full-scale recording, configurable by
parameter‡.
61

Silence detection -38 dBm nominal, software adjustable‡


Transmit level -9 dBm nominal, configurable by parameter‡
(weighted average)
Transmit volume 40 dB adjustment range, with application definable
control increments
Frequency
response
24 Kb/s 300 Hz to 2600 Hz ±3 dB
32 Kb/s 300 Hz to 3400 Hz ±3 dB
48 Kb/s 300 Hz to 2600 Hz ±3 dB
64 Kb/s 300 Hz to 3400 Hz ±3 dB
AUDIO DIGITIZING:
24 Kb/s ADPCM @ 6 kHz sampling
32 Kb/s ADPCM @ 8 kHz sampling
48 Kb/s µ-law PCM @ 6 kHz sampling
64 Kb/s µ-law PCM @ 8 kHz sampling
Digitization Selectable by application on function call-by-call
selection basis
Playback speed Pitch controlled; available for 24 and 32 Kb/s
control ADPCM data rates; adjustment range: ±50%;
adjustable through application or programmable
DTMF control
DTMF TONE DETECTION:
DTMF digits 0 to 9, *, #, A, B, C, D per Bellcore LSSGR Sec 6
Dynamic range -45 dBm to +3 dBm per tone, configurable by
parameter‡
Minimum tone 40 ms, can be increased with software
duration configuration
62

Interdigit timing Detects like digits with a 40 ms interdigit delay.


Detects different digits with a 0 ms interdigit
delay.
Twist and Meets Bellcore LSSGR Sec 6 and EIA 464
frequency variation requirements
Acceptable twist 10 dB
Signal/noise ratio 10 dB (referenced to lowest amplitude tone)
Noise tolerance Meets Bellcore LSSGR Sec 6 and EIA 464
requirements for Gaussian, impulse, and power
line noise tolerance
Cut through Detects down to -36 dBm per tone into 600 Ohm
load impedance
Talk off Detects less than 20 digits while monitoring
Bellcore TR-TSY-000763 standard speech tapes
(LSSGR requirements specify detecting no more
than 470 total digits). Detects 0 digits while
monitoring MITEL speech tape #CM 7291.
GLOBAL TONE DETECTION:
Tone type Programmable for single or dual
Maximum number Application dependent
of tones
Frequency range Programmable within 300 to 3500 Hz
Maximum Programmable in 5 Hz increments.
frequency duration
Frequency Less than 5 Hz.-Note: Certain limitations exist for
resolution dual tones closer than 60 Hz apart.
Timing Programmable cadence qualifier, in 10 ms
increments
Dynamic range Programmable, default set at -36 dBm to +3 dBm
per tone
63

GLOBAL TONE GENERATION:


Tone type Generate single or dual tones
Frequency range Programmable within 200 to 4000 Hz
Frequency 1 Hz
resolution
Duration 10 msec increments
Amplitude -43 dBm to -3 dBm per tone, programmable

MF SIGNALING:
MF digits 0 to 9, KP, ST, ST1, ST2, ST3 per Bellcore
LSSGR Sec 6, TR-NWT-000506 and CCITT
Q.321
Transmit level Complies with Bellcore LSSGR Sec 6, TR-NWT-
000506
Signaling Complies with Bellcore LSSGR Sec 6, TR-NWT-
mechanism 000506
Dynamic range for -25 dBm to +3 dBm per tone
detection
Acceptable twist 6 dB
Acceptable Less than ±1 Hz
frequency variation
CALL PROGRESS ANALYSIS:
Busy tone Default setting designed to detect 74 out of 76
detection unique busy/congestion tones used in 97 countries
as specified by CCITT Rec E., Suppl #2. Default
utilizes both frequency and cadence detection.
Application can select frequency only for faster
detection in specific environments.
Ring back Default setting designed to detect 83 out of 87
64

detection unique ring back tones used in 96 countries as


specified by CCITT Rec E., Suppl #2. Utilizes
both frequency and cadence detection.
Positive Voice >98% based on tests on a database of real world
Detection accuracy calls
Positive voice Detects voice in as little as 1/10th of a second.
detection speed
Positive Answering >80% to 90% based on application and
Machine Detection environment
accuracy
Fax/modem Preprogrammed
detection
Intercept detection Detects entire sequence of the North American tri-
tone. Other SIT sequences can be programmed.
Dial tone detection before dialing Application enable/disable; supports
up to three different user definable dial tones;
programmable dial tone drop out debouncing.
TONE DIALING:
MF digits 0 to 9, *, #, A, B, C, D; 16 digits per Bellcore
LSSGR Sec 6, TR-NWT-000506
Pulsing rate 0 to 9, KP, ST, ST1, ST2, ST3
Frequency Less than ±1 Hz
variation
Rate 10 digits/s max.,configurable by parameter‡
Level -4.0 dBm per tone, nominal, configurable by
parameter‡

PULSE DIALING:
10 digits 0 to 9
65

Pulsing rate 10 pulses/s, nominal, configurable by parameter‡


Break ratio 60% nominal, configurable by parameter‡
ANALOG DISPLAY SERVICES INTERFACE (ADSI):
FSK generation per Bellcore TR-NWT-000030
CAS tone generation and DTMF detection per
Bellcore TR-NWT-001273.

Hardware System Requirements

• 80486 or Pentium® processor-based, PCI bus or mixed


PCI/ISA bus PC or compatible computer
• Operating system hardware requirements vary according to the
number of channels being used
• System must comply with PCISIG Bus Specification Rev. 2.1
or later

Additional Components

• Optional multidrop CT Bus cable


• Optional CT Bus/SCbus adapter

*All company names, products, and services mentioned are the


trademarks or registered trademarks of their respective owners.

** All specifications are subject to change without notice


Analog levels: 0 dBm0 corresponds to a level of +3 dBm at tip-ring
analog point. Values vary depending on country requirements; contact
your Dialogic Technical Sales Representative.

1
Average speech mandates +16 dB peaks above average and preserves -
13 dB valleys below average.

Copyright ® 2002 - AMDEV Communications Corporation


66

LISTING PROGRAM

A.1 Program Utama

// TA_taz02Dlg.cpp : implementation file

#include "stdafx.h"
#include "TA_taz02.h"
#include "TA_taz02Dlg.h"
#include <windows.h>
#include <fcntl.h>
#include <srllib.h>
#include <dxxxlib.h>
#include <stdio.h>
#include <string.h>
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
// Dialog Data
//{{AFX_DATA(CAboutDlg)
enum { IDD = IDD_ABOUTBOX };
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAboutDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); //
DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
//{{AFX_MSG(CAboutDlg)
//}}AFX_MSG
67

DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
//{{AFX_DATA_INIT(CAboutDlg)
//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)


{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAboutDlg)
//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CTA_taz02Dlg dialog

CTA_taz02Dlg::CTA_taz02Dlg(CWnd* pParent /*=NULL*/)


: CDialog(CTA_taz02Dlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CTA_taz02Dlg)
// NOTE: the ClassWizard will add member
initialization here
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent
DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CTA_taz02Dlg::DoDataExchange(CDataExchange* pDX)


{
CDialog::DoDataExchange(pDX);
68

//{{AFX_DATA_MAP(CTA_taz02Dlg)
// NOTE: the ClassWizard will add DDX and DDV
calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CTA_taz02Dlg, CDialog)
//{{AFX_MSG_MAP(CTA_taz02Dlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON1, OnStart)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTA_taz02Dlg message handlers

BOOL CTA_taz02Dlg::OnInitDialog()
{
CDialog::OnInitDialog();

// Add "About..." menu item to system menu.

// IDM_ABOUTBOX must be in the system command range.


ASSERT((IDM_ABOUTBOX & 0xFFF0) ==
IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);

CMenu* pSysMenu = GetSystemMenu(FALSE);


if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING,
IDM_ABOUTBOX, strAboutMenu);
}
}
69

// Set the icon for this dialog. The framework does this
automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon

// TODO: Add extra initialization here


return TRUE; // return TRUE unless you set the focus to a
control
}

void CTA_taz02Dlg::OnSysCommand(UINT nID, LPARAM lParam)


{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
// If you add a minimize button to your dialog, you will need the code
below
// to draw the icon. For MFC applications using the document/view
model,
// this is automatically done for you by the framework.

void CTA_taz02Dlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND,
(WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle


int cxIcon = GetSystemMetrics(SM_CXICON);
70

int cyIcon = GetSystemMetrics(SM_CYICON);


CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon


dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}

// The system calls this to obtain the cursor to display while the user
drags
// the minimized window.
HCURSOR CTA_taz02Dlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}

void CTA_taz02Dlg::OnStart()
{
int chdev;
char number[4];
do
{
// buka kanal B1C1
if((chdev = dx_open("dxxxB1C1",NULL))==-1)
{
MessageBox("Error open channel");
exit(1);
}
SetDlgItemText(IDC_CHANNEL1,"Open channel success");

// Set on hook
if(dx_sethook(chdev,DX_ONHOOK,EV_SYNC)==-1)
{
71

MessageBox("Error on hook");
exit(1);
}
SetDlgItemText(IDC_HOOK1,"On hook success");

// Wait ring tone


if(dx_wtring(chdev,2,DX_OFFHOOK,-1)==-1){
MessageBox("Error off hook");
exit(2);
}
playSuara(chdev,"hello.WAV");
menu(chdev,number);
}
while(1);
}

char CTA_taz02Dlg::getDigit(int chdev,char digit[10],int x)


{
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;

// deteksi digit yang ditekan


if((numdigs=dx_getdig(chdev,tpt,&digp,EV_SYNC))==-1)
72

{
MessageBox("Error get digit");
exit(4);
}
SetDlgItemText(IDC_DIGIT2,"Get digit success");

for(cnt=0;cnt<numdigs;cnt++){
digit[cnt]=digp.dg_value[cnt];
}
return(digp.dg_value[0]);
}

void CTA_taz02Dlg::playSuara(int chdev, char suara[10])


{
int fd;
DX_IOTT iott; // I/O transfer table
DV_TPT tpt; // termination parameter table
DX_XPB xpb; // I/O transfer parameter block

if ((fd = dx_fileopen(suara,O_RDONLY|O_BINARY)) == -1){


MessageBox("Error Open File");
exit(1);
}

// Set to terminate play on 1 digit


tpt.tp_type = IO_EOT;
tpt.tp_termno = DX_MAXDTMF;
tpt.tp_length = 1;
tpt.tp_flags = TF_MAXDTMF;

// Set up DX_IOTT
iott.io_fhandle = fd;
iott.io_bufp = 0;
iott.io_offset = 0;
iott.io_length = -1;
iott.io_type = IO_DEV | IO_EOT;
73

// Specify VOX file format for ADPCM at 8KHz


xpb.wFileFormat = FILE_FORMAT_WAVE;
xpb.wDataFormat = DATA_FORMAT_DIALOGIC_ADPCM;
xpb.nSamplesPerSec = DRT_8KHZ;
xpb.wBitsPerSample = 4;

// Start playback
if (dx_playiottdata(chdev,&iott,&tpt,&xpb,EV_SYNC)==-1) {
printf("Error playing");
exit(1);
}
}

void CTA_taz02Dlg::dial(int chdev, char number[4])


{
int cares;
DX_CAP capp;
if((chdev = dx_open("dxxxB1C2",NULL))==-1)
{
MessageBox("Error open channel");
exit(1);
}
if ((dx_sethook(chdev,DX_OFFHOOK,EV_SYNC)) == -1)
{
MessageBox("set off hook error");
}

dx_clrcap(&capp);
capp.ca_nbrdna = 5;

if ((cares =
dx_dial(chdev,number,&capp,DX_CALLP|EV_SYNC)) == -1)
{
MessageBox("error on dial");
}
switch (cares)
{
case CR_BUSY:
MessageBox("nomor tujuan sedang sibuk");
74

SetDlgItemText(IDC_STATUS1,"Nomor
sibuk");
//playSuara(chdev,"sibuk.WAV");
break;
case CR_NOANS:
MessageBox("tidak ada jawaban");
SetDlgItemText(IDC_STATUS1,"tidak ada
jawaban");
//playSuara(chdev,"noAnswer.WAV");
break;
case CR_CNCT: // Call Connected, get some
additional info
//MessageBox("panggilan berhasil");
SetDlgItemText(IDC_STATUS1,"panggilan
berhasil");
playSuara(chdev,"MESSAGE.WAV");
break;
}
if((dx_sethook (chdev, DX_ONHOOK,
EV_SYNC))==-1)
{
MessageBox("set on hook error");
}
}

void CTA_taz02Dlg::keluar(int chdev)


{
playSuara(chdev,"keluar.WAV");
}

void CTA_taz02Dlg::menu(int chdev, char number[4])


{
int data;
char digit[10],suara[10];
awal:
playSuara(chdev,"utama.WAV");
SetDlgItemText(IDC_HOOK1,"Off hook success");
number[0]=getDigit(chdev,digit,1);
number[1]=getDigit(chdev,digit,1);
number[2]=getDigit(chdev,digit,1);
75

number[3]=getDigit(chdev,digit,1);
number[4]='\0';
SetDlgItemText(IDC_DIGIT1,number);

//MessageBox(number,"nomor yang anda tekan adalah");


data=atoi(number);
if((data==1504)||(data==1503))//(data==100)||(data==200)||(dat
a==202)||(data==204))
{
rekam(chdev,suara);
//MessageBox("rekaman berhasil");
dial(chdev,number);
//playSuara(chdev,"loop.WAV");
//ulang(chdev,number);
}
else
{
playSuara(chdev,"salah.WAV");
goto awal;
}
}

void CTA_taz02Dlg::rekam(int chdev, char suara[10])


{
/* channel descriptor */
int fd; /* file descriptor for file to be played */
DX_IOTT iott; /* I/O transfer table */
DV_TPT tpt; /* termination parameter table */
DX_XPB xpb; /* I/O transfer parameter block */

/* Set to terminate play on 1 digit */


tpt.tp_type = IO_EOT;
tpt.tp_termno = DX_MAXDTMF;
tpt.tp_length = 1;
tpt.tp_flags = TF_MAXDTMF;
/* Open file */
if ((fd =
dx_fileopen("MESSAGE.WAV",O_RDWR|O_BINARY)) == -1)
{
76

MessageBox("File open error");


exit(2);
}
/* Set up DX_IOTT */
iott.io_fhandle = fd;
iott.io_bufp = 0;
iott.io_offset = 0;
iott.io_length = -1;
iott.io_type = IO_DEV | IO_EOT;
/*
*Specify WAVE file format for PCM at 8KHz.
*/
xpb.wFileFormat = FILE_FORMAT_WAVE;
xpb.wDataFormat = DATA_FORMAT_PCM;
xpb.nSamplesPerSec = DRT_8KHZ;
xpb.wBitsPerSample = 8;

/* Play intro message */


playSuara(chdev,"menuRekam.WAV");

/* Start recording */
if
(dx_reciottdata(chdev,&iott,&tpt,&xpb,PM_TONE|EV_SYNC) == -1)
{
MessageBox("Error recording file");
exit(4);
}
}

A.2 Header File


// TA_taz02Dlg.h : header file
//
#if
!defined(AFX_TA_TAZ02DLG_H__760869F4_85E4_4459_8CB0_65
BE06E884BB__INCLUDED_)
#define
AFX_TA_TAZ02DLG_H__760869F4_85E4_4459_8CB0_65BE06E88
4BB__INCLUDED_

#if _MSC_VER > 1000


77

#pragma once
#endif // _MSC_VER > 1000

/////////////////////////////////////////////////////////////////////////////
// CTA_taz02Dlg dialog

class CTA_taz02Dlg : public CDialog


{
// Construction
public:
void rekam(int chdev, char suara[10]);
void menu(int chdev,char number[1]);
void keluar(int chdev);
void dial(int chdev, char number[4]);
void playSuara(int chdev, char suara[10]);
char getDigit(int chdev,char digit[10],int x);
CTA_taz02Dlg(CWnd* pParent = NULL); // standard
constructor

// Dialog Data
//{{AFX_DATA(CTA_taz02Dlg)
enum { IDD = IDD_TA_TAZ02_DIALOG };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA

// ClassWizard generated virtual function overrides


//{{AFX_VIRTUAL(CTA_taz02Dlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX);
// DDX/DDV support
//}}AFX_VIRTUAL

// Implementation
protected:
HICON m_hIcon;

// Generated message map functions


//{{AFX_MSG(CTA_taz02Dlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
78

afx_msg void OnPaint();


afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnStart();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately
before the previous line.

#endif //
!defined(AFX_TA_TAZ02DLG_H__760869F4_85E4_4459_8CB0_65
BE06E884BB__INCLUDED_)
...::: BIODATA :::..

Nama : Sexti Erianto


Tempat tanggal lahir : Surabaya, 14 Mei 1984
Orang Tua : Suryadi
Alamat : Jl. Brigjen Katamso I/70B Waru SDA
Telepon : (031) 8539003
: (031) 60259003
Hobi : Baca komik dan nge-game.
Motto : “Tidak ada kata terlambat untuk belajar”.
: “Slowly but surely”.

Riwayat Pendidikan formal:


- MINU Waru Sidoarjo, tahun 1990 - 1996
- MTs Darul Ulum Waru Sidoarjo, tahun
1996-1999
- SMK YPM I Taman Sidoarjo, tahun
1999-2002
- Politeknik Elektronika Negeri Surabaya-
ITS, tahun 2003-2006

Anda mungkin juga menyukai