Lær, hvordan du opretter et sikkert Zoom-mødelink ved hjælp af Python til server-til-server-kommunikation med OAuth-godkendelse.

Uanset om du har integreret Zoom-møder i din Python-app eller bare planlægger at gøre det, siger Zoom, at det udfaser JWT-apps den 1. september 2023. Du bliver nødt til at skifte til OAuth eller server-til-server OAuth-indstillingen for at undgå nedetid.

OAuth-indstillingen kræver, at dine brugere godkender dit websted via deres Zoom-konto. Men hvis du kun genererer Zoom-mødelinks uden nødvendigvis at anmode om brugernes tilladelse, er server-til-server OAuth-indstillingen dit ideelle valg.

Så hvordan kan du opnå dette med Python?

Opret en Zoom Server-til-Server OAuth-app

For at begynde skal du gå over til Zoom markedsplads for at bygge en ny app:

  1. Rul gennem listen over apps, og find Server-til-server OAuth banner. Klik derefter på skab knap.
  2. Indtast et navn til din app i det angivne felt. Klik derefter skab; dette omdirigerer dig til en anden side.
  3. Kopiér alle app-legitimationsoplysningerne, inklusive din
    instagram viewer
    Konto-id, Klient-id, og Klientens hemmelighed. Klik Blive ved gang gjort. Du vil måske indsætte disse i din miljøvariabel fil at maskere dem.
  4. I den følgende menu skal du udfylde Grundlæggende oplysninger felter med de relevante oplysninger, og klik på Blive ved knap.
  5. Klik Blive ved på den følgende side.
  6. Klik derefter Tilføj omfang og tilføje følgende omfang; Få et mødes kodede SIP URI og Se og administrer alle brugermøder.
  7. Klik Blive ved. Klik til sidst Aktiver din app for at begynde at interagere med Zoom API via din server-til-server OAuth-app.

Når du er færdig med de foregående trin, kan du generere mødelinks på farten ved hjælp af Zoom API. Nedenfor er den komplette kode til at gøre det.

importere anmodninger

# erstat med dit klient-id
client_id = ""

# erstat med dit konto-id
konto-id = ""

# erstat med din klienthemmelighed
client_secret = ""

auth_token_url = " https://zoom.us/oauth/token"
api_base_url = " https://api.zoom.us/v2"

# opret Zoom-link-funktionen
defoprette_møde(emne, varighed, startdato, starttidspunkt):
data = {
"grant_type": "account_credentials",
"Konto-id": Konto-id,
"klient_hemmelig": klient_hemmelighed
}
response = requests.post (auth_token_url,
auth=(client_id, client_secret),
data=data)

hvis response.status_code!=200:
Print("Kan ikke få adgangstoken")
response_data = respons.json()
access_token = svar_data["adgangstoken"]

overskrifter = {
"Bemyndigelse": f "Bærer {access_token}",
"Indholdstype": "applikation/json"
}
nyttelast = {
"emne": emne,
"varighed": varighed,
'starttidspunkt': f'{start dato}T10:{starttidspunkt}',
"type": 2
}

resp = requests.post(f"{api_base_url}/users/me/meetings",
overskrifter=overskrifter,
json=nyttelast)

hvis resp.status_code!=201:
Print("Kan ikke generere mødelink")
response_data = resp.json()

indhold = {
"meeting_url": svar_data["join_url"],
"adgangskode": svar_data["adgangskode"],
"mødetid": svar_data["starttidspunkt"],
"formål": svar_data["emne"],
"varighed": svar_data["varighed"],
"besked": "Succes",
"status":1
}
print (indhold)

Koden sender først en anmodning til Zooms token-URL for et autorisationstoken. Ved at videregive dette via overskrifterne til Zooms API, returnerer det et svar, der indeholder mødedetaljen, der er angivet i nyttelasten. Mødet starttidspunkt sendes med nyttelasten skal være i ISO 8601-format. Vi har formateret dette ved hjælp af Pythons strengoperation.

For eksempel kan du ringe til funktionen for at planlægge et møde til den 23. august 2023 kl. 18:24 som følger:

oprette_møde(
"Test Zoom-møde",
"60",
"2023-08-23",
"18:24",
)

API'en returnerer en JSON, der indeholder masser af information, herunder mødelinket, adgangskoden og ID'et, blandt mange andre detaljer. Du kan udskrive response_data og udtræk det, du har brug for, som gjort i ovenstående kode.

For eksempel ser vores anmodningsoutput sådan ud:

Integrer Zoom Meeting i din app

Selvom vores demonstration ikke inkluderer integration i din hjemmeside eller API, uanset om du bygger med Django, Flask, FastAPI eller enhver anden Python-ramme, kan du nemt tilslutte koden til din kodebase.

Og hvis du bygger en API, kan du konvertere den til et slutpunkt, der kan bruges af enhver klient. Du kan endda låne denne idé til et websted bygget med andre sprog end Python. For eksempel er trinene til at oprette en server-til-server OAuth-app generiske.