Dokumen Teknis Web Service Pull PDPT

download Dokumen Teknis Web Service Pull PDPT

of 19

Transcript of Dokumen Teknis Web Service Pull PDPT

Dokumen TeknisWebservice Pull EPSBED

Dokumen ini berisi tentang desain dan implementasi mplementasi webservice untuk setiap Perguruan Tinggi

DAFTAR REVISIVersi 1.0 1.1 Pemilik Ario Sutomo Ario Sutomo Penambahan File EPSBED default TRFPA.DBFuntuk transaksi_fasilitas_penunjang_akademik - Master Dosen dihilangkan - perubahan fungsi serialize() menjadi json_encode() - perubahan fungsi unserialize() menjadi json_decode() 1.3 Ario Sutomo Perbaikan beberapa penulisan 31/12/2010 Deskripsi Revisi Tanggal 21/08/2010 20/10/2010

1.2

Ario Sutomo

18/12/2010

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 2

1. Daftar Isi1. 2. Daftar Isi......................................................................................................................................... 3 Persyaratan ................................................................................................................................... 4 2.1. 2.2. 2.3. 3. 4. Software requirements .......................................................................................................... 4 Tahapan instalasi .................................................................................................................. 4 Frequently asked questions.................................................................................................. 6

Protokol .......................................................................................................................................... 7 Webservice .................................................................................................................................... 9 4.1. Jenis webservice ................................................................................................................... 9 Webservice data ............................................................................................................ 9 Webservice jumlah ...................................................................................................... 12 Webservice decoder .................................................................................................... 14

4.1.1. 4.1.2. 4.1.3. 4.2.

Cara pemanggilan webservice ........................................................................................... 14 Webservice jumlah ...................................................................................................... 14 Webservice data .......................................................................................................... 15 Webservice decoder .................................................................................................... 16

4.2.1. 4.2.2. 4.2.3.

Lampiran A : Daftar Konstanta File EPSBED .................................................................................. 18 Referensi ............................................................................................................................................... 19

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 3

2. Persyaratan2.1.

Software requirementsPHP versi 5.2 (agarPHP extensiondbase bisa dipasang) PHP extension dbase enabled PHP extension zlib enabled PHP extension pcre enabled

Berikut kebutuhan perangkat lunak yang dibutuhkan agar webservice dapat berjalan:

2.2.

Tahapan instalasiDownload file https://pdpt.dikti.go.id/repo/webservice.tar.gz dan simpan di folder htdocs webserver Anda (misal: /usr/local/www/apache22/data/webservice ) Ekstrak file webservice.tar.gz tersebut sehingga pada folder htdocs webserver terdapat 5 file sebagai berikut: o o o o o nusoap.php dc_conn.php epsbed.php epsbed_fungsi.php epsbed_supplement.php

Berikut tahapan instalasi webservice :

Edit file dc_conn.php dan ubah konstanta berikut ini : o NAMA_PT : diisi dengan singkatan nama perguruan tinggi yang sesuai (sesuai folder) BASE_URL1 : full path ke folder file-file EPSBED (*.DBF). Untuk lokasi path di Windows menggunakan double backslash (contoh: d:\\data\\epsbed\\2008-2\\ ), sedangkan untuk di Linux/Unix cukup satu slash saja (contoh: /home/epsbed/2008-2/ )

o

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 4

o

PASSWORD_DIKTI : password yang akan digunakan untuk getting data ( defaultnya "d1kt1123", jika diubah mohon untuk menginformasikannya ke pihak integrator Dikti ) DBF_XXX : diisi dengan nama file EPSBED (*.DBF) yang sesuai. Daftar konstanta file EPSBED bisa dilihat di lampiran.

o

Contoh isi file dc_conn.php : integer : Kode error ( 0 jika tidak ada error) [err_teks] => string : Teks error ( kosong jika nilai field [err_no]=0 ) [data] => array ( [0] => array ( [field sesuai struktur file .DBF dari webservice yang dipanggil ] ) [1] => array ( [field sesuai struktur file .DBF dari webservice yang dipanggil ] ) [n] => array ( [ field sesuai struktur file .DBF dari webservice yang dipanggil ] ) )

Contoh return value untuk webservice master_fakultas()Array ( [err_no] => 0 [err_teks] => [tab] => MSFAK [data] => Array ( [0] => Array ( [KDPTIMSFAK] [KDFAKMSFAK] [NMFAKMSFAK] [deleted] => ) [1] => Array (

=> 031037 => 01 => FAKULTAS ILMU KOMPUTER 0

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 11

[KDPTIMSFAK] [KDFAKMSFAK] [NMFAKMSFAK] [deleted] => ) [2] => Array ( [KDPTIMSFAK] [KDFAKMSFAK] [NMFAKMSFAK] [deleted] => ) [3] => Array ( [KDPTIMSFAK] [KDFAKMSFAK] [NMFAKMSFAK] [deleted] => ) dst

=> 031037 => 02 => FAKULTAS ILMU EKONOMI 0

=> 031037 => 03 => FAKULTAS TEKNIK SIPIL & PERENCANAAN 0

=> 031037 => 04 => FAKULTAS TEKNOLOGI INFORMASI 0

4.1.2.

Webservice jumlah

Webservice jenis jumlah ini merupakan webservice pendukung dari webservice data, yang berfungsi untuk mendapatkan jumlah record yang terdapat pada webservice data yang akan di panggil. Nama webservice jumlah ini sama dengan nama webservice data nya, hanya saja diakhiri dengan _count.

No 1 2 3 4 5 6 7 8 9 10 11 12

Nama Webservice master_program_studi_count visimisi_program_studi_count master_mahasiswa_count master_riwayat_pendidikan_dosen_count kurikulum_matakuliah_count transaksi_aktivitas_kuliah_count transaksi_nilai_semester_mhs_count transaksi_nilai_semester_mhs2_count transaksi_tabel_bobot_nilai_semester_count transaksi_mahasiswa_clkdona_count transaksi_mengajar_dosen_count transaksi_dosen_kcsl_count

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 12

13 14 15 16 17 18 19 20 21 22 23 24 25

transaksi_kapasitas_mhs_baru_count transaksi_fasilitas_penunjang_akademik_count transaksi_publikasi_dosen_count transaksi_nama_pimpinan_dan_pna_count transaksi_hasil_isian_kuisioner_count transaksi_lab_count transaksi_isian_jawaban_pertanyaan_count transaksi_riwayat_mhs_s3_count transaksi_kerma_pt_ln_count transaksi_riwayat_mhs_beasiswa_count transaksi_mhs_asing_count transaksi_pindahan_mhs_asing_count transaksi_skripsi_count

Parameter yang digunakan pada webservice jumlah ini memiliki 2 parameter : passwd : string password webservice sesuai dengan isi konstanta PASSWORD_DIKTI pada file dc_conn.php compressed : int (1=true, 0=false) menentukan format data yang akan dikirim apakah dalam bentuk terkompresi atau tidak.

Return value (setelah di decode) dari masing-masing webservice jumlah adalah berupa array dengan struktur sebagai berikut:[err_no] =>integer : Kode error ( 0 jika tidak ada error) [err_teks] => string : Teks error ( kosong jika nilai field [err_no]=0 ) [jumlah] =>int : Jumlah record seluruh data

Contoh return value untuk webservice master_mahasiswa_count ()Array ( [err_no] => 0 [err_teks] => [jumlah] => 77439 )

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 13

4.1.3.

Webservice decoder

Webservice jenis decoder ini merupakan webservice untuk mengakomodasi client pengambil data yang tidak dapat men-decodereturn value dari webservice yang dipanggil. Webservice decoder ini hanya terdiri dari satu webservice saja, yaitu:/** * Decode data * * @param string password webservice * @param string data yang akan di decode * @return string decoded-data berupa csv */ decode_data($password, $data)

Return value dari decode_data ini adalah format CSV, yang mana setiap record dipisahkan dengan 3 karakter tilde (~~~). Sedangkan masing-masing field dipisahkan dengan 3 karakter vertical bar(|||). Record pertama merupakan nama field, sedangkan record kedua dan seterusnya adalah isinya. Sebagai contoh untuk keluaran hasil decode_databerikut ini:KDPTIMSFAK|||KDFAKMSFAK|||NMFAKMSFAK|||deleted~~~031037|||01|||FAKULTAS ILMU KOMPUTER|||0~~~031037|||02|||FAKULTAS ILMU EKONOMI|||0

Jika diparsing dengan benar akan menghasilkan data sebagai berikut:KDPTIMSFAK 031037 031037 KDFAKMSFAK 01 02 NMFAKMSFAK FAKULTAS ILMU KOMPUTER FAKULTAS ILMU EKONOMI deleted 0 0

4.2.

Cara pemanggilan webservice

Kode berikut ini merupakan contoh pemanggilan webservicemenggunakan PHP untuk masingmasing jenis. Pastikan file nusoap.php berada satu direktori dengan file php yang memanggil webservice.

4.2.1.

Webservice jumlah

4.2.2.

Webservice data

4.2.3.

Webservice decoder

Parameter compressed harus di isi 0

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 17

Lampiran A : Daftar Konstanta File EPSBEDBerikut daftar konstanta file EPSBED beserta keterangannya yang terdapat pada file dc_conn.php

No 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

Nama Konstanta DBF_MASTER_BADAN_HUKUM DBF_MASTER_PTI DBF_MASTER_FAKULTAS DBF_MASTER_PRODI DBF_MASTER_MHS DBF_MASTER_RIWAYAT_PEND_DOSEN DBF_TABEL_KURIKULUM_MK DBF_TRX_AKTIVITAS_KULIAH DBF_TRX_NILAI_SEMESTER_MHS DBF_TRX_TBL_BOBOT_NILAI DBF_TRX_MHS_CLKDONA DBF_TRX_MENGAJAR_DOSEN DBF_TRX_DOSEN_KCSL DBF_TRX_KAP_MHS_BARU DBF_TRX_FASILITAS_AKD DBF_TRX_PUBLIKASI_DOSEN DBF_TRX_PNA DBF_TRX_KUISIONER DBF_TRX_LABORATORIUM DBF_TRX_ISIAN_PERTANYAAN DBF_TRX_RIWAYAT_MHS_S3 DBF_TRX_KERMA_PT_LN DBF_TRX_RIWAYAT_MHS_BEA DBF_TRX_MHS_ASING DBF_TRX_PINDAHAN_MHS_ASING DBF_TRX_VISI_MISI DBF_TRX_VISI_MISI_PRODI DBF_TRX_NILAI_SEMESTER_MHS2 DBF_TRX_SKRIPSI

Keterangan Master Badan Hukum Master Perguruan Tinggi Master Fakultas Master Program Studi Master Mahasiswa Master Riwayat Pendidikan Dosen Tabel Kurikulum/Matakuliah Transaksi Aktivitas Kuliah Mahasiswa Transaksi Nilai Semester Mahasiswa Tabel Bobot Nilai Transaksi Mahasiswa Cuti/Lulus/Keluar/D.O./Non-aktif Transaksi Mengajar Dosen Transaksi Dosen Keluar/Cuti/Studi Lanjut Transaksi Kapasitas Mahasiswa Baru Transaksi Fasilitas Penunjang Akademik Transaksi Publikasi Dosen Transaksi Nama Pimpinan dan Tenaga Non-akademik Transaksi Hasil Isian Kuesioner Transaksi Laboratorium Transaksi Isian Jawaban Pertanyaan Master Riwayat Pendidikan Mahasiswa Jenjang S-3 Transaksi Kerjasam Dengan P.T. Luar Negeri Transaksi Mahasiswa Beasiswa Transaksi Mahasiswa Asing Transaksi Pindahan Mahasiswa Asing Visi Misi Perguruan Tinggi Visi Misi Program Studi Transaksi Nilai Semester Mahasiswa Transaksi Skripsi Mahasiswa

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 18

Referensi Wikipedia - http://en.wikipedia.org/wiki/SOAP NuSOAP SOAP Toolkit for PHP (http://nusoap.sourceforge.net/ )

Dokumentasi Teknis Webservice EPSBEDv1.3 Hal - 19