In order to operate, AutoView and Red5 use a protocol called RTMP to deliver live and recorded streaming video to the flash plugin. This protocol will require the client computers to be able to connect an addtional tcp/ip port, the default port is 1935. For a normal user on a home broadband connection this is unlikely to be a problem, however, in some corporate and college environments,
there may be firewall policies in place which limit the ability of computers to connect to anything other than a normal http webservices, typically port 80 and 8080 (though ocassionally, just 80).
Ideally, if these organisations are regularly accessing your services, then they should be advised to change their firewall policy to allow connections to the RTMP port on your Red 5/AutoView server. However, if this is not possible, then there are a number of steps which you can take to mitigate this problem.
Red5/AutoView can also operate using a protocol called RTMPT, this is a form of RTMP which is tunneled via HTTP. This form of RTMP is less efficient, is likely to use more bandwith and have a longer time lag. The flash plugin will automatically attempt to use RTMPT if the regular RTMP connection fails, however, this will only happen if the RTMP url Flash is attempting to connect to uses the default RTMP port, 1935. If you are using a non-standard
RTMP port, then a connection using RTMPT will not be attempted. If an RTMPT connection is attempted, Flash will only try to connect to the default HTTP port
80 (this behaviour is hard-wired into the flash plugin, we can't change it), so if you want RTMPT connections to work with your server, it is important for it to be configured so that RTMPT connections to this port are passed through to Red 5. However, it is likely that for a typical
single server set up, port 80 will already be in use for the regular http server.
Reverse Proxy
The simplest way to get the RTMPT connections to port 80 through to your Red 5 server is to use the reverse proxy capability of your regular http server to pass any RTMPT connection attempts it receives through to the Red5 server. For an Apache webserver, the following configuration directives will be required in the section of your server config which controls the Moodle virtual host (please change the host name to match your own):
ProxyRequests Off
<Directory proxy:*>
Order deny,allow
Allow from all
</Directory>
ProxyPass /fcs http://www.myserver.org:8088/fcs
ProxyPassReverse /fcs http://www.myserver.org:8088/fcs
ProxyPass /open http://www.myserver.org:8088/open
ProxyPassReverse /open http://www.myserver.org:8088/open
ProxyPass /close http://www.myserver.org:8088/close
ProxyPassReverse /close http://www.myserver.org:8088/close
ProxyPass /send http://www.myserver.org:8088/send
ProxyPassReverse /send http://www.myserver.org:8088/send
ProxyPass /idle http://www.myserver.org:8088/idle
ProxyPassReverse /idle http://www.myserver.org:8088/idle
Notes:
- If you have changed the default rtmpt.port property in the red5.properties file, you will need to substitute 8088 with the new setting.
- AutoView Module for Moodle version 2011042101 or better is recommended if you require reliable RTMPT access.
- Users may still experience a 1 minute delay before a successful connection is made even with this configuration in place. This is because the Flash plugin will always try to connect to the regular RTMP URL for up to 1 minute before falling back on other methods.