private function processExceptionFromRPCCall(ClientSession $session, InvocationMessage $msg, $registration, \Exception $e) { if ($e instanceof WampErrorException) { $errorMsg = ErrorMessage::createErrorMessageFromMessage($msg); $errorMsg->setErrorURI($e->getErrorUri()); $errorMsg->setArguments($e->getArguments()); $errorMsg->setArgumentsKw($e->getArgumentsKw()); $errorMsg->setDetails($e->getDetails()); $session->sendMessage($errorMsg); return; } $errorMsg = ErrorMessage::createErrorMessageFromMessage($msg); $errorMsg->setErrorURI($registration['procedure_name'] . '.error'); $errorMsg->setArguments([$e->getMessage()]); $errorMsg->setArgumentsKw($e); $session->sendMessage($errorMsg); }