私は、AS2 を使用した Flash にある単純なブロードキャスターと同様に、AS3 を使用した red5 とカスタム フレックス クライアントを使用していくつかのテストを行っていました。しかし、私はサーバーに機能を追加しました
public List<String> listaCanales(){
List<String> canales = new ArrayList<String>();
canales.add("Canal 1");
canales.add("Canal 2");
canales.add("Canal 3");
canales.add("Canal 4");
canales.add("Canal x");
return canales;
}
この関数は単なるテストです。アイデアは、red5 で作成したすべてのチャネルを最終的にスコープとして取得することです。
add beforeという小さな関数を作成しましたが、動作します
public int add(int a, int b){
return a+b;
}
add 関数を呼び出す方法は次のとおりです
connection = new NetConnection();
connection.connect("rtmp://"+servidor+"/"+red5App);
connection.addEventListener(NetStatusEvent.NET_STATUS, onConnected);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
var nr:Responder = new Responder(netResponderHandler);
connection.call("add", nr,5,6);
それは add 関数で動作しますが、listaCanales 関数を試してみると、netResponder ハンドラーが動作していないようです。
connection = new NetConnection();
connection.connect("rtmp://"+servidor+"/"+red5App);
connection.addEventListener(NetStatusEvent.NET_STATUS, onConnected);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
var nr:Responder = new Responder(netResponderHandler);
connection.call("listaCanales", nr,null);
また
connection.call("listaCanales", nr);
これが私のnetResponderHandlerです
protected function netResponderHandler(serverResult:Object):void
{
registros("Something happened");
//registros("The result is " + serverResult);
}