Pengembangan Video VoIP Phone Berbasis Web Menggunakan Protokol RTMP Pujianto, Muchammad Husni, Baskoro Adi Pratomo Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember 1
[email protected] 2
[email protected] [email protected]
3
teknologi web lain yang terus berkembang, antara lain: map (Google Map dan Bing Maps), dokumen editor (Google Docs), video dan audio streaming (YouTube, Vimeo, Last.fm, dan lain-lain), pengalih bahasa (Google Translate), dan sebagainya. Perkembangan tersebut tentunya bertujuan untuk semakin memudahkan pengguna internet dalam melakukan aktivitasnya. Perkembangan ini seakan semakin mengurangi penggunaan aplikasi desktop. Arah perkembangan teknologi dapat terlihat ke arah aplikasi berbasis web yang fungsionalitasnya telah mewakili beberapa aplikasi desktop. Internet juga menjadi media komunikasi yang banyak digunakan. Salah satunya adalah video call atau disebut juga Video VoIP (Voice over Internet Protocol) Phone. Teknologi ini semakin banyak digunakan oleh beberapa aplikasi messenger seperti Yahoo Messenger, Google Talk, Skype, dan lain sebagainya. Dengan melihat perkembangan teknologi yang bergerak ke arah teknologi website, maka penulis mengusulkan sebuah aplikasi video call berbasis web yang merupakan pengembangan dari Tugas Akhir sebelumnya yaitu audio call berbasis web. Agar lebih interaktif, aplikasi ini dikembangkan dengan Adobe Flex yang mendukung teknologi RIA (Rich Internet Application). Dengan memanfaatkan media web diharapkan agar aplikasi ini dapat lebih memiliki portabilitas yang tinggi atau hanya memerlukan peramban dengan plugin flash player untuk menjalankannya.
ABSTRAKS Perkembangan teknologi internet tidak hanya sebagai media informasi, namun juga sebagai media komunikasi yang banyak digunakan. Salah satunya adalah video call berbasis VoIP (Voice over Internet Protocol), teknologi ini telah digunakan oleh beberapa penyedia layanan messenger, seperti yahoo messenger, skype, dan lainnya. Rich Internet Application (RIA) menjadi trend perkembangan teknologi web saat ini. Dengan teknologi tersebut, aplikasi web didesain dengan pendekatan aplikasi desktop, mengedepankan kecepatan akses, user friendly, dan keinteraktifan. Sehingga, membawa teknologi komunikasi VoIP ke teknologi RIA akan semakin memudahkan pengguna. Atas dasar itu, dibuatlah aplikasi Video VoIP Phone berbasis web. Pengguna dapat berkomunikasi suara dan video tanpa perlu instalasi aplikasi, tapi cukup dengan aplikasi perambah laman. Untuk mengetahui kemampuan dari sistem ini dilakukan tiga pengujian. Pengujian pertama adalah untuk mengetahui tingkat QoS (Quality of Service) dari perangkat lunak dan yang kedua adalah survei untuk mengetahui nilai MOS (Mean Opinion Score) dari perangkat lunak. Survei menghasilkan keluaran bahwa perangkat lunak memiliki skor 4 dari nilai maksimal 4.4 untuk codec G.711. Pengujian ketiga adalah pengujian kompatibilitas sistem terhadap perangkat-perangkat softphone yang lain. Kata Kunci: Video VoIP Phone, Web, Flex, SIP, RTMP 2. 1.
PENDAHULUAN Saat ini teknologi informasi dan komunikasi berkembang dengan pesat, terutama pada perkembangan teknologi internet. Adanya perkembangan pada sisi itu menyebabkan adanya perubahan perilaku dan aktivitas masyarakat dalam berkomunikasi dan bersosialisasi dengan dunia luar. Perubahan tersebut dapat terlihat pada saat seseorang mencari solusi dari suatu masalah, internet dengan kemudahannya menjadi pilihan pertama saat ini. Begitu pula dalam bersosialisasi, jejaring sosial menjadi media yang hampir dimiliki oleh semua elemen masyarakat. Teknologi internet tidak hanya berkutat pada mesin pencarian dan jejaring sosial saja, tetapi banyak
1
DASAR TEORI A. Voice over Internet Protocol (VoIP) VoIP atau yang juga disebut dengan IP Telephony System melakukan transmisi suara sebagai paket data melalui private atau public internet protocol (IP). VoIP menjadi alternatif lain dari layanan telepon yang telah umum digunakan yaitu yang menggunakan jaringan PSTN. Evolusi layanan pengiriman suara dari PSTN ke VoIP dikarenakan kemampuan dari jaringan IP yang dapat mengirim bit data dengan lebih efektif baik dari segi biaya maupun performa. VoIP yang menggunakan paket-switcing protocol memungkinkan berjalan di berbagai jenis jaringan, seperti jaringan public, private, kabel, bahkan wireless.
c. VoIP Registrar or Gatekeeper
PSTN
Telephone OFFICE Telephone
IP PBX
d.
G roup
PSTN Gateway
INTERNET Laptop
User
D. Red5 Flash Media Server
PC
User
User
IP Phone
Red5 merupakan server open source yang dikembangkan pada lingkungan bahasa Java, digunakan untuk terintegrasi dengan Adobe Flash player. Secara lebih detail, Red5 mendukung protokol TCP socket-based RTMP dan HTTP-based remoting, memiliki kemampuan untuk streaming audio dan video, baik live broadcast secara realtime ataupun on demand. Red5 dapat digunakan untuk membuat berbagai macam aplikasi client-server. Aplikasi chating, audio dan video conference, permainan multiplayer, dan sebagainya. Sebagai server, Red5 berfungsi secara efektif mampu menghubungkan dengan external database baik dengan Flash Remoting ataupun RTMP.
VoIP Service Server
Contoh Arsitektur Jaringan VoIP
B. Session Initiation Protocol (SIP) SIP merupakan protokol yang didesain untuk dapat melakukan pembangunan sesi antar dua titik (user agent) sehingga kedua titik dapat berbagi resource. SIP yang merupakan protokol pada layer aplikasi dapat digunakan bersama dengan proxy server. SIP dapat menangani registrasi user, undangan sesi, dan permintaan lainnya yang bertujuan untuk membangun, memodifikasi, atau menutup sesi[3]. SIP bukanlah media transfer protocol, tapi signaling protocol. Sehingga paket voice dan video tidak dibawa oleh protokol ini, SIP hanya melakukan signaling. RTMP (Real Time Messaging Protocol) yang digunakan sebagai media transfer protocol, dan bersama SIP membentuk komunikasi VoIP. Tugas akhir ini menggunakan aplikasi open source Asterisk sebagai server SIP. Dalam rangka membangun dan menutup sesi komunikasi multimedia, SIP mendukung 5 aspek berikut : a. Lokasi user : Penentuan sistem yang digunakan untuk komunikasi b. Ketersediaan user : Penentuan kesediaan dari pihak yang dipanggil untuk berkomunikasi c. Kemampuan user : Penentuan media dan parameter yang digunakan d. Pembangunan sesi : “Ringing”, atau pembentukan parameter sesi baik pada pihak yang dipanggil maupun yang memanggil. e. Manajemen sesi : berupa transfer dan penutupan sesi, modifikasi, dan penggunaan service.
E. MjSIP MjSIP merupakan API (Application Programming Interface) beserta implementasinya untuk pembuatan aplikasi berbasis SIP (Session Initiation Protocol). MjSIP tersedia secara open source dibawah lisensi GNU GPL yang dipublikasikan oleh Free Software Foundation. F. Rich Internet Application (RIA) Perkembangan teknologi website dari semakin mengarah ke pendekatan aplikasi desktop, mengedepankan kecepatan akses, user friendly, kemudahan pemakaian, dan interaksi real-time. Dalam perkembangannya konsep website tersebut dinamakan RIA (Rich Internet Application). RIA juga biasa disebut dengan aplikasi HTML yang state-less. Hal itu dikarenakan konsep RIA memanfaatkan cookies dan session dalam mengatur state aplikasi, sementara logika aplikasi terdapat pada sisi server. Sehingga semua proses logika aplikasi tidak terlihat user secara langsung atau berjalan pada background sebagaimana javascript. RIA menggabungkan fungsionalitas user interface dari aplikasi desktop pada aplikasi web dan memanfaatkan teknologi komunikasi untuk keinteraktifannya. Sehingga aplikasi dengan konsep RIA memberikan pengalaman responsif, efektif, dan intuitif kepada user. Gambar berikut menjelaskan secara visual konsep RIA.
C. Real Time Messaging Protokol (RTMP) RTMP merupakan protokol berbasis TCP yang dikembangkan oleh Macromedia (sekarang dimiliki oleh Adobe) untuk kepentingan streaming suara, video, dan data lewat internet, antara flash player dengan server. Protokol ini memiliki beberapa variasi, yaitu : a. b.
RTMPE (RTMP Encrypted) yaitu RTMP yang dienkripsi menggunakan mekanisme keamanan milik Adobe. RTMPT (RTMP Tunneled), dienkapsulasi dalam HTTP request untuk melewati firewall. Sesi yang dienkapsulasi bisa membawa paket RTMP, RTMPS, maupun RTMPE.
Protokol RTMP yang asli, bekerja di atas TCP dan secara default menggunakan port 1935. RTMPS (RTMP Secured) yaitu RTMP lewat koneksi SSL yang aman menggunakan HTTPS.
2
Aliran Proses Compiling Flex Umumnya Flex digunakan untuk membangun aplikasi dengan arsitektur client-server, pada sisi server teknologi yang biasa digunakan adalah Java. Flex berjalan pada flash player, sehingga batasannya tergantung pada batasan flash player itu sendiri, seperti : • Flex popup window dibatasi oleh dimensi dari flash player yang dibuat, tidak dapat penuh sebagaimana popup browser. • Drag and Drop file dari desktop ke player tidak dapat dilakukan • Walaupun format SWF file telah dirilis spesifikasinya, dimana dapat dikembangkan aplikasinya secara open source, namun kedepan masih terlihat kalau perkembangannya hanya dilakukan oleh Adobe. • Inisialisasi load pada awal aplikasi dijalankan yang memakan waktu lebih lama dari laman web HMTL.
Ilustrasi Konsep RIA Berbagai keuntungan pengembangan web dengan konsep RIA dapat didapatkan, antara lain : 1. 2.
3. 4.
5.
Aplikasi mampu memperoleh otorisasi user siapapun, dimanapun, dan pada device apapun Mendukung trend aplikasi web saat ini yang mengedepankan kemudahan, keterbukaan, integrasi, dan kecepatan. Mayoritas pengembangan aplikasi dengan konsep ini menggunakan bahasa XML dan sejenisnya. Kemudahan pengembangan karena mayoritas framework menggunakan sistem auto-generation code pada beberapa aspek. Mendukung berbagai aspek multimedia, seperti berbagai jenis font, vektor, bitmap, animasi, conference, audio, video dan streaming.
3. Desain dan Implementasi Pada proses pembuatan perangkat lunak, akan dilakukan desain sesuai dengan fungsionalitas-fungsionalitas sistem. Adapun fungsionalitas-fungsionalitas sistem adalah registrasi user, login user, melakukan panggilan, serta menjawab panggilan.
G. Flex Flex merupakan framework yang menggabungkan bahasa MXML dan Actionscript yang di-compile dalam aplikasi Flash dengan format file .swf atau SWF Files, yang kemudian di-render pada Flash player yang di-embed pada web. Pada Flex, MXML (Multimedia eXtensible Markup Language) merupakan bahasa pemrograman berbasis XML yang digunakan untuk layout user interface. Secara teknis, SWF file di masukkan ke dalam HTML dengan tag <embed>. Flex Builder secara otomatis men-generate code HTML ketika project di compile. Gambar berikut menggambarkan proses compiling flex.
3.1. Desain Program 3.1.1. Desain Proses Registrasi User Proses registrasi user ini untuk mendapatkan autentikasi ke SIP proxy server, berupa Asterisk, yang dilakukan pada media web client berbasis flash. Registrasi dilakukan dengan memasukkan informasi username dan password, yang kemudian sistem akan memberikan nomor telepon baru kepada user tersebut. Pembangkitan nomor telepon oleh sistem dilakukan dengan melakukan increment dari nomor telepon terakhir yang terdaftar dan tersimpan pada file penyimpanan di server. Registrasi kemudian dilanjutkan dengan mendaftarkan informasi user pada Asterisk dengan menuliskan informasi registrasi yaitu nomor dan password pada file sip.conf dan extensions.conf. Selain nomor dan password, pada file sip.conf juga dituliskan username agar ketika user online, user lain tidak hanya melihat nomor telepon user yang sedang online, namun juga bisa melihat
3
usernamenya. Kemudian aplikasi server akan mengirimkan perintah reload ke Asterisk untuk memulai ulang Asterisk setelah terjadi perubahan pada file konfigurasi. Sebagai notifikasi kepada user mengenai profilnya, informasi tadi dikirim kembali ke client dan ditampilkan berupa popup notifikasi. Detail alur proses registrasi ada pada gambar berikut ini.
Mulai
Selesai
Input username dan password
Notifikasi parameter untuk login ke user
Kirim hasil inputan ke Red5 server via NetConnection
Kirim parameter registrasi kembali ke client via RTMPConnection.Invoke()
Baca nomor terakhir yang terdaftar di phone.txt
Reload Asterisk via Runtime.Exec()
Buat nomor telepon (increment)
Tulis konfigurasi sip.conf dan extension.conf Asterisk dan nomor telepon yang baru ke phone.txt
menentukan publishName dan playName yang dikirim dan diterima oleh user yang login lewat web. Detail alur proses login ada pada gambar berikut.
Diagram Flowchart Proses Registrasi User
3.1.2. Desain Proses Login User Proses login dilakukan untuk dapat melakukan panggilan. Proses login ini sama halnya proses login pada SIP proxy server atau Asterisk. Parameter yang diperlukan antara lain: nomor telepon, password, alamat IP server Asterisk, dan URL RTMP. Login aplikasi dapat dilakukan oleh user yang telah teregistrasi sebelumnya pada SIP proxy server, dalam hal ini Asterisk. Setelah parameter login selesai diinputkan oleh pengguna, data disampaikan ke server melalui media Remote SharedObject. Kemudian server melakukan request autentikasi ke Asterisk dengan parameter login yang ada. Feedback server, berupa pesan sukses atau gagal, akan dikirimkan ke client dengan mengupdate SharedObject. Remote Shared Object dari server akan dikenali oleh client. Pada client, pesan kembalian tersebut akan ditangani oleh class Red5MessageEventListener yang akan membangkitkan pesan peringatan bahwa login berhasil. Kemudian dengan event tersebut, perangkat lunak akan menyembunyikan panel login dan menampilkan panel telepon.
Gambar 3.4 Diagram Flowchart Login
3.1.3. Desain Proses Call dan Answer Audio dan/Atau Video Proses melakukan dan menerima panggilan dilakukan pengguna yang telah dalam kondisi teregistrasi dan login pada aplikasi (online). Untuk memulai panggilan, pertama kali yang dilakukan pengguna adalah mengetikan nomor tujuan pengguna lain yang sedang dalam kondisi online. Kemudian ketika tombol Call ditekan, dengan NetConnection, client akan memanggil fungsi call dengan parameter nomor tujuan ke server. Server akan memberi callback ke client tujuan dan menampilkan fungsi answer atau terima panggilan. Client kembali mengirim request ke server via NetConnection untuk fungsi answer agar koneksi dimulai. Gambar berikut menggambarkan alur proses fungsi call dan answer.
Kemudian dilanjutkan dengan menuliskan nomor yang telah login tersebut ke file Login.txt. File Login.txt ini digunakan untuk membedakan nomor-nomor yang login ke Asterisk lewat web dengan nomor-nomor yang login ke Asterisk dengan cara lain, misalnya lewat aplikasi SIPDroid, X-Lite atau IP-Phone. Pembedaan ini digunakan untuk
4
Antarmuka Halaman Registrasi Setelah mengisi form registrasi, perangkat lunak akan membangkitkan nomor telepon untuk pengguna dan akan ditampilkan berupa pop up notifikasi. Diagram Flowchart Proses Call
Event panggilan diterima
Answer
Salah
Hangup / panggil fungsi hangup MjSIP Server
Selesai
Antarmuka Pop Up Notifikasi
Benar Fitur video diaktifkan
3.2.2.
Salah
Pada antarmuka ini pengguna dihadapkan pada form login ke perangkat lunak. Dengan memasukkan nomor telepon dan password yang didapatkan dari proses registrasi sebelumnya. Parameter login terdiri dari data user (nomor dan password), alamat IP Asterisk dan alamat URL RTMP (Red5 Server). Jika pengguna baru pertama kali membuka aplikasi ini, dengan kata lain, dia belum memiliki akun, disediakan tombol untuk menuju form registrasi. Berikut merupakan gambar antarmuka halaman login.
Benar
startStream / komunikasi audio dan video berjalan
startStream / komunikasi audio berjalan
Selesai
Selesai
Implementasi Login User
Diagram Flowchart Proses Answer
3.2. Implementasi Program Berikut adalah gambaran implementasi dari desain yang telah dijelaskan sebelumnya : 3.2.1
Implementasi Regitrasi User
Pada antarmuka ini pengguna melakukan registrasi ke SIP Proxy Server, Asterisk. Pengguna mengisi form registrasi dengan memasukkan username dan password. Dengan menekan tombol Register proses registrasi dijalankan. Berikut merupakan gambaran antarmuka registrasi .
Antarmuka halaman login
5
Uji coba dilakukan dengan pengisian form registrasi dengan inputan username dan password. Gambar berikut merupakan screenshot dari pengisian form registrasi.
3.2.3. Implementasi Call dan Answer Pada antarmuka ini pengguna dihadapkan pada halaman telepon yang berupa tombol 0-9, call, answer, hangup dan clear. Call untuk melakukan panggilan, answer untuk menerima panggilan, hangup untuk membatalkan/memutus panggilan, dan clear untuk menghapus text input nomor telepon. Di bagian kanan terdapat daftar pengguna yang online atau siap menerima panggilan. Di bagian bawah terdapat tampilan webcam kita dan tampilan webcam user yang berkomunikasi dengan kita. Berikut merupakan gambaran antarmuka halaman telepon.
Tampilan pengisian form registrasi pengguna Server akan mencatat username dan password yang dimasukan pengguna, kemudian mengirimkan pemberitahuan bahwa proses registrasi telah berhasil dengan mengirimkan nomor pengguna. Nomor dan password nantinya digunakan sebagai inputan untuk login Gambar berikut merupakan tampilan setelah registrasi berhasil dilakukan. Antarmuka halaman telepon
4. Skenario Pengujian Perangkat Lunak Untuk menguji kemampuan dari aplikasi ini, dilakukan serangkaian uji coba. Uji coba dibagi menjadi tiga bagian. - Uji coba fungsionalitas. Uji coba ini dilakukan untuk mengetahui fungsionalitas perangkat lunak yang dibuat. Uji coba ini dilakukan dengan cara menjalankan aplikasi dan menguji fitur-fitur yang ada didalamnya. - Uji coba performa perangkat lunak. Uji coba ini dilakukan untuk mengetahui kualitas suara dan video yang diterima user. Selain itu juga diukur delay, jitter, paket yang hilang (loss packet), dan bandwidth yang digunakan. - Uji coba kompatibilitas perangkat lunak dengan perangkat yang lain. Pada ujicoba ini akan dilakukan pengujian apakah aplikasi web ini bisa berkomunikasi dengan perangkatperangkat yang lain. Perangkat-perangkat yang digunakan adalah aplikasi SIPDroid (berbasis Android) serta X-Lite
Tampilan pop up notifikasi login pengguna 2) Uji Coba Login Gambar 5.3 merupakan screenshot pengisian form login oleh pengguna dengan parameter nomor dan password.
5. Hasil dan Pembahasan 5.1. Uji Coba Fungsionalitas 1) Uji Coba Registrasi User
6
Tampilan pengisian form login Kemudian ketika tombol Sign In ditekan akan muncul notifikasi yang menunjukkan login berhasil dan akan langsung redirect ke halaman telepon. Tampilan ketika panggilan telah diterima 5.2. Uji Coba Performa 5.2.1 Uji Coba QoS (Quality of Service) Pada uji coba kali ini akan diukur delay, jitter, bandwidth, dan paket yang hilang. Lingkungan uji coba adalah sebagai berikut : • Lokasi : Laboratorium NCC, T.Informatika ITS, Surabaya • Server : komputer dengan processor Intel Core2Duo
[email protected] dan RAM 2 GB • Arsitektur jaringan Arsitektur jaringan yang digunakan untuk uji coba Quality of Service bisa dilihat pada gambar berikut.
Tampilan notifikasi login sukses
3) Uji Coba Melakukan dan Menerima Panggilan Pada uji coba ini dibutuhkan dua pengguna yang sedang online, contoh pengguna dengan nomor 2276 (dengan username Pujianto) dan 2277 (dengan username Beggy). Misalkan pengguna 2276 (Pujianto) melakukan panggilan ke pengguna 2277 (Beggy). Ketika panggilan diterima, maka tampilan antarmuka pada pengguna 2276 akan tampak seperti berikut.
Arsitektur Jaringan yang Digunakan untuk Uji Coba QoS Uji coba dilakukan untuk 2 kasus yaitu 2 client berada pada subnet yang sama dan 2 client berada pada subnet yang berbeda. Berdasarkan proses capture paket yang dilakukan dengan menggunakan Wireshark, diperoleh hasil sebagai berikut. a) Subnet Sama Delay Delay dihitung dari selisih waktu ketika suatu paket dikirim sampai dengan paket tersebut diterima oleh pengguna yang lain, didapatkan rata-rata delay sebesar 0.151 milisecond.
7
perangkat yang lain. Perangkat-perangkat yang digunakan adalah aplikasi SIPDroid yang ada di handphone berbasis Android, X-Lite, dan IP-Phone. Hasil pengujian bisa dilihat di table berikut.
Jitter Jitter dihitung dari selisih antar delay yang didapat. Rata-rata selisih delay sebesar 0.002 milisecond. Bandwidth Bandwidth dihitung dari jumlah paket dirata-rata dalam second. Sehingga didapatkan rata-rata bandwidth sebesar 680570.1 bits/second. Paket yang hilang Tidak ada paket yang hilang. Paket yang hilang hanya terlihat ketika proses capture dihentikan. b) Subnet Berbeda Delay Didapatkan rata-rata delay sebesar 12.468 milisecond. Jitter Rata-rata selisih delay sebesar 2.689 milisecond. Bandwidth Didapatkan rata-rata bandwidth sebesar 703183.4 bits/second. Paket yang hilang Paket yang hilang. Paket yang hilang hanya terlihat ketika proses capture dihentikan. -
Hasil Pengujian dengan Perangkat Lain Video VoIP Phone Web Audio Video
Video VoIP Phone Web Keterangan :
SIPDroid
X-Lite
Audio
Video
Audio
Video
X
X
= komunikasi bisa dilakukan 2 arah X = komunikasi tidak bisa dilakukan Dari hasil pengujian tersebut terlihat bahwa komunikasi audio dan video bisa dilakukan sesama aplikasi Video VoIP Phone. Selain itu aplikasi Video VoIP Phone juga bisa berkomunikasi secara audio dengan SIPDroid dan X-Lite.
5.2.2. Uji Coba Kualitas Suara dan Video Kualitas suara dan video ditentukan secara subjektif oleh pengguna. Sehingga pada pengujian kali ini dilakukan survey terhadap beberapa pengguna. Kualitas suara bisa direpresentasikan dengan nilai MOS (Mean Opinion Score). Kriteria skor MOS didasarkan pada tabel berikut : Data MOS untuk Codec G.711 User Opinion R Factor MOS Score Maximum obtainable for G.711 93 4.4 Very satisfied 90-100 4.3-5.0 Satisfied 80-90 4.0-4.3 Some users satisfied 70-80 3.6-4.0 Many users dissatisfied 60-70 3.1-3.6 Nearly all users dissatisfied 50-60 2.6-3.1 Not recommended 0 - 50 1.0-2.6
6. Kesimpulan Beberapa hal yang bisa pelaksanaan Tugas Akhir ini adalah : 1.
2.
Dari hasil survei yang dilakukan didapatkan keluaran bahwa rata-rata nilai MOS untuk aplikasi ini sebesar 4. Ini berarti pengguna puas dengan kualitas suara. Akan tetapi masih tidak sempurna atau masih ada noise yang masih dapat ditoleransi.
3.
Sedangkan untuk kualitas video, rata-rata pengguna mengatakan kualitas video sudah cukup bagus untuk video call. Namun masih belum sempurna atau masih ada kotakkotak yang masih bisa ditoleransi.
4.
5.3. Uji Coba Kompatibilitas dengan Perangkat Lain Pada ujicoba ini akan dilakukan pengujian apakah aplikasi web ini bisa berkomunikasi dengan perangkat-
8
disimpulkan
dari
Aplikasi Video VoIP Phone yang mampu melakukan fungsi komunikasi audio maupun video, fungsi registrasi user SIP, dan fungsi melihat user online berhasil diimplementasikan dengan teknologi Adobe Flex, MjSIP Stack Library, Red5 Media Server, dan Asterisk SIP Proxy Server. Pengujian perangkat lunak untuk mengukur QoS (Quality of Service) yang dilakukan dengan aplikasi Wireshark didapatkan bahwa untuk komunikasi client dalam satu subnet rata-rata delay sebesar 0.151 milisecond, rata-rata jitter sebesar 0.002 milisecond, dan rata-rata bandwidth sebesar 680570.1 bits/second. Sedangkan untuk komunikasi client dalam subnet yang berbeda, rata-rata delay sebesar 12.468 miliseconds, ratarata jitter sebesar 2.689 milisecond, dan rata-rata bandwidth sebesar 703183.4 bits/second. Dari hasil survei untuk mengukur kualitas suara dan video , didapatkan skor MOS (Mean Opinion Score) 4 untuk kualitas suara. Sehingga perangkat lunak memiliki skor 4 dari nilai maksimal 4.4 untuk Codec G.711. Dari hasil pengujian dengan perangkat yang lain, didapatkan kesimpulan bahwa aplikasi Video VoIP Phone bisa berkomunikasi audio 2 arah dengan SIPDroid dan X-Lite.
7. Daftar Pustaka [1] Aksara, Frenda Rangga.2011.Pengembangan VoIP Phone Berbasis Web.Institut Teknologi Sepuluh Nopember, Surabaya. [2] Wallingford, Ted.2005.Switching to VoIP. O’Reilly. Gravenstein Highway North, Sebastopol. [3] Rosenberg,dkk.2002.RFC3261 SIP (Session Initiation Protocol).http://www.ietf.org/rfc/rfc3261.txt diakses terakhir pada 28 Desember 2011 pukul 11.09 WIB. [4] Unuth, Nadeem. Quality of Service - QoS and VoIP. diakses http://voip.about.com/od/voipbasics/a/qos.htm terakhir pada 28 Desember 2011 pukul 11.16 WIB. [5] Leiden, Candace; Wilensky, Marshall.2009.TCP/IP For Dummies.Wiley Publishing.Indianapolis,Indiana. [6] Allen, Chris; Arnold, Wade; Balkan, Aral; Cannase, Nicolas dkk.2008. The Essential Guide to Open source Flash Development.OSFlash.org.New York. [7] Carpenter, Colman; Duffet, David; Middleton, Nik; Plain, Ian.2009.Asterisk 1.4 The Professional Guide.Packt Publishing.Birmingham. [8] Anonim.Chapter 1. Frequently Asked Questions. http://trac.red5.org/wiki/Documentation/UsersReferenceMan ual/GettingStarted/01-Frequently-Asked-Questions diakses terakhir pada 28 Desember 2011 pukul 13.12 WIB. [9] Veltri, Luca.2005.MjSIP Mini Tutorial.Roma [10] Surveyer, Jacques.2004.Overview – Rich Internet Application.http://theopensourcery.com/xmlria.htm diakses terakhir pada 28 Desember 2011 pukul 13.23 WIB [11] Ahmed, Tariq.2007. What Is Adobe/Macromedia Flex?. http://www.cflex.net/about_adobe_flex.cfm diakses terakhir pada 28 Desember 2011 pukul 13.25 WIB. [12] Anonim.The Client Server Architecture. http://www.webdevelopersnotes.com/basics/client_server_ar chitecture.php3 terakhir diakses pada 28 Desember 2011 pukul 13.28 WIB. [13] Anonim.NAT and VoIP. http://www.voip-info.org/wiki/view/NAT+and+VOIP diakses terakhir pada 19 Januari 2012 pukul 08.16 WIB. [14] Anonim.Xtunnels. http://www.voip-info.org/wiki/view/Xtunnels diakses terakhir pada 19 Januari 2012 pukul 08.30 WIB
9