Skip to content

Commit ec84c36

Browse files
committed
Merge pull request Devristo#23 from DannyWilkerson/patch-2
Update chat.php
2 parents 2b967e4 + 50ace98 commit ec84c36

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

examples/chat.php

+18
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,20 @@ public function onMessage(WebSocketTransportInterface $user, WebSocketMessageInt
4646
}
4747
}
4848
}
49+
class ChatHandlerForUnroutedUrls extends WebSocketUriHandler {
50+
/**
51+
* This class deals with users who are not routed
52+
*/
53+
public function onConnect(WebSocketTransportInterface $user){
54+
//do nothing
55+
$this->logger->notice("User {$user->getId()} did not join any room");
56+
}
57+
public function onMessage(WebSocketTransportInterface $user, WebSocketMessageInterface $msg) {
58+
//do nothing
59+
$this->logger->notice("User {$user->getId()} is not in a room but tried to say: {$msg->getData()}");
60+
}
61+
}
62+
4963

5064
$loop = \React\EventLoop\Factory::create();
5165

@@ -56,9 +70,13 @@ public function onMessage(WebSocketTransportInterface $user, WebSocketMessageInt
5670

5771
// Create a WebSocket server
5872
$server = new WebSocketServer("tcp://0.0.0.0:12345", $loop, $logger);
73+
5974
// Create a router which transfers all /chat connections to the ChatHandler class
6075
$router = new \Devristo\Phpws\Server\UriHandler\ClientRouter($server, $logger);
76+
// route /chat url
6177
$router->addRoute('#^/chat$#i', new ChatHandler($logger));
78+
// route unmatched urls durring this demo to avoid errors
79+
$router->addRoute('#^(.*)$#i', new ChatHandlerForUnroutedUrls($logger));
6280

6381
// Bind the server
6482
$server->bind();

0 commit comments

Comments
 (0)