重播Ping回AS3

时间:2013-11-08 15:42:50

标签: actionscript-3 flash

我只是在动作脚本3中制作IRC,但现在我对Socket有一点问题。连接很好,但是当我不重播ping时我会断开连接,所以我的问题是如何在AS3中创建pong?我确实搜索了一些教程,但是我找不到所有的,有些解释并不理解。如果有人能帮助我的好方法。 谢谢!

就我而言:

var servername:String = "irc.example.com"; 

var portnumber:int = 6667; 

var _sock:Socket = new Socket(); 

_sock.addEventListener(Event.CONNECT, onConnect);

_sock.addEventListener(ProgressEvent.SOCKET_DATA, onSocketData);

_sock.connect(servername, portnumber);

function onConnect(evt:Event):void {     
    tServerInfo.text = "Verbinden met " + servername;     
}

function onSocketData(event:ProgressEvent):void {     
    var socketdata:String;     
        while(_sock.bytesAvailable) {         
            socketdata = _sock.readUTFBytes(_sock.bytesAvailable);
            tServerInfo.text = socketdata;         
        }     
}

1 个答案:

答案 0 :(得分:0)

Ping或者保持活跃的消息并不特别;它们只是正常的消息,按计划发送。您只需要设置一个Timer来发送ping消息(可以是任何东西)每个,比如15秒左右,以便保持Socket打开,否则它将关闭,因为它没有被使用。

当你阅读这些消息时,你还需要一些代码来忽略这些消息,但这很简单。