Menggunakan Web Service di Moodle

Moodle merupakan salah satu LMS (Learning Management Systems) yang paling banyak digunakan. Banyak sekali sekolah-sekolah, kampus-kampus di dalam maupun luar negeri yang menggunakan Moodle sebagai engine elearning mereka.

Baru-baru ini, diskusi mengenai penggunaan Moodle meningkat begitu pesat. Seiring munculnya virus Covid-19 yang membuat sekolah dan kampus meliburkan aktivitas belajar mengajarnya di lingkungan kampus atau sekolah.

Mau tak mau, aktifitas belajar mengajar harus di alihkan secara online, karena tak mungkin untuk dipending atau ditunda tanpa ada kegiatan sama sekali.

Nah, berlatar belakang kasus tersebut banyak sekali pengembang-pengembang LMS yang mulai membahas Moodle. Selain itu sebenarnya banyak juga kawan-kawan developer yang membuat elearning secara mandiri, namun untuk keperluan singkat dan cepat, menggunakan LMS adalah pilihan yang bijak.

Disini saya tidak akan membahas terlalu banyak mengenai Moodle, karena tulisan ini bukan merupakan pengenalan Moodle sebagai LMS. Sesuai judul, kita akan langsung membahas mengenai tokenisasi web service di Moodle.

Untuk apa menggunakan service/ API dan mengapa harus pakai token?

Seperti yang kita semua tau, API atau Application Programming Interface merupakan teknologi yang memungkinkan kita sebagai developer untuk mengkomunikasikan dua atau lebih sebuah sistem.

Dengan API, kita dapat dengan mudah melakukan pull atau pun push data ke sistem yang lain, dalam arti lain, kita dapat mengintegrasikan beberapa sistem menjadi sebuah grand sistem yang saling terkait.

Lalu apa hubungannya dengan Moodle? Moodle sebagai salah satu LMS tentunya banyak digunakan di lembaga akademik sebagai engine untuk elearning, atau di Indonesia biasanya disebut SPADA.

Setiap universitas, tentunya memiliki banyak sistem informasi yang berjalan. Terkait keuangan, akademik, dan lain sebagainya. Elearning hanyalah sebagian kecil dari banyak sistem yang dimiliki oleh sebuah universitas.

Keberadaan elearning ini mungkin saja bisa berjalan secara mandiri dan terpisah, namun akan sangat merepotkan. Misalnya, untuk membuat mata kuliah di dalam sistem elearning, dari pada harus menginputkan satu persatu dan merepotkan mahasiswa untuk mengambil course, akan lebih nyaman jika mata kuliah dapat di pull dari sistem akademik, dan pengambilan kuliah didasarkan kepada KRS yang telah diambil mahasiswa pada semester terkait.

Token sendiri diperlukan untuk melaukan otentikasi penggunaan service, memastikan bahwa request benar-benar dari pengguna yang verified. Tidak semua request harus melalui token, misalnya saja ada resource publik yang memang dibiarkan terbuka, tetapi, akan lebih baik token tetap digunakan dan dapat memperlengkap log atau pun memastikan penggunaan dari resource yang tersedia.

Konfigurasi webservice di Moodle

Untuk dapat menggunakan webservice yang disediakan di Moodle, kita perlu melakukan beberapa konfigurasi. Pilihan konfignya, bisa dilihat di menu administrator, bagian : Site Administration->Plugin->Web Services.

Saat saya menulis ini, saya menggunakan Moodle versi terbaru (saat ini), yaitu 3.8.2 sementara utuk versi dibawahnya ada beberapa yang tempatnya berbeda, bisa dicari.

Jika tidak tahu mau mulai dari mana, baiknya kita buka Overviewnya. Dari situ kita bsia melihat runtutan task yang harus kita lakuakn untuk menggunakan web servicenya.

Saya tidak akan menjelaskan satu-satu, teman-teman bisa cek sendiri ya.

Mungkin itu saja. Karena the way nya uda ada di overview. Yang menarik, di Moodle ini menyediakan service yang lumayan banyak dan super lengkap. Kita bisa menggunakan berbagai protokol, seperti Rest, SOAP dan XML-RPC.

Untuk melihat service apa saja yang bisa kita gunakan, bisa kunjungi laman Moodle Web Service API Functions. Sekian, semoga dapat memberikan manfaat.