bigbluebutton-Github/bigbluebutton-AppShare-server/conf/red5-core.xml

205 lines
7.6 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:lang="http://www.springframework.org/schema/lang"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.0.xsd">
<!-- This context holds all the networking: mina -->
<bean id="customEditorConfigurer"
class="org.springframework.beans.factory.config.CustomEditorConfigurer">
<property name="customEditors">
<map>
<entry key="java.net.SocketAddress">
<bean
class="org.apache.mina.integration.spring.InetSocketAddressEditor" />
</entry>
</map>
</property>
</bean>
<bean id="placeholderConfig"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="classpath:/red5.properties" />
</bean>
<!-- RTMP Handler -->
<bean id="rtmpHandler"
class="org.red5.server.net.rtmp.RTMPHandler">
<property name="server" ref="red5.server" />
<property name="statusObjectService" ref="statusObjectService" />
</bean>
<bean id="rtmpMinaConnManager"
class="org.red5.server.net.rtmp.RTMPConnManager">
</bean>
<!-- RTMP Mina IO Handler -->
<bean id="rtmpMinaIoHandler"
class="org.red5.server.net.rtmp.RTMPMinaIoHandler">
<property name="handler" ref="rtmpHandler" />
<property name="codecFactory" ref="rtmpCodecFactory" />
<property name="rtmpConnManager" ref="rtmpMinaConnManager" />
</bean>
<!-- RTMP Mina Transport -->
<bean id="rtmpTransport" class="org.red5.server.net.rtmp.RTMPMinaTransport" init-method="start" destroy-method="stop">
<property name="ioHandler" ref="rtmpMinaIoHandler" />
<property name="address" value="${rtmp.host}" />
<property name="port" value="${rtmp.port}" />
<property name="receiveBufferSize" value="${rtmp.receive_buffer_size}" />
<property name="sendBufferSize" value="${rtmp.send_buffer_size}" />
<property name="eventThreadsCore" value="${rtmp.event_threads_core}" />
<property name="eventThreadsMax" value="${rtmp.event_threads_max}" />
<property name="eventThreadsQueue" value="${rtmp.event_threads_queue}" />
<property name="eventThreadsKeepalive" value="${rtmp.event_threads_keepalive}" />
<!-- This is the interval at which the sessions are polled for stats. If mina monitoring is not
enabled, polling will not occur. -->
<property name="jmxPollInterval" value="1000" />
<property name="tcpNoDelay" value="${rtmp.tcp_nodelay}" />
</bean>
<!-- RTMP Mina Connection -->
<bean id="rtmpMinaConnection" scope="prototype"
class="org.red5.server.net.rtmp.RTMPMinaConnection">
<!-- Ping clients every X ms. Set to 0 to disable ghost detection code. -->
<property name="pingInterval" value="${rtmp.ping_interval}" />
<!-- Disconnect client after X ms of not responding. -->
<property name="maxInactivity" value="${rtmp.max_inactivity}" />
<!-- Max. time in milliseconds to wait for a valid handshake. -->
<property name="maxHandshakeTimeout" value="5000" />
</bean>
<bean id="rtmptConnManager"
class="org.red5.server.net.rtmp.RTMPConnManager">
</bean>
<!-- RTMPT Handler -->
<bean id="rtmptHandler"
class="org.red5.server.net.rtmpt.RTMPTHandler" autowire="byType">
<property name="codecFactory" ref="rtmpCodecFactory" />
</bean>
<!-- Use injection to store RTMPT handler in servlet -->
<bean id="rtmptServlet"
class="org.red5.server.net.rtmpt.RTMPTServlet">
<property name="handler" ref="rtmptHandler" />
<property name="rtmpConnManager" ref="rtmptConnManager" />
</bean>
<!-- RTMPT Connection -->
<bean id="rtmptConnection" scope="prototype"
class="org.red5.server.net.rtmpt.RTMPTConnection">
<!-- Ping clients every X ms. Set to 0 to disable ghost detection code. -->
<property name="pingInterval" value="${rtmp.ping_interval}" />
<!-- Disconnect client after X ms of not responding. -->
<property name="maxInactivity" value="${rtmp.max_inactivity}" />
<!-- Max. time in milliseconds to wait for a valid handshake. -->
<property name="maxHandshakeTimeout" value="5000" />
</bean>
<!-- Jetty RTMPT Container -->
<bean id="rtmpt.server"
class="org.red5.server.net.rtmpt.RTMPTLoader" init-method="init"
autowire="byType" />
<!-- Tomcat Container -->
<!--
<bean id="rtmpt.server" class="org.red5.server.net.rtmpt.TomcatRTMPTLoader" init-method="init" autowire="byType">
<property name="embedded">
<bean class="org.apache.catalina.startup.Embedded" />
</property>
<property name="engine">
<bean class="org.apache.catalina.core.StandardEngine">
<property name="name" value="rtmptServletHandler" />
<property name="defaultHost" value="localhost" />
</bean>
</property>
<property name="connector">
<bean class="org.apache.catalina.connector.Connector">
<property name="port"><value>8088</value></property>
<property name="enableLookups"><value>false</value></property>
</bean>
</property>
<property name="host">
<bean class="org.apache.catalina.core.StandardHost">
<property name="name" value="localhost" />
<property name="unpackWARs" value="false" />
<property name="autoDeploy" value="false" />
<property name="xmlValidation" value="false" />
<property name="xmlNamespaceAware" value="false" />
</bean>
</property>
<property name="context">
<map>
<entry>
<key><value>name</value></key>
<value>rtmptContext</value>
</entry>
<entry>
<key><value>path</value></key>
<value></value>
</entry>
<entry>
<key><value>docBase</value></key>
<value>/</value>
</entry>
</map>
</property>
<property name="wrapper">
<bean class="org.apache.catalina.core.StandardWrapper">
<property name="servletName" value="RTMPTServlet" />
<property name="servletClass" value="org.red5.server.net.servlet.RTMPTServlet" />
</bean>
</property>
<property name="mappings">
<map>
<entry>
<key><value>RTMPTServlet</value></key>
<value>/open/*</value>
</entry>
<entry>
<key><value>RTMPTServlet</value></key>
<value>/close/*</value>
</entry>
<entry>
<key><value>RTMPTServlet</value></key>
<value>/send/*</value>
</entry>
<entry>
<key><value>RTMPTServlet</value></key>
<value>/idle/*</value>
</entry>
</map>
</property>
</bean>
-->
<!-- Enable when you need it.
<bean id="rtmpProxyTransport" class="org.red5.server.net.rtmp.RTMPMinaTransport" init-method="start" destroy-method="stop">
<property name="ioHandler" ref="debugProxyIoHandler" />
<property name="address" value="${proxy.source_host}" />
<property name="port" value="${proxy.source_port}" />
<property name="receiveBufferSize" value="${rtmp.receive_buffer_size}" />
<property name="sendBufferSize" value="${rtmp.send_buffer_size}" />
<property name="eventThreadsCore" value="${rtmp.event_threads_core}" />
<property name="eventThreadsMax" value="${rtmp.event_threads_max}" />
<property name="eventThreadsQueue" value="${rtmp.event_threads_queue}" />
<property name="eventThreadsKeepalive" value="${rtmp.event_threads_keepalive}" />
</bean>
<bean id="debugProxyIoHandler"
class="org.red5.server.net.proxy.DebugProxyHandler">
<property name="codecFactory" ref="rtmpCodecFactory" />
<property name="forward" value="${proxy.destination_host}:${proxy.destination_port}" />
<property name="dumpTo" value="./webapps/dump/" />
</bean>
-->
</beans>