Kraken\Channel\Model\Zmq\ZmqModel::sendMessage PHP Method

sendMessage() private method

private sendMessage ( string $id, string $type, mixed $message = null, integer $flags = self::MODE_STANDARD ) : boolean
$id string
$type string
$message mixed
$flags integer
return boolean
    private function sendMessage($id, $type, $message = null, $flags = self::MODE_STANDARD)
    {
        if (($frame = $this->getFrame($id, $type, $message)) === null) {
            return false;
        }
        $isConnected = $this->isStarted();
        if (!$isConnected) {
            if ($this->flags['enableBuffering'] === true && ($flags & self::MODE_BUFFER_OFFLINE) === self::MODE_BUFFER_OFFLINE) {
                return $this->buffer->add($frame);
            }
        } else {
            if ($type === self::COMMAND_HEARTBEAT) {
                if ($this->socket->closed === false && $this->socket->send($frame)) {
                    $this->connectionPool->registerHeartbeat($id);
                    return true;
                }
            } else {
                if ($this->flags['enableHeartbeat'] === false || $this->flags['enableBuffering'] === true && ($flags & self::MODE_BUFFER_ONLINE) === self::MODE_BUFFER_ONLINE || $this->connectionPool->validateConnection($id) === true) {
                    $this->socket->send($frame);
                    $this->connectionPool->registerHeartbeat($id);
                    return true;
                }
            }
        }
        return false;
    }