Cara Membuat Tautan Rapat Zoom OAuth Server-ke-Server Dengan Python
Table of content:
Apakah Anda telah mengintegrasikan rapat Zoom ke dalam aplikasi Python Anda atau hanya berencana untuk melakukannya, Zoom mengatakan itu menghentikan penggunaan aplikasi JWT pada 1 September 2023. Anda harus beralih ke OAuth atau opsi OAuth server-ke-server untuk menghindari waktu henti layanan.
Opsi OAuth mengharuskan pengguna Anda mengautentikasi situs web Anda melalui akun Zoom mereka. Tetapi jika Anda hanya membuat tautan rapat Zoom tanpa harus meminta izin pengguna, opsi OAuth server-ke-server adalah pilihan ideal Anda.
Jadi bagaimana Anda bisa mencapai ini dengan Python?
Buat Aplikasi Zoom Server-ke-Server OAuth
Untuk memulai, pergilah ke Pasar Zoom untuk membuat aplikasi baru:
- Gulir daftar aplikasi dan temukan OAuth Server-ke-Server spanduk. Kemudian, klik Membuat tombol.
- Masukkan nama untuk aplikasi Anda di bidang yang disediakan. Lalu klik Membuat; ini mengarahkan Anda ke halaman lain.
- Salin semua kredensial aplikasi, termasuk milik Anda ID Akun, ID klienDan Rahasia Klien. Klik Melanjutkan sekali selesai. Anda mungkin ingin menempelkan ini ke file variabel lingkungan Anda untuk menutupinya.
- Pada menu berikut isilah dengan Informasi dasar bidang dengan informasi yang sesuai dan klik Melanjutkan tombol.
- Klik Melanjutkan di halaman berikut.
- Selanjutnya, klik Tambahkan Cakupan dan tambahkan cakupan berikut; Dapatkan URI SIP yang disandikan untuk rapat Dan Lihat dan kelola semua rapat pengguna.
- Klik Melanjutkan. Terakhir, klik Aktifkan aplikasi Anda untuk mulai berinteraksi dengan Zoom API melalui aplikasi OAuth server-ke-server Anda.
Kode Python untuk Menghasilkan Tautan Zoom
Setelah selesai dengan langkah sebelumnya, Anda dapat membuat tautan rapat saat bepergian menggunakan Zoom API. Di bawah ini adalah kode lengkap untuk melakukannya.
import requests
client_id = "<Your client ID>"
account_id = "<Your account ID>"
client_secret = "<Your client secret>"
auth_token_url = "https://zoom.us/oauth/token"
api_base_url = "https://api.zoom.us/v2"
def create_meeting(topic, duration, start_date, start_time):
data = {
"grant_type": "account_credentials",
"account_id": account_id,
"client_secret": client_secret
}
response = requests.post(auth_token_url,
auth=(client_id, client_secret),
data=data)
if response.status_code!=200:
print("Unable to get access token")
response_data = response.json()
access_token = response_data["access_token"]
headers = {
"Authorization": f"Bearer {access_token}",
"Content-Type": "application/json"
}
payload = {
"topic": topic,
"duration": duration,
'start_time': f'{start_date}T10:{start_time}',
"type": 2
}
resp = requests.post(f"{api_base_url}/users/me/meetings",
headers=headers,
json=payload)
if resp.status_code!=201:
print("Unable to generate meeting link")
response_data = resp.json()
content = {
"meeting_url": response_data["join_url"],
"password": response_data["password"],
"meetingTime": response_data["start_time"],
"purpose": response_data["topic"],
"duration": response_data["duration"],
"message": "Success",
"status":1
}
print(content)
Kode pertama-tama mengirimkan permintaan ke URL token Zoom untuk token otorisasi. Meneruskan ini melalui header ke API Zoom, ini mengembalikan respons yang berisi detail rapat yang ditentukan dalam payload. Pertemuan waktu mulai dikirim dengan payload harus dalam format ISO 8601. Kami telah memformat ini menggunakan operasi string Python.
Misalnya, Anda dapat memanggil fungsi untuk menjadwalkan rapat pada tanggal 23 Agustus 2023 pukul 18:24 sebagai berikut:
create_meeting(
"Test Zoom Meeting",
"60",
"2023-08-23",
"18:24",
)
API mengembalikan JSON yang berisi banyak informasi, termasuk tautan rapat, kata sandi, dan ID, di antara banyak detail lainnya. Anda dapat mencetak response_data dan ekstrak apa yang Anda butuhkan, seperti yang dilakukan pada kode di atas.
Misalnya, keluaran permintaan kami terlihat seperti ini:
Integrasikan Rapat Zoom ke Aplikasi Anda
Meskipun demonstrasi kami tidak menyertakan pengintegrasian ke situs web atau API Anda, apakah membangun dengan Django, Flask, FastAPI, atau kerangka kerja Python lainnya, Anda dapat dengan mudah memasukkan kode ke dalam basis kode Anda.
Dan jika membuat API, Anda dapat mengubahnya menjadi titik akhir yang dapat digunakan oleh klien mana pun. Anda bahkan dapat meminjam ide ini untuk situs web yang dibangun menggunakan bahasa lain selain Python. Misalnya, langkah-langkah untuk membuat aplikasi OAuth server-ke-server bersifat umum.