diff --git a/app/realtime.php b/app/realtime.php index febe3679c6..7ed13f04cd 100644 --- a/app/realtime.php +++ b/app/realtime.php @@ -83,10 +83,10 @@ $server->onWorkerStart(function (int $workerId) use ($server, $register, $stats, $start = time(); $redisPool = $register->get('redisPool'); - /** - * Sending current connections to project channels on the console project every 5 seconds. - */ Timer::tick(5000, function () use ($server, $stats, $realtime) { + /** + * Sending current connections to project channels on the console project every 5 seconds. + */ if ($realtime->hasSubscriber('console', 'role:member', 'project')) { $payload = []; foreach ($stats as $projectId => $value) { @@ -104,6 +104,25 @@ $server->onWorkerStart(function (int $workerId) use ($server, $register, $stats, ] ]; + $server->send($realtime->getSubscribers($event), json_encode($event['data'])); + } + /** + * Sending test message for SDK E2E tests every 5 seconds. + */ + if ($realtime->hasSubscriber('console', 'role:guest', 'tests')) { + $payload = ['response' => 'WS:/v1/realtime:passed']; + + $event = [ + 'project' => 'console', + 'roles' => ['role:guest'], + 'data' => [ + 'event' => 'test.event', + 'channels' => ['tests'], + 'timestamp' => time(), + 'payload' => $payload + ] + ]; + $server->send($realtime->getSubscribers($event), json_encode($event['data'])); } }); diff --git a/src/Appwrite/Utopia/Response.php b/src/Appwrite/Utopia/Response.php index a6ec6891cc..527c529087 100644 --- a/src/Appwrite/Utopia/Response.php +++ b/src/Appwrite/Utopia/Response.php @@ -45,7 +45,7 @@ use Appwrite\Utopia\Response\Model\Mock; // Keep last use stdClass; /** - * @method Response public function setStatusCode(int $code = 200) + * @method Response setStatusCode(int $code = 200) */ class Response extends SwooleResponse {