Kapitel 9 GET POST

getMeetings – Vis alle møder

Endepunktet getMeetings returnerer en liste over alle møder, der aktuelt findes på BigBlueButton-serveren, inklusive deltagerdetaljer og metadata. Det er det primære værktøj til at bygge administrationsdashboards, overvåge serverbelastning og udføre kapacitetsplanlægning på tværs af din infrastruktur.

Endepunkt

GET/POST https://api-guide.bbbserver.com/bigbluebutton/api/getMeetings?checksum=replace-with-checksum

Dette endepunkt kræver ingen yderligere parametre ud over tjeksummen. Det returnerer alle møder på serveren i ét enkelt svar.

Parametre

Parameter Type Påkrævet Standard Beskrivelse
checksum String Ja Sikkerheds-tjeksum beregnet ud fra API-kaldets navn og den delte hemmelighed.

Eksempel på anmodning

https://api-guide.bbbserver.com/bigbluebutton/api/getMeetings?checksum=replace-with-checksum

Eksempelsvar

Møder fundet

<response>
  <returncode>SUCCESS</returncode>
  <meetings>
    <meeting>
      <meetingName>Demo Meeting</meetingName>
    <meetingID>replace-with-meeting-id</meetingID>
      <internalMeetingID>a0715c95...</internalMeetingID>
      <createTime>1531241258036</createTime>
      <createDate>Tue Jul 10 16:47:38 UTC 2018</createDate>
      <voiceBridge>70066</voiceBridge>
      <dialNumber>613-555-1234</dialNumber>
      <attendeePW>ap</attendeePW>
      <moderatorPW>mp</moderatorPW>
      <running>true</running>
      <duration>0</duration>
      <hasUserJoined>true</hasUserJoined>
      <recording>false</recording>
      <hasBeenForciblyEnded>false</hasBeenForciblyEnded>
      <startTime>1531241258074</startTime>
      <endTime>0</endTime>
      <participantCount>5</participantCount>
      <listenerCount>2</listenerCount>
      <voiceParticipantCount>3</voiceParticipantCount>
      <videoCount>2</videoCount>
      <maxUsers>0</maxUsers>
      <moderatorCount>1</moderatorCount>
      <attendees>
        <attendee>
          <userID>w_ftcrsyuh44oj</userID>
          <fullName>Max Mustermann</fullName>
          <role>MODERATOR</role>
          <isPresenter>true</isPresenter>
          <isListeningOnly>false</isListeningOnly>
          <hasJoinedVoice>true</hasJoinedVoice>
          <hasVideo>true</hasVideo>
          <clientType>HTML5</clientType>
        </attendee>
      </attendees>
      <metadata/>
      <isBreakout>false</isBreakout>
    </meeting>
  </meetings>
</response>

Ingen møder fundet

<response>
  <returncode>SUCCESS</returncode>
  <meetings/>
  <messageKey>noMeetings</messageKey>
  <message>no meetings were found on this server</message>
</response>

Svarfelter pr. møde

Felt Type Beskrivelse
meetingName String Mødets viste navn.
meetingID String Eksternt møde-ID som angivet ved oprettelsen.
internalMeetingID String Internt unikt ID genereret af serveren.
createTime Number Oprettelsestidsstempel i millisekunder siden Unix-epoken.
createDate String Menneskeligt læsbar streng for oprettelsesdato.
voiceBridge String Voice bridge-nummer til lydkonferencer.
dialNumber String Telefonnummer til opkaldsdeltagelse for mødet.
attendeePW String Deltageradgangskode. Kun til stede, hvis den er sat. Forældet i BBB 3.0.
moderatorPW String Moderatoradgangskode. Kun til stede, hvis den er sat. Forældet i BBB 3.0.
running Boolean Om mødet er aktivt i øjeblikket.
duration Number Maksimal varighed i minutter. 0 betyder ubegrænset.
hasUserJoined Boolean Om mindst én bruger er tilsluttet mødet.
recording Boolean Om optagelse er aktiveret for dette møde.
hasBeenForciblyEnded Boolean Om mødet blev tvangsafsluttet via API'et.
startTime Number Starttidsstempel i millisekunder siden Unix-epoken.
endTime Number Sluttidsstempel. 0 hvis mødet stadig kører.
participantCount Number Nuværende antal deltagere i mødet.
listenerCount Number Antal deltagere i lyttefunktion.
voiceParticipantCount Number Antal deltagere med aktiv lyd.
videoCount Number Antal aktive webkameraer.
maxUsers Number Maksimalt antal tilladte deltagere. 0 betyder ubegrænset.
moderatorCount Number Antal moderatorer, der i øjeblikket er i mødet.
attendees List Liste over alle deltagere med detaljer såsom userID, fullName, role og mediestatus.
metadata Object Alle brugerdefinerede metadata-parametre sendt under kaldet create.
isBreakout Boolean Om dette er et grupperum.
parentMeetingID String Møde-ID for det overordnede møde. Kun til stede for grupperum.
sequence Number Sekvensnummer for grupperummet. Kun til stede for grupperum.
freeJoin Boolean Om deltagere frit kan vælge dette grupperum. Kun til stede for grupperum.
breakoutRooms List Liste over grupperums-ID'er. Kun til stede, når mødet har aktive grupperum.

Deltagerdetaljer

Hver post i attendees-listen indeholder følgende felter:

Felt Type Beskrivelse
userID String Unik intern brugeridentifikator.
fullName String Deltagerens viste navn.
role String Deltagerens rolle: MODERATOR eller VIEWER.
isPresenter Boolean Om deltageren aktuelt er præsentatør.
isListeningOnly Boolean Om deltageren deltog i kun-lytning-tilstand.
hasJoinedVoice Boolean Om deltageren har tilsluttet sig lydkonferencen.
hasVideo Boolean Om deltageren har et aktivt webcam.
clientType String Klienttypen brugt af deltageren (f.eks. HTML5).

Deltagerlisten, der returneres af getMeetings, inkluderer alle brugere, der nogensinde har deltaget i mødet, inklusive dem der allerede har forladt det. Dette adskiller sig fra getMeetingInfo, som kun returnerer brugere, der aktuelt er forbundet. Husk dette, når du beregner antallet af aktive deltagere.

Typiske anvendelser

  • Admin-dashboard — vis en oversigt over alle kørende møder og deres deltagerantal.
  • Kapacitetsplanlægning — beregn det samlede antal aktive deltagere på tværs af alle møder på serveren.
  • Overvågning — identificer møder uden en moderator eller møder, der oplever problemer.
  • Automatisk oprydning — find møder, der har eksisteret i lang tid uden nogen deltagere.

Tips og bedste praksis

Da getMeetings returnerer alle møder på serveren (ikke kun kørende), bør du filtrere resultaterne efter feltet running, hvis du kun har brug for aktive møder.

Svaret indeholder følsomme oplysninger såsom deltagernavne, bruger-ID'er og adgangskoder. Kald altid dette endpoint kun fra server-side-kode. Udsæt det aldrig for klient-side-applikationer eller slutbrugere.

Der er ingen understøttelse af paginering for dette endpoint. På servere med mange samtidige møder kan svaret blive meget stort og påvirke ydeevnen. Overvej at cache resultaterne, hvis du foretager hyppige forespørgsler.

Ofte stillede spørgsmål

Nej. Det returnerer alle møder, der aktuelt findes på serveren, inklusive møder, der er blevet oprettet, men endnu ikke har deltagere. Filtrér efter feltet running, hvis du kun har brug for aktive møder.

getMeetings returnerer et sammendrag af alle møder på serveren, mens getMeetingInfo returnerer detaljerede oplysninger om et enkelt specifikt møde. Derudover inkluderer deltagerlisten i getMeetings alle brugere, der nogensinde har deltaget (inklusive dem, der har forladt mødet), mens getMeetingInfo kun viser aktuelt forbundne brugere.

Nej. Disse felter medtages kun i svaret, hvis de blev sat under oprettelsen af mødet og ikke er tomme. Siden BigBlueButton 3.0 er disse felter forældede og ofte ikke til stede.

Kontrollér feltet isBreakout. Hvis det er true, er mødet et grupperum og vil indeholde yderligere felter såsom parentMeetingID, sequence og freeJoin. Hovedmødet vil have en liste breakoutRooms med ID'erne på dets grupperum.

Nej. BigBlueButton-API'et understøtter ikke paginering for getMeetings. Alle møder returneres i ét enkelt svar. For servere med et meget stort antal møder bør du overveje at implementere caching eller kalde endepunktet sjældnere for at reducere serverbelastningen.