SPIA to full length response
[brisk.git] / web / Obj / sac-a-push.phh
index bc0ea87..cd0d6ab 100644 (file)
@@ -404,10 +404,18 @@ class Sac_a_push {
                 if (isset($this->s2u[intval($sock)])) {
                     $user = $this->s2u[intval($sock)];
                     $response = $user->rd_cache_get();
+                    if (($this->curtime - $user->lacc) <= (EXPIRE_TIME_RD / 2)) {
+                        $user->ping_req = FALSE;
+                    }
                     if ($response == "") {
                         $content = "";
                         $user->stream_main($content, $get, $post, $cookie);
-                        
+                        printf("[%s] [%d] [%d]\n", $user->name, $user->lacc, $this->curtime);
+                        if ($content == "" && $user->ping_req == FALSE 
+                            && (($this->curtime - $user->lacc) > (EXPIRE_TIME_RD / 2))) {
+                            $content = $user->stream_ping();
+                            $user->ping_req = TRUE;
+                        }
                         if ($content == "" && $user->rd_kalive_is_expired($this->curtime)) {
                             $content = $user->stream_keepalive();
                         }
@@ -417,7 +425,8 @@ class Sac_a_push {
                     }
                     
                     if ($response != "") {
-                        echo "SPIA: [".substr($response, 0, 60)."...]\n";
+                        // echo "SPIA: [".substr($response, 0, 60)."...]\n";
+                        echo "SPIA: [".$response."...]\n";
                         $response_l = mb_strlen($response, "ASCII");
                         $wret = @fwrite($sock, $response);
                         if ($wret < $response_l) {