Внедрить клиент MQTT, используя PHP для подключения брокера MQTT - PullRequest
0 голосов
/ 12 апреля 2020

Я новичок в мире PHP, столкнулся с проблемой при подключении к MQTT.

Я использую библиотеку phpMQTT. php и использую IP-адрес для подключения к брокер MQTT. Я пытаюсь опубликовать sh в MQTT-брокере, получаю ошибку в phpMQTT. php файл библиотеки

Ошибка: stream_socket_client (): невозможно подключиться к tcp: / /...*:8083 (Тайм-аут соединения)

столкнувшись с проблемой в следующем коде:

if ($this->cafile) {
            $socketContext = stream_context_create(["ssl" => [
                "verify_peer_name" => true,
                "cafile" => $this->cafile
                ]]);
            $this->socket = stream_socket_client("tls://" . $this->address . ":" . $this->port, $errno, $errstr, 60, STREAM_CLIENT_CONNECT, $socketContext);
        } else {
            $this->socket = stream_socket_client("tcp://" . $this->address . ":" . $this->port, $errno, $errstr, 60, STREAM_CLIENT_CONNECT);
        }

1 Ответ

0 голосов
/ 12 апреля 2020

Из библиотеки phpMQTT. php
(источник https://github.com/bluerhinos/phpMQTT/blob/master/phpMQTT.php),
необходимо установить следующие данные, как показано в исходном коде.

/* sets the broker details */  

function broker($address, $port, $clientid, $cafile = NULL){
    $this->address = $address;
    $this->port = $port;
    $this->clientid = $clientid;
    $this->cafile = $cafile;
}

Если у вас работает брандмауэр - откройте также порт, который вы используете.

...