Arkatama

Implementasi Zoom API pada Codeigniter 3

Selama pandemi ini, aplikasi meeting online menyita banyak perhatian masyarakat, salah satunya yaitu Zoom. Hampir semua kalangan menggunakan aplikasi meeting online untuk berkomunikasi secara online tak terkecuali developer. Para developer sering kali mendapat permintaan dari client untuk menambahkan fitur akses Zoom pada aplikasi yang sedang dikembangkan. Lalu, bagaimana cara developer mengimplementasikan Zoom ke dalam website yang dikembangkan tersebut? Sebelum kita bahas cara implementasinya, ada baiknya kita kenali lebih dalam tentang Zoom dan fitur-fiturnya.

Apa itu Zoom API ?

Zoom API adalah sarana utama bagi developer untuk mengakses collection sumber daya dari Zoom. Aplikasi dapat membaca dan menulis ke sumber daya dan mencerminkan beberapa fitur paling populer yang tersedia di Portal Web Zoom, seperti membuat rapat baru, menambah dan menghapus pengguna, melihat laporan dan dasbor pada berbagai penggunaan, dan sebagainya, menggunakan Zoom API. Semua API di bawah Zoom API didasarkan pada arsitektur REST dan diakses melalui HTTPS di URL yang ditentukan. URL dasar untuk semua permintaan adalah https://api.zoom.us/v2/. URL lengkap bervariasi tergantung pada titik akhir sumber daya yang diakses.

Mereka yang ingin membuat rapat melalui Zoom API harus memilih OAuth atau JWT untuk berinteraksi dengan API mereka. OAuth dan JWT (JSON Web Token) memberikan tingkat keamanan yang tinggi untuk melakukan interaksi dengan layanan pihak ketiga. 

Disini kami akan menjelaskan cara implementasi Zoom API menggunakan JWT, dengan catatan JWT hanya dapat digunakan untuk aplikasi dan proses internal. Semua aplikasi yang dibuat untuk penggunaan pihak ketiga harus menggunakan jenis aplikasi OAuth.

Getting Started

Langkah awal untuk memulai, buka Dasbor Zoom Developer dan buat aplikasi baru. Pilih JWT sebagai jenis aplikasi dan salin kunci Zoom API, kemudian rahasiakan.

Aplikasi Zoom JWT

Sebuah JWT tunggal terdiri dari tiga komponen: Header, Payload, dan Signature dengan memisahkan masing-masing komponen dengan ‘.’ (titik). Misalnya: aaaaa.bbbbb.ccccc

Beberapa library yang tersedia dapat membantu menghasilkan JWT. Saya akan merekomendasikan menggunakan firebase/php-jwt library. Library ini menyediakan pendekatan yang jauh lebih mudah untuk membuat JWT. Install library ini menggunakan perintah di bawah ini:

composer require firebase/php-jwt

Selanjutnya kita harus mengirim permintaan POST ke Zoom API untuk membuat rapat. Seseorang dapat menggunakan cURL untuk tujuan ini. Tapi, kami lebih menyarankan menyukai Guzzle yang menyediakan kode yang jauh lebih bersih daripada cURL. Manfaat lain menggunakan Guzzle adalah Anda tidak perlu mengaktifkan ekstensi cURL di server.

Jalankan perintah di bawah ini untuk menginstall Library Guzzle.

composer require guzzlehttp/guzzle

Buat Zoom Meeting dengan JWT dan PHP

Setelah menginstall dua packages di atas, sekarang Anda perlu memasukkan environment packages tersebut dalam file PHP. Selain itu, telah disalin Zoom API Key di langkah sebelumnya. Lalu, Anda dapat mendefinisikan key tersebut sebagai konstanta di PHP.

Selanjutnya, untuk menghasilkan JWT menggunakan packages firebase/php-jwt, kode Anda akan menjadi sebagai berikut.

Terakhir, untuk membuat rapat Zoom perlu mengirim permintaan POST ke titik akhir /v2/users/me/meetings dengan JWT sebagai Bearer Token.

Update Zoom Meeting

Mungkin Anda ingin memperbarui informasi rapat seperti durasi, tanggal, atau topik. Dalam hal ini, Anda perlu mengirim permintaan PATCH bersama dengan detail yang akan diperbarui. Anda dapat menggunakan kode di bawah ini untuk memperbarui Zoom Meeting.

Setelah eksekusi kode berhasil, Anda mendapatkan 204 sebagai kode status HTTP.

List Zoom Meetings

Pada aplikasi, Anda mungkin ingin membuat daftar semua Zoom Meeting. Zoom menyediakan API yang dapat digunakan untuk mendapatkan List Zoom Meetings. Dengan menggunakan kode di bawah ini, Anda dapat mencetak detail List Zoom Meetings.

Di sini, kami mencetak topik dan URL meeting. Anda juga dapat mencetak informasi lainnya. Cetak variabel $data untuk mendapatkan daftar informasi yang tersedia. Secara default, Zoom mengembalikan daftar 30 meeting dalam satu panggilan. Jika Anda ingin mendapatkan kumpulan rekaman berikutnya, gunakan nilai next_page_token seperti yang ditunjukkan dalam kode.

Get Peserta Rapat Sebelumnya

Untuk rapat sebelumnya, Anda bisa mendapatkan daftar peserta menggunakan Zoom API. Jika Anda menggunakan akun berbayar, maka dapat menggunakan API khusus ini, yang membutuhkan akun berbayar. Jika Anda mencoba memanggil API ini dengan akun gratis, Anda akan mendapatkan error.

Ganti placeholder MEETING_ID dengan id rapat sebelumnya, maka Anda akan mendapatkan nama dan email peserta.

Hapus Zoom Meeting dengan JWT dan PHP

Selain membuat rapat, Zoom juga menyediakan titik akhir API seperti daftar, update, hapus rapat. Pengguna harus mengikuti dokumentasi API mereka untuk menggunakan titik akhir tertentu. Sebagai contoh, Anda dapat menghapus rapat dengan mengirimkan permintaan DELETE ke titik akhir Zoom API. Anda harus meneruskan id rapat Anda ke titik akhir sebagai berikut.

Sekian pembahasan mengenai Implementasi Zoom API di PHP, dimana Codeigniter 3 merupakan framework dari PHP. Kami berharap Anda mengetahui tentang implementasi Zoom API untuk pembuatan Zoom Meeting dengan PHP dan JWT. Informasi lebih lengkap kunjungi Web Arkatama.

Baca juga: Unit Testing pada Flutter yang Programmer Wajib Tahu!

Penulis: Silvia Rahmasari (System Support Programmer Intern DTS Squad Batch 1)

Editor: Miftakhul Mukarromatun Nisa (Content Writer Intern DTS Squad Batch 1)

Leave a Reply

Your email address will not be published. Required fields are marked *