Naučite se ustvariti varno povezavo do srečanja Zoom z uporabo Pythona za komunikacijo med strežniki s preverjanjem pristnosti OAuth.

Ne glede na to, ali ste sestanke Zoom integrirali v svojo aplikacijo Python ali to šele nameravate storiti, Zoom pravi, da 1. septembra 2023 opušča aplikacije JWT. Preklopiti boste morali na možnost OAuth ali strežnik-strežnik OAuth, da preprečite izpad storitve.

Možnost OAuth zahteva, da vaši uporabniki preverijo pristnost vašega spletnega mesta prek svojega računa Zoom. Če pa samo ustvarjate povezave do sestankov Zoom, ne da bi nujno zahtevali dovoljenje uporabnikov, je možnost OAuth med strežniki vaša idealna izbira.

Torej, kako lahko to dosežete s Pythonom?

Ustvarite aplikacijo OAuth med strežniki Zoom

Za začetek pojdite na Zoom Marketplace za izdelavo nove aplikacije:

  1. Pomaknite se po seznamu aplikacij in poiščite OAuth od strežnika do strežnika transparent. Nato kliknite Ustvari gumb.
  2. V ustrezno polje vnesite ime svoje aplikacije. Nato kliknite Ustvari; to vas preusmeri na drugo stran.
  3. Kopirajte vse poverilnice aplikacije, vključno z vašimi ID računa, ID stranke, in Skrivnost stranke. Kliknite Nadaljuj enkrat opravljeno. Morda jih boste želeli prilepiti v svoje datoteka spremenljivke okolja da jih zamaskiraš.
  4. V naslednjem meniju izpolnite Osnovni podatki polja z ustreznimi informacijami in kliknite Nadaljuj gumb.
  5. Kliknite Nadaljuj na naslednji strani.
  6. Nato kliknite Dodajte obsege in dodajte naslednje obsege; Pridobite kodiran URI SIP sestanka in Ogled in upravljanje vseh uporabniških srečanj.
  7. Kliknite Nadaljuj. Na koncu kliknite Aktivirajte svojo aplikacijo da začnete komunicirati z API-jem Zoom prek vaše medstrežniške aplikacije OAuth.

Ko končate s prejšnjimi koraki, lahko z API-jem Zoom ustvarite povezave do sestankov na poti. Spodaj je celotna koda za to.

uvoz zahteve

# zamenjajte s svojim ID-jem stranke
client_id = ""

# zamenjajte z ID-jem vašega računa
account_id = ""

# zamenjajte s svojo skrivnostjo stranke
odjemalska_skrivnost = ""

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

# ustvarite funkcijo Zoom link
defcreate_meeting(tema, trajanje, začetni_datum, začetni_čas):
podatki = {
"vrsta_dodelitve": "account_credentials",
"account_id": account_id,
"client_secret": skrivnost_odjemalca
}
odgovor = requests.post (auth_token_url,
auth=(client_id, client_secret),
podatki=podatki)

če response.status_code!=200:
natisni("Ni mogoče pridobiti žetona za dostop")
odziv_podatki = odziv.json()
access_token = odzivni_podatki["dostopni žeton"]

glave = {
"Avtorizacija": f"Nosilec {dostopni žeton}",
"Vrsta vsebine": "aplikacija/json"
}
nosilnost = {
"tema": tema,
"trajanje": trajanje,
'Začetni čas': f'{začetni datum}T10:{Začetni čas}',
"tip": 2
}

resp = requests.post(f"{api_base_url}/users/me/meetings",
headers=glave,
json=tovor)

če resp.status_code!=201:
natisni("Ni mogoče ustvariti povezave do sestanka")
odziv_podatki = resp.json()

vsebina = {
"meeting_url": odziv_podatki["join_url"],
"geslo": odziv_podatki["geslo"],
"meetingTime": odziv_podatki["Začetni čas"],
"namen": odziv_podatki["tema"],
"trajanje": odziv_podatki["trajanje"],
"sporočilo": "Uspeh",
"stanje":1
}
tisk (vsebina)

Koda najprej pošlje zahtevo na URL žetona Zoom za avtorizacijski žeton. Če to prek glav posreduje Zoomovemu API-ju, vrne odgovor, ki vsebuje podrobnosti sestanka, podane v obremenitvi. Sestanek Začetni čas poslano s tovorom mora biti v formatu ISO 8601. To smo oblikovali z uporabo nizovne operacije Python.

Na primer, lahko pokličete funkcijo za načrtovanje sestanka za 23. avgust 2023 ob 18:24, kot sledi:

create_meeting(
"Testno Zoom srečanje",
"60",
"2023-08-23",
"18:24",
)

API vrne JSON, ki vsebuje veliko informacij, vključno s povezavo do srečanja, geslom in ID-jem, med številnimi drugimi podrobnostmi. Lahko natisnete odzivni_podatki in ekstrahirajte, kar potrebujete, kot je storjeno v zgornji kodi.

Izhod naše zahteve je na primer videti takole:

Integrirajte Zoom Meeting v svojo aplikacijo

Čeprav naša predstavitev ne vključuje integracije v vaše spletno mesto ali API, ne glede na to, ali gradite s Django, Flask, FastAPI ali katero koli drugo ogrodje Python, lahko preprosto vključite kodo v svojo kodno zbirko.

In če gradite API, ga lahko pretvorite v končno točko, ki jo lahko uporablja kateri koli odjemalec. To idejo si lahko celo izposodite za spletno stran, izdelano v drugih jezikih poleg Pythona. Na primer, koraki za ustvarjanje aplikacije OAuth med strežniki so splošni.