从命令行检查 Big Blue Button 中的活动会议数量

Mar*_*nny 0 bigbluebutton

我想随时从命令行检查 BBB 服务器上有多少活动会议。我试过了

$ bbb-conf --network

但没有得到任何地方。我还检查了端口 80 和 443 的活动连接数

$ netstat -anp | grep :443 | grep 成立 | wc -l

但我不确定我是否可以相信这个数字。

我知道我可以使用isMeetingRunning来自 API的调用,但我只是在寻找命令行。

任何想法,将不胜感激

yba*_*lov 5

以下 bash 脚本可以在与 BigBlueButton 服务器相同的机器上从命令行运行,它将处理对 BBB APIgetMeetings调用的响应。

#!/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
Run Code Online (Sandbox Code Playgroud)

在现场 BBB 机器上测试。

笔记:

  • APICallNameAPIQueryString可以被修改,以提供接口,其他BBB API调用。请参阅https://docs.bigbluebutton.org/dev/api.html

  • sha1sum如果将换行符附加到其输入,命令行将输出不同的结果。这就是echo -n使用而不是的原因echo

  • 在最后一行,脚本以一种非常简单的方式处理 API 调用的 XML 输出,只计算<meetingID>标签出现的次数。更复杂的处理可能需要解析 XML。