Привет, Jocimar,
Спасибо за этот замечательный учебник. У меня возникли проблемы с выполнением части 2, и если возможно, я хотел бы получить вашу помощь. Я работаю под Windows 10 и без WSL.
Я установил mosquitto и запустил службу, набрав (из папки установки):
net start mosquitto
и служба успешно запускается на порту по умолчанию 1883. Далее, чтобы найти broker_ip я запускаю:
ipconfig/all
и получаю соответствующий IP-адрес, который в дальнейшем используется для перенаправления сетевого трафика с 80 или 443 (я пробовал оба) на broker_ip, найденный с помощью вышеуказанной команды. Перенаправление происходит при наборе следующей команды:
netsh interface portproxy add v4tov4 listenport=443 listenaddress="what should be put here?" connectport=1883 connectaddress=" my broker_ip"
Затем я заполняю скрипт портом и broker_ip и выполняю его. Я получаю код ошибки 5272, что означает "Не удалось подключиться к удаленному хосту". Конечно, я включил broker_ip во вкладку Expert options.
Может быть, я что-то упускаю во всем этом процессе?
Заранее спасибо,
Dr.Pip
Может быть, я что-то упускаю во всем этом процессе?
Заранее спасибо,
Dr.Pip
Здравствуйте, DrPip83
Я заметил, что вы задавали этот вопрос сорок дней назад. Я не видел его раньше. Сейчас я получил сообщение от администратора по поводу вашего вопроса. Прошу прощения за столь долгую задержку.
К делу: какой скрипт вы используете для подключения? Не могли бы вы поделиться им? Во второй части у нас **нет функционального соединения** с брокером. До этого момента у нас были только пакеты, создающие заглушки, первые классы, которые мы прототипировали. Мы экспериментировали с соединениями "внеполосно", скажем так, используя только внутренние скрипты, не распространяемые на вложениях. Только сейчас мы реализуем реальные соединения в так называемом операционном поведении протокола (или в действиях, согласно стандарту).
Так что, не могли бы вы поделиться своим скриптом? Может быть, я смогу помочь с ним или поделиться с вами скриптами, которые мы использовали для этой цели.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Опубликована статья Разработка MQTT-клиента для MetaTrader 5: методология TDD:
Статья представляет собой первую попытку разработать нативный MQTT-клиент для MQL5. MQTT - это протокол обмена данными по принципу "издатель - подписчик". Он легкий, открытый, простой и разработан так, чтобы его было легко внедрить. Это позволяет применять его во многих ситуациях.
Несмотря на то, что протокол должен был отличаться надежностью, быстротой и дешевизной из-за технологических ограничений и высоких сетевых затрат, от него требовалось обеспечить качественную доставку данных с непрерывным отображением данных о сеансе (session awareness), что позволяло бы ему справляться с ненадежным или даже прерывистым Интернет-соединением.
Будучи двоичным протоколом, MQTT очень эффективен с точки зрения требований к памяти и обработке. Любопытно, что самый маленький пакет MQTT размером всего в два байта!
Так как протокол работает по принципу "издатель/подписчик" (pub/sub), он, в отличие от основанных на принципе "запрос/ответ", является двунаправленным. Другими словами, как только соединение клиент/сервер установлено, данные могут передаваться от клиента к серверу и от сервера к клиенту в любое время без необходимости предварительного запроса, в отличие от HTTP WebRequest. Как только данные поступают, сервер немедленно пересылает их получателям. Эта особенность является краеугольным камнем обмена данными в реальном времени, поскольку она позволяет добиться минимальных задержек между конечными точками. Некоторые поставщики заявляют о задержке порядка миллисекунд.
Автор: Jocimar Lopes