Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex Flex,如何从连接到我的流的远程用户获取对等ID?_Apache Flex_Video_Stream_Chat_P2p - Fatal编程技术网

Apache flex Flex,如何从连接到我的流的远程用户获取对等ID?

Apache flex Flex,如何从连接到我的流的远程用户获取对等ID?,apache-flex,video,stream,chat,p2p,Apache Flex,Video,Stream,Chat,P2p,我正在创建一个p2p Cirrus视频聊天我当前的问题是如何自动连接到订阅服务器,订阅服务器连接到我的流。在谷歌搜索之后,我发现我可以使用下一个结构来完成: var clientObject:Object = new Object(); clientObject.onPeerConnect = function(callerns:NetStream):Boolean{ retur

我正在创建一个p2p Cirrus视频聊天我当前的问题是如何自动连接到订阅服务器,订阅服务器连接到我的流。在谷歌搜索之后,我发现我可以使用下一个结构来完成:

var clientObject:Object = new Object();
                    clientObject.onPeerConnect = function(callerns:NetStream):Boolean{              

                        return true;
                    }
我的溪流:

发送流:

private function initSendNetStream():void{
                trace("initSendStream");

                sendStream = new NetStream(nc,NetStream.DIRECT_CONNECTIONS);
                sendStream.addEventListener(NetStatusEvent.NET_STATUS, netStatusEvent);
                var clientObject:Object = new Object();
                clientObject.onPeerConnect = function(callerns:NetStream):Boolean{              

                    return true;
                }

                sendStream.client = clientObject;
                sendStream.attachCamera(cam);
                sendStream.attachAudio(mic);
                sendStream.publish('video');
                log('Net Stream publish start');
            }
和接收流:

private function addContact(peerID:String):void {


            var nc2:NetConnection = new NetConnection();
            nc2.addEventListener(NetStatusEvent.NET_STATUS, function (event:NetStatusEvent):void {
                trace('NetConnection status event (2): ' + event.info.code);
                var receiveNS:NetStream = new NetStream(nc2, /*ContactPeerID.text*/ peerID);
                receiveNS.addEventListener(NetStatusEvent.NET_STATUS, netStatusEvent);
                receiveNS.play('video');

                var video:Video = new Video();
                video.attachNetStream(receiveNS);

                var uic:UIComponent = new UIComponent();
                uic.width = 320;
                uic.height = 240;
                uic.addChild(video);
                uic.toolTip = txtData.selectedItem.name;
                VideoStack.addChild(uic);

                //Clean ContactPeerID form
                ContactPeerID.text = '';
            });
            nc2.connect(SERVER_ADDRESS+DEVELOPER_KEY);              
        }           
我的想法是在这个结构中添加联系人功能:

 var clientObject:Object = new Object();
                        clientObject.onPeerConnect = function(callerns:NetStream):Boolean{              

                            return true;
                        } 
然而,为了做到这一点,我应该检测并接收订户的ID,将其放入函数中我的第二个问题-如何做到这一点?我正试图用远程共享对象来做到这一点,但我不知道在我的例子中这个结构应该是什么样子


希望有人能帮我解决这个问题。提前谢谢你

我不确定您要实现什么样的p2p连接体系结构。 但是,为了找出连接的对等方的ID,您可以尝试以下方法:

callerns.farID
在onPeerConnect函数中