public function handlePreHelloMessage(MessageEvent $event)
{
/** @var HelloMessage $msg */
$msg = $event->message;
$session = $event->session;
$session->setHelloMessage($msg);
try {
$realm = $this->getRealm($msg->getRealm());
$realm->addSession($session);
} catch (\Exception $e) {
// TODO: Test this
$errorUri = "wamp.error.unknown";
$description = $e->getMessage();
if ($e instanceof InvalidRealmNameException || $e instanceof RealmNotFoundException) {
$errorUri = "wamp.error.no_such_realm";
}
$session->abort(['description' => $description], $errorUri);
}
}