config = $config; } public function subscribe(Pusher $pusher, LoopInterface $loop): void { $dsn = $this->config->get('webSocketZeroMQSubscriberDsn') ?? self::DSN; $context = new ZMQContext($loop); /** @var EventEmitter $pull */ /** @var SocketWrapper $pull */ $pull = $context->getSocket(ZMQ::SOCKET_PULL); $pull->bind($dsn); $pull->on('message', [$pusher, 'onMessageReceive']); } }