我想从命令行随时检查 BBB 服务器上有多少活动会议。我努力了
$ bbb-conf --网络
但无处可去。我还检查了端口 80 和 443 的活动连接数
$ netstat -anp | grep :443 | grep 已建立 | wc -l
但我不确定我是否可以相信这个数字。
我知道我可以使用isMeetingRunning
来自 API 的调用,但我只是在寻找命令行。
任何想法,将不胜感激
我想从命令行随时检查 BBB 服务器上有多少活动会议。我努力了
$ bbb-conf --网络
但无处可去。我还检查了端口 80 和 443 的活动连接数
$ netstat -anp | grep :443 | grep 已建立 | wc -l
但我不确定我是否可以相信这个数字。
我知道我可以使用isMeetingRunning
来自 API 的调用,但我只是在寻找命令行。
任何想法,将不胜感激
以下 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
在现场 BBB 机器上测试。
笔记:
APICallName
和APIQueryString
可以修改以提供与其他 BBB API 调用的接口。请参阅https://docs.bigbluebutton.org/dev/api.html
如果将换行符附加到其输入中,命令行将sha1sum
输出不同的结果。这就是echo -n
使用而不是echo
.
在最后一行中,脚本以一种非常简单的方式处理来自 API 调用的 XML 输出,只计算<meetingID>
标记的出现次数。更精细的处理可能需要解析 XML。