Anda di halaman 1dari 16

LAPORAN

PEMROGRAMAN LANJUT
DOKUMENTASI API WebRTC (Real Time Connection) menggunakan
Bahasa Pemrograman Python

Disusun Untuk Memenuhi Tugas Mata Kuliah Pemrograman Lanjut

Dosen Pengampu :
Radzi Ratomi, S.Kom, M.Cs.

Disusun oleh :
Nuryasmin Syakila 140155201021
Ayu Sari Nurlatifah 140155201029
Sopiani 140155201052

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS MARITIM RAJA ALI HAJI
2017
I. Tujuan
1. Mampu menganalisis API dengan menggunakan bahasa pemrograman
Python
2. Mampu menampilkan hasil dari dokumentasi API WebRTC

II. Perlengkapan yang dibutuhkan


1. API WebRTC
2. Aplikasi Python 2.7
3. Mozilla Firefox
4. Xampp 3.2.2
5. Notepad ++

III. Dasar Teori


a. Python
Python adalah bahasa pemrograman interpretatif multiguna. Tidak seperti
bahasa lain yang susah untuk dibaca dan dipahami, python lebih menekankan
pada keterbacaan kode agar lebih mudah untuk memahami sintaks. Hal ini
membuat Python sangat mudah dipelajari baik untuk pemula maupun untuk
yang sudah menguasai bahasa pemrograman lain.
Bahasa ini muncul pertama kali pada tahun 1991, dirancang oleh seorang
bernama Guido van Rossum. Sampai saat ini Python masih dikembangkan
oleh Python Software Foundation. Bahasa Python mendukung hampir semua
sistem operasi, bahkan untuk sistem operasi Linux, hampir semua distronya
sudah menyertakan Python di dalamnya. Dengan kode yang simpel dan mudah
diimplementasikan, seorang programmer dapat lebih mengutamakan
pengembangan aplikasi yang dibuat, bukan malah sibuk mencari syntax error.
Python mendukung multi paradigma pemrograman, utamanya; namun
tidak dibatasi; pada pemrograman berorientasi objek, pemrograman imperatif,
dan pemrograman fungsional. Salah satu fitur yang tersedia pada python
adalah sebagai bahasa pemrograman dinamis yang dilengkapi dengan
manajemen memori otomatis. Seperti halnya pada bahasa pemrograman
dinamis lainnya, python umumnya digunakan sebagai bahasa skrip meski pada
praktiknya penggunaan bahasa ini lebih luas mencakup konteks pemanfaatan
yang umumnya tidak dilakukan dengan menggunakan bahasa skrip. Python
dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak
dan dapat berjalan di berbagai platform sistem operasi.
Saat ini kode python dapat dijalankan di berbagai platform sistem operasi,
beberapa di antaranya adalah:

 Linux/Unix
 Windows
 Mac OS X
 Java Virtual Machine
 OS/2
 Amiga
 Palm
 Symbian (untuk produk-produk Nokia)

b. PHP
PHP adalah bahasa pemograman web yang digunakan untuk membuat
halaman web dinamis (wikipedia). Walaupun pada perkembangannya, PHP
saat ini juga dapat digunakan untuk membuat aplikasi selain web, seperti
aplikasi desktop. PHP pertama kali di kembangkan pada tahun 1995 oleh
Rasmus Lerdorf, namun sekarang di ambil oleh oleh The PHP Group.
Pada awalny PHP adalah singkatan dari Personal Home Page, namun
dalam perkembangannya, di ubah menjadi PHP: Hypertext Preprocessor,
sebuah kepanjangan rekursif. PHP dirilis dalam lisensi PHP License, yang
sedikit berbeda dengan lisensi GNU General Public License (GPL) yang biasa
digunakan untuk proyek Open Source. Namun penggunaan PHP tetap tidak
dikenakan biaya (gratis). Kemudahan dan kepopuleran PHP sudah menjadi
standar bagi programmer web di seluruh dunia. Dan menurut wikipedia, PHP
telah terinstall pada lebih dari 244 juga website dan 2,1 web server hingga saat
ini.
IV. Konfigurasi di CMD
 Perintah cd

Perintah cd F: digunakan untuk menampilkan direktori atau berpindah ke


direktori yang lain, disini server pindah ke direktori F: . Perintah cd WebRTC
untuk masuk ke dalam folder WebRTC. Sedangkan perintah cd pywebsocket-
master digunakan untuk masuk ke folder pywebsocket-master.

 Perintah setup.py build

Perintah ‘py setup.py build’ dimana setup.py build untuk membangun buildnya
dulu, karna jika tidak dibuild maka ketika setupnya di install tidak terbaca
(tidak ditemukan).

 Perintah setup.py install

Perintah ‘py setup.py install’ untuk melakukan instalasi pada setupnya setelah
di build.
 Perintah py standalone.py –p 9090 –w ../example/

Perintah ini digunakan untuk memanggil file standalone didalam folder


mod_pywebsocket sesuai dengan portnya, setelah kita mengetikkan perintah
ini akan nada notif jika server dan client berhasil melakukan login. Disini kita
akan mendapatkan pesan berupa notif jika user ‘call’ atau ‘hangup’.

V. Hasil
1. Halaman login

Pada halaman ini server melakukan login dengan memasukkan username


secara acak (sesuai keinginan).
2. Tampilan setelah login

Setelah login akan muncul seperti ini, pilih izinkan untuk mengakses camera
dan microphone.

3. Tampilan awal server

Pada tampilan ini kita sudah masuk ke videochat.


4. Tampilan berhasil ‘Call’

Pada tampilan ini kita call client lain yang sudah berhasil masuk ke videochat
dengan memanggil username client tersebut. Tampilan diatas server sudah
terhubung ke client.

5. Tampilan awal client

Pada tampilan ini client sudah berhasil masuk ke videochat.


6. Tampilan berhasil di ‘Call’

Pada tampilan ini client dan server sudah terhubung.

7. Tampilan ‘Hangup’

Pada tampilan ini ketika client telah berhasil ‘hangup’ dari videochat.
VI. Sourcode
1. Client.js

 Detail method pada file client.js

Method ini digunakan untuk membuat koneksi dengan socket dari server, jadi
client disini dapat terhubung melalui ip dan port yang sama dengan server.
Intinya source code ini agar si client dapat terhubung ke server.

Source code diatas untuk mengaktifkan pesan dari server sehingga ketika client
sudah bisa masuk atau login maka akan ada notif di server kalau si client telah
sukses login.
Pada ‘case login’ berfungsi untuk client login ke dalam form yang dibuat
server. ‘case offer’ berfungsi untuk client meng-call server atau sebaliknya.
‘case answer’ berfungsi untuk menjawab panggilan dari client atau server.
‘case candidate’ berfungsi untuk menampilkan siapa saja user yang terhubung
dalam form. ‘case leave’ berfungsi untuk client atau server meninggalkan form
chat.

2. Server.js
Source code ini digunakan server untuk melakukan pemanggilan pada setiap
case.

3. index.html
Source code ini merupakan koding tampilan pada videochat.

4. standalone.py
 Detail method pada ‘class StandaloneConnection’

Pada ‘class_StandaloneConnection’ ini berfungsi untuk membuat koneksi. Jadi


client dapat terhubung ke server tanpa melakukan konfigurasi. Fungsi
‘def_init’ disini kita melakukan penginisialisasian data yang akan dipanggil di
get local address. Request handler berupa ip dan port server. Ipnya tergantung
kita koneksi jaringan kemana, kan kita baru buat koneksinya, jadi tergantung ip
yang ter-apply.

Fungsi ‘def_getlocaladdress’ yaitu untuk pemanggilan alamat localnya tadi,


ipserver dan port servernya.

Fungsi ‘def get_remote_addr’ untuk melakukan pengaturan pada data yang


sudah diinisialisasi di def init.

Fungsi ‘def write’ untuk melakukan penulisan data yang sudah diinisialisasi.
Fungsi ‘def read’ untuk membaca panjang request handler.

Fungsi ‘def get_memorized’ untuk penyimpanan datanya.

 Detail method pada ‘class StandaloneRequest’

Pada ‘class StandaloneRequest’ ini berfungsi untuk menampung data yang


sudah dibuat pada standalone connection agar dapat dikirim ke
SSLConnection.
Pada ‘def get uri’ ini berfungsi untuk melakukan pemanggilan data yang telah
dikembalikan direquest handler. Jadi perintah ini untuk merubah ekstensi file
yang awalnya menggunakan url (https) ke uri (jenis file) ex : index.html.

Fungsi ‘def get_unparsed_uri’ untuk pemanggilan data yang sudah


dikembalikan tadi agar datanya tidak pecah. Jadi disini tadi get uri kan sudah
merubah ke uri, lalu di get_unparsed_uri ini data tadi sudah tersusun atau
sudah terurut.

Fungsi def get_protocol untuk pemanggilan protocol yang digunakan.


VII. Kesimpulan
Pada hasil analisa dari API WebRTC yang diberikan oleh bapak Dosen,
dapat menganalisa Method – method API WebRTC meskipun belum sempurna
sesuai yang diinginkan bapak Dosen, namun sedikit banyaknya kami dapat
memahami tentang Python dan dapat menerapkan pada pembelajaran kami
yang lain.

Anda mungkin juga menyukai