Как идентифицировать издателей и потребителей с помощью Red5 API - PullRequest
0 голосов
/ 21 июля 2011
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, поэтому есть способ определить, является ли клиент подписчиком (потребитель, зритель) или издателем (пользователь, который транслирует на моем сервере). ).

Bests

1 Ответ

0 голосов
/ 07 августа 2011

Чтобы запретить или разрешить публиковать или подписывать пользователя, вы можете использовать эти методы внутри метода обратного вызова 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
...