[Red5devs] onBWDone error while connecting to FMS with a Java client.
Ryan Christensen [drawcode]
ryan at drawcode.com
Wed Jul 16 21:24:45 PDT 2008
Not sure if this is what you are asking but in actionscript code to connect
to Red5 you do need an OnBWDone method. Here is a connection class I use:
package drawlogic.as3.net
{
import flash.events.EventDispatcher;
import flash.net.NetConnection;
import flash.net.ObjectEncoding;
import flash.events.NetStatusEvent;
import flash.events.SecurityErrorEvent;
import com.blitzagency.xray.logger.XrayLog;
import drawlogic.as3.util.OutputPanel;
import drawlogic.as3.net.Red5Connection;
import drawlogic.as3.net.Events.Red5ConnectionEvent;
public class Red5Connection extends EventDispatcher
{
private var nc:NetConnection;
private var uri:String;
private var log:XrayLog;
public function Red5Connection()
{
// xray if needed
log = new XrayLog();
// create the netConnection
nc = new NetConnection();
// set it's client/focus to this
nc.client = this;
// add listeners for netstatus and security issues
nc.addEventListener(NetStatusEvent.NET_STATUS,
netStatusHandler);
nc.addEventListener(SecurityErrorEvent.SECURITY_ERROR,
securityErrorHandler);
// set the encoding to AMF0 - still waiting for AMF3
to be implemented on Red5
nc.objectEncoding = ObjectEncoding.AMF0;
}
public function connect():void
{
if(getURI().length == 0)
{
trace("please provide a valid URI connection
string", "URI Connection String missing");
return;
}else if(nc.connected)
{
trace("You are already connected to " +
getURI(), "Already connected");
return;
}
nc.connect(getURI());
}
public function close():void
{
nc.close();
}
public function setURI(p_URI:String):void
{
uri = p_URI;
}
public function getURI():String
{
return uri;
}
public function getConnection():NetConnection
{
return nc;
}
public function getConnected():Boolean
{
return nc.connected;
}
* public function onBWDone():void
{
// have to have this for an RTMP connection
}
*
private function netStatusHandler(event:NetStatusEvent):void
{
log.debug("netStatus", event.info.code);
var e:Red5ConnectionEvent;
switch(event.info.code)
{
case "NetConnection.Connect.Failed":
e = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_FAILED, false, false,
event.info.code);
dispatchEvent(e);
break;
case "NetConnection.Connect.Success":
e = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_SUCCESS, false, false,
event.info.code);
dispatchEvent(e);
break;
case "NetConnection.Connect.Rejected":
e = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_REJECTED, false, false,
event.info.code);
dispatchEvent(e);
break;
case "NetConnection.Connect.Closed":
e = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_CLOSED, false, false,
event.info.code);
dispatchEvent(e);
break;
case "NetConnection.Connect.InvalidApp":
e = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_INVALIDAPP, false, false,
event.info.code);
dispatchEvent(e);
break;
case "NetConnection.Connect.AppShutdown":
e = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_APPSHUTDOWN, false, false,
event.info.code);
dispatchEvent(e);
break;
}
if(event.info.code !=
"NetConnection.Connect.Success")
{
// I dispatch DISCONNECTED incase someone
just simply wants to know if we're not connected'
// rather than having to subscribe to the
events individually
e = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_DISCONNECTED, false, false,
event.info.code);
dispatchEvent(e);
}
}
private function
securityErrorHandler(event:SecurityErrorEvent):void
{
log.debug("nc error", event.text);
var e:Red5ConnectionEvent = new
Red5ConnectionEvent(Red5ConnectionEvent.RED5_SECURITYERROR, false, false,
event.text);
dispatchEvent(e);
}
}
}
On Wed, Jul 16, 2008 at 9:15 PM, Posco, TSO Fung Po <posco.tso at gmail.com>
wrote:
> Hi There,
>
> I am a newbie to red5 and that's why i am seeking for help here : ).
>
> I downloaded a java client written by peter from
> (
> http://ptrthomas.wordpress.com/2008/04/19/how-to-record-rtmp-flash-video-streams-using-red5/#comment-12974
> )
> and run it with red5.jar from
> (http://rtmprip.jtvlan.org/downloads/rtmprip.jar).
>
> when I run this java client to record a sample.flv from a Flash Media
> Development Server, I got following error:
> 12:00:31.690 [AnonymousIoService-4] DEBUG
> o.r.s.n.r.codec.RTMPProtocolEncoder - Writing result: Status code:
> NetConnection.Call.Failed desc: Method onBWDone without arguments not
> found level: error
>
> I think this is the main error that causes FMS to terminate the
> connection, how can I solve this type of problem? by overwriting
> onBWDone?
>
> Thanks in advance!!
> --
> Yogi Berra - "A nickel ain't worth a dime anymore."
>
> _______________________________________________
> Red5devs mailing list
> Red5devs at osflash.org
> http://osflash.org/mailman/listinfo/red5devs_osflash.org
>
--
--
Ryan Christensen
drawk.design and develop < drawk.com | drawcode.com >
ryan - @ - drawk - dot - com - 480 . 612 . 4957
< platforms: .net-c#-ironpython | python | flash-flex-air-as3 | ruby/rails |
silverlight-dlr | es4 | javascript | c/c++ | lua | java | php >
< content: css | xhtml | jquery-dojo | xml-rpc-atom-rss-rest | standards |
syndication | blogs | mobile/sms | microformats >
< datastores: ms sql | oracle | mysql | postgresql | cloud | distributed |
couchdb >
[ drawcode.com | drawk.com | drawlogic.com ]
[ mcsd c#.net | mcsd c++ | mcad.net | java | flash ]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://osflash.org/pipermail/red5devs_osflash.org/attachments/20080716/1e816eee/attachment-0001.html
More information about the Red5devs
mailing list