       prevMethod = sendTeardownReq;
     }
 
+    private function keepAlive(event:TimerEvent):void {
+      sendGetParamReq();
+    }
+
     private function onAsyncError(event:AsyncErrorEvent):void {
       bcTimer.stop();
       ErrorManager.dispatchError(728);

      prevMethod = sendPlayReq;
    }

    private function sendPauseReq():void {
      if (!this.supportCommand("PAUSE")) {
        ErrorManager.dispatchError(825, null, true);

    private var digestNC:uint = 1;

    private var bcTimer:Timer;
    private var kaTimer:Timer = new Timer(KEEPALIVE);
    private var connectionBroken:Boolean = false;

    private var nc:NetConnection = null;
