一尘不染

如何使用Red5 API识别发布者和消费者

jsp

public boolean connect(IConnection conn, IScope scope, Object[] params)
    {
            IClient client = conn.getClient();
            log.info( "app connect " + conn.getClient().getId() );
            client.setAttribute( "stamp", new Long( 0 ) );
        return true;
    }

每次在Red5
Server的我的自定义应用程序中连接客户端时,都会调用此方法,因此有一种方法可以识别客户端是订户(消费者,查看者)还是发布者(在我的服务器上流式传输的用户)。

最好的


阅读 190

收藏
2020-06-10

共1个答案

一尘不染

要禁止或允许发布或订阅用户,可以在appStart回调方法中使用这些方法:

  • registerStreamPlaybackSecurity
  • registerStreamPublishSecurity

有关更多信息,请查看:

http://dl.fancycode.com/red5/api/org/red5/server/adapter/MultiThreadedApplicationAdapter.html

我正在使用jRuby,这样做很容易:

registerStreamPlaybackSecurity do |scope, name, start, len, flush|
  false # no playback allowed
end
registerStreamPublishSecurity do |scope, name, mode|
  rand(1) % 1 == 0 # publishing (recording) sometimes allowed, sometimes no
end
2020-06-10