BigBlueButton 如何将聊天消息保存到外部服务器

BigBlueButton How save chat messages to external server

我想将 BigBlueButton 中的所有聊天消息保存到外部服务器上的数据库中。

我看到 BigBlueButton 没有 API。

我能否在外部服务器上使用某种方法获取消息,或者我必须更改 BBB 方法?

谢谢

BBB 没有 API 来获取聊天数据,但是我们可以解析聊天消息并将其传递给其他 server/API。

BBB 将聊天数据存储在 events.xml 文件中,类似这样

<event timestamp="1321843915276" module="CHAT" eventname="PublicChatEvent">
    <locale>en</locale>
    <message>&amp;#60;/message&amp;#62;</message>
    <color>0</color>
    <sender>c</sender>
  </event>

您可以编写小脚本在会议结束后读取 events.xml 并使用 curl 将各个会议的聊天数据推送到您的 DB 或暴露的服务。

希望这对您有所帮助。

迟到的答案,但这就是你的做法。 有多种方法可以做到这一点。

取决于您使用的版本。 我假设您使用的是最新的 0.9。

在你的外部服务器上,你有一个应用程序监听 BBB 服务器发送的 redis 消息,并将它们存储到数据库中。 当然,您需要收听正确的频道。 查找 redis,看看如何实现它。

另一种方法是转到以下服务 ChatService.java,然后搜索以下功能 sendPublicMessage。 在它里面,所有的变量和数据都已经被提取出来了。所以你可以从那里连接到你的数据库并添加条目。

还有其他方法可以做到这一点。我个人建议您挂接外部服务器以监听 redis,因为这似乎是对 BigBlueButton 功能最简单且侵入性最小的方式。