Red5 Plugin for Wildfire

I just installed the last version of the Red5 plugin (very cool btw!) and I noticed a very strange bug.

If I record a video message, it’'s not possible to replay it again. It is not the known bug described in the changelog regarding the black thumbnail.

Looking in the logfiles I saw the following in the info.log:

2007.05.22 12:18:55 libraryDirectory = /opt/openfire/plugins/red5/streams\

(notice the \ at the end).

TO see if that was the problem, I tried to do the following (I am using Debian)

cd /opt/openfire/plugins/red5

ln -s streams/ ‘‘streams’’

That means now I have a directory called streams\ (with the blackslash at the and) and it works (even if with the known bug of the black first message thumbnail)

Cheers,

mc

mc,

Thanks for the feedback. Just looked at the code

String libraryDirectory = getServletContext().getRealPath("/") + “streams
”;

It seems I was half-asleep when I did that. Funny enough it works on Windows cos “” and “/” are both valid. Will change it to

String libraryDirectory = getServletContext().getRealPath("/") + “streams/”;

for next release and that should fix it. One of these days, I will look through the laszlo code to find the thumbnail bug and fix that as well ;-).

thanks again for spotting this .

-dele

Hi all, I just installed Openfire and Red5 latest versions, and everything goes fine… except the “Send vMessage” in JWChat5. I got the audio/video recording window, but when I finish the recording pressing the Stop button, nothing happen - the destination user never receive a notification. I found all the .flv recordings under plugins/red5/streams folder, and I also detect that the following 2 lines are generated in Openfire error log everytime I stop to record a video message:

2007.08.29 17:45:13

Method getLength not found in org.red5.server.webapp.oflaDemo.Application@1662a95

Did anyone encounter this error?

TIA

Unfortunately, that error is not responsible. The videomessage recoder openlaszlo application is calling the remote method “getLength” that is not implemented in rtmp:/oflaDemo. I have just failed to reproduce this error. I always get a notification and can playback the message with the videomessage player. My error log also shows the missing getLength method errror.

The problem may be in JWChat. I assume that you running in the trusted zone with relaxed security and popups enabled.

-dele

hi dele,

from your blog I understand that there is a 0.0.10 release of your red5 plug-in.

however, on the beta plug-in page there is the old (delete 0.0.5) 0.0.9 version. could you please update the download list with your new version, so that we can try it out?

also, I’m kind of comparing your plug-in with ‘Openmeetings’, two questions are of my interest:

  1. are your plug-in is also using ‘Openlaszlo’? that would be most interesting, because if that is the case, the server is running Openfire + Jetty (embedded in Openfire) + Red5 + Openlaszlo. correct me if I’m wrong, I think Openlaszlo uses Tomcat, so you modified that?

  2. could you please give us an estimation of the bandwidth usage of the plugin, suppose there are 12 people in a meeting? Openmeetings has one: http://code.google.com/p/openmeetings/wiki/BandwidthNetworkSettings

best regards,

newjabber

red5 plugin version 0.0.10 should appear on the beta plugins page soon. I have submitted a copy to Jive to be uploaded. If it does not appear in the next few days, then download from here.

I am using Openlaszlo is solo mode to compile the red5 plugin video applications into flash SWF. The Openlaszlo .lzx source files can be found in the video\src folder. In other words, Openlaszlo for me is just a Flash compiler.

I really do not have any stats on the red5 plugin bandwidth. It will depend on the settings made on the plugin admin web page for RTMP/RTMPT media streams. The new screen sharing application is from Openmetings, so I expect it’s bandwidth to match Openmeetings.

-dele

Hello Dele,

Firstly, I want to thank-you for your posts and contributions done. I am new to Openfire/Spark/Red5.

I am looking to implement the Red plug-in for users who are behind firewalls or dont have person machine and so cannot use spark. I am on the following software versions:

a. Openfire - latest - 3.3.2

b. Spark - latest - 2.5.6

c. Red -latest -0.0.9

As i recently deployed it on a test server i realized the following:

  1. When you deploy Red5, it uses the admin port site (ie http://myserver.mycompany.com:9090/red5)

  2. The default setting of Red5 require the rtmp port 1935 open.

  3. My http bind address for Openfire is 8080 for now. I do want to make it 8000. This is because port 8080 is currently blocked on the firewall and 8000 is open. Save myself a request for the firewall admin.

  4. Spark is using port 443 to connect to the server. It’s working as i want it.

In order to implement this for my users, I have rename the red5 to imc and changed the port 9090 to port 80. Hence, now my site look like http://myserver.mycompany.com:80/imc.

When i install the red-plugin.jar for Spark and try to open or view audio/video message from spark, i get a nasty error. On review i realized it is still trying to get to port 9090. I dont know where it getting that port info from and neither i could find a way to configure the same to 80. Is this hard coded and if yes can you give me a fix?

Is it common to find the rtmp port 1935 open at most companies? I am unfamiliar with the protocol so please help me understand what is a common practice in regard with this protocol and port? Consider my users to be behind fairwalls at customer sites and may be trying to connect from a variety of locations (constantly changing). How can i give them an environment where they can have video chat usable from a large number of such customer sites. How can i test the port and give my firewall administrator clear instructions on what is needed here to achive webchat and video mail/chat sucessful?

Thanks in advance for your help,

PB

Thanks for the kind words,

When i install the red-plugin.jar for Spark and try to open or view audio/video message from spark, i get a nasty error. On review i realized it is still trying to get to port 9090. I dont know where it getting that port info from and neither i could find a way to configure the same to 80. Is this hard coded and if yes can you give me a fix?

Fortunately it isn’t. There is an Openfire system property called adminConsole.port. Create it if it does not exist and give it a value of 80.

As for RTMP, RTMPT (rtmp tunnelling) and port 1935, read this

On my public server at red5.4ng.net, I use port 80 for Openfire, 8080 for http-bind and 8000 for RTMPT. That meant a change to the red5.properties file and changing the video application in red5 to rtmpt://red5.4ng.net:8000/ofaDemo.

Hope this all helps,

-dele

This is very helpful. Would you be so kind to send me a copy of your red.properties file. I presume this is the one in D:\Program Files\Openfire\plugins\red5\WEB-INF.

My adminconsole.port is set to 80. Though i wish the for red5 webchat was different as i dont like exposing my admin console to the outside world since i do want to have the webchat avaliable from outside my firewall. Even with the admin port point to port 80, the red-plugin generates an error as it is looking for http://myserver.mycompany.com:9090/imc/video/videomailplayer.html?me=myuserid&ap p=imc&port=9090&server=myserver.mycompany.com&url=rtmp:/oflaDemo&date=Mon Sep 03 04:15:21 PDT 2007 instead of http://myserver.mycompany.com/imc/video/videomailplayer.html?me=myuserid&app=imc &port=80&server=myserver.mycompany.com&url=rtmp:/oflaDemo&date=Mon Sep 03 04:15:21 PDT 2007.

Thanks for the quick response.

Though i wish the for red5 webchat was different as i dont like exposing my admin console to the outside

I will consider that as a feature request for the next version.

red5.properties

rtmp.host_port=0.0.0.0:1935

rtmp.threadcount=4

debug_proxy.host_port=0.0.0.0:1936

proxy_forward.host_port=127.0.0.1:1935

rtmps.host_port=127.0.0.1:1945

http.host=0.0.0.0

http.port=5080

rtmpt.host=0.0.0.0

rtmpt.port=8000

webapp.contextPath=/

webapp.virtualHosts=*,localhost, localhost:5080, 127.0.0.1:5080

in Red5Plugin.java (openfire)

String webPort = JiveGlobals.getProperty(“adminConsole.port”, “9090”);

in Red5Plugin.java (Spark)

      String url = "http://" + SparkManager.getSessionManager().getServerAddress() + ":" + webServerPort + "/" + red5Name + "/video/videomailplayer.html?me=" + me  + "&app=" + red5Name + "&port=" + webServerPort + "&server=" + SparkManager.getSessionManager().getServerAddress() + "&url=" + red5URL + "&date=" + new Date();

-dele

Thanks Dele. It is now working.

What is the http bind port for w.r.t Red5?

Once the user has reviewed the video message, how do you delete the message after hearing it? Also the navigation bard in the message playback screen does not show the messages. It shows up only when you hoover over it.

I can see you have not read the readme file

The first time you get an audio/video message, the preview may appear blank on the thumbnail.

There is no way of deleting read video messages from clients or even the admin web page. The Admin user has to manually delete the recorded flv files from the streams folder.

-dele

Hey,

I downloaded red5 from the link and it looks like 0.0.9

Is there anywhere to get the .10 release ? We are very interested in the desktop screen capture

Thanks

Bryan Webb

You can download from here

-dele

Hi,

I have the same Problem.

I download this file from http://red5.4ng.net/red5.war , but it is the 0.0.9 not the 0.0.10 Release

I look in the plugin.xml from the war file and I found the version tag

<version>0.0.9</version>

and in the plugin.xml from the red5-plugin.jar I found this version tag

<version>0.0.5</version>

Sorry about that. I forgot to copy from ftp to www.

It should be openfire red5 plugin ver 0.0.10 and spark red5 plugin 0.0.6.

Its there now.

-dele

There is some problem while using JWChat, included into red5. In fact, if you send a message to somebody, using latin letters, its ok, but if you try to send something in Russian, the recepient will get something like “8DJK3”. Is there some way to fix it?

I have installed the plugin in the latest version of OpenFire (fresh install). Great work! But I have a question. When anyone shares his/her desktop and other user wants to see it, the image he/she sees is only 600 pixels wide (and the height is calculated to maintain the aspect ratio of the screen). Is there any way to increase this width? I have been searching through source code and .properties files and have found nothing related to the height and width of the desktop player. Maybe I must change the maximum bandwidht of the video? Thanks

The source code to the Openmeetings screen capture java code is CaptureScreen.java

The screen image height and width must be set somewhere in there. You might have to check out the code and recompile.

The html viewer is in screen/screen.html. It displays the image as created by the java application. You can add width and height attributes to the img tag, but I think you will only get bigger pixels.

function startShow() {
     username = getPageParameter('username', 'default');
     var fps = getPageParameter('fps', '100');
     setInterval("nextSlide()", eval(fps));
}
function nextSlide() {
     mympeg.src = "..

upload
myscreenRemote_" + username + “.jpg?date=” + new Date()

}

-dele

Dele, are you sure the file is available ? I am getting a 404 on any content under http://red5.4ng.net/.

I.e.:

# wget http://red5.4ng.net/red5.war

00:38:47 http://red5.4ng.net/red5.war

Resolving red5.4ng.net… 208.116.49.146

Connecting to red5.4ng.net|208.116.49.146|:80… connected.

HTTP request sent, awaiting response… 404 Not Found

00:38:47 ERROR 404: Not Found.