/** * Handle internal service according to 8/MMI specification * * @param string $frame * @param Zmsg $msg */ public function service_internal($frame, $msg) { if ($frame == "mmi.service") { $name = $msg->last(); $service = $this->services[$name]; $return_code = $service && $service->workers ? "200" : "404"; } else { $return_code = "501"; } $msg->set_last($return_code); // Remove & save client return envelope and insert the // protocol header and service name, then rewrap envelope $client = $msg->unwrap(); $msg->push($frame); $msg->push(MDPC_CLIENT); $msg->wrap($client, ""); $msg->set_socket($this->socket)->send(); }