public function publish($topicUri, $payload, $exclude = [], $eligible = [])
    {
        if (null !== $this->logger) {
            $this->logger->info(sprintf(
                'Publish in %s',
                $topicUri
            ));
        }

        $data = array(Protocol::MSG_PUBLISH, $topicUri, $payload, $exclude, $eligible);
        $this->send($data);
    }