Проверьте количество активных встреч в Big Blue Button из командной строки

Я хочу проверить, сколько активных совещаний есть на сервере BBB в любой момент времени из командной строки. я пытался

$ bbb-conf --сеть

но никуда не деться. Я также проверил количество активных подключений к портам 80 и 443.

$ netstat -anp | группа :443 | УСТАНОВЛЕНА grep | туалет -л

но я не уверен, что могу доверять этой цифре.

Я знаю, что могу использовать вызов isMeetingRunning из API, но я просто ищу командную строку.

Любые идеи были бы хорошы


person Mark Kenny    schedule 15.04.2020    source источник


Ответы (1)


Следующий скрипт bash, который можно запустить из командной строки на том же компьютере, что и сервер BigBlueButton, обработает ответ на вызов BBB API getMeetings.

#!/bin/bash

APICallName="getMeetings"
APIQueryString=""

X=$( bbb-conf --secret | fgrep URL: )
APIEndPoint=${X##* }
Y=$( bbb-conf --secret | fgrep Secret: )
Secret=${Y##* }
S=$APICallName$APIQueryString$Secret
Checksum=$( echo -n $S | sha1sum | cut -f 1 -d ' ' )
if [[ "$APIQueryString" == "" ]]
then
        URL="${APIEndPoint}api/$APICallName?checksum=$Checksum"
else
        URL="${APIEndPoint}api/$APICallName?$APIQueryString&checksum=$Checksum"
fi
wget -q -O - "$URL" | grep -o '<meetingID>' | wc -w

Проверено на живой машине BBB.

Примечание:

  • APICallName и APIQueryString можно изменить, чтобы обеспечить интерфейс для других вызовов API BBB. См. https://docs.bigbluebutton.org/dev/api.html.

  • Командная строка sha1sum выведет другой результат, если к ее входу будет добавлена ​​новая строка. По этой причине вместо echo используется echo -n.

  • В последней строке скрипт обрабатывает вывод XML из вызова API очень простым способом, просто подсчитывая количество вхождений тега <meetingID>. Более сложная обработка, вероятно, потребует синтаксического анализа XML.

person ybazlov    schedule 20.04.2020