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

时间:2015-09-22 11:48:10

标签: bigbluebutton

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

我看到BigBlueButton没有API。

我可以在外部服务器上使用某种方法获取消息,还是必须更改BBB方法?

谢谢

2 个答案:

答案 0 :(得分:1)

BBB没有API来获取聊天数据,但我们可以解析并将聊天消息传递给其他服务器/ 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或公开服务。

希望这会有所帮助。

答案 1 :(得分:1)

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

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

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

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

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