Websocket как сделать? - страница 15

 
Алексей Барбашин:

Нашел в своих закромах:

Передача целочисленных переменных не требует маршалинга

Тут передача структуры, тоже маршалинга не потребовалось. Вот сама структура:

И только для передачи строчного значения потребовался маршалинг:

Это все я реализовывал на МТ4. То есть если бы вчера заглянул в этот старый код то может и увидел свою вчерашнюю ошибку. Огромное спасибо Владимиру за то, что обратил на нее внимание и помог исправить.

ну я про это и пишу, что простые типы без проблем можно сделать, со сложными типами придется повозиться

но там глубже проблема - вызов .Net из MQL4 не будет работать со сложными библиотеками классов, Вы не сможете обеспечить все как static вызовы, решение банальное - dll экспорт из .Net должен запустить новый поток "чистого .Net" и потом внутри dll можно обрабатывать обмен с этим потоком

в общем увлекательное приключение это когда с чистого листа ))))


Алексей Барбашин:

Рекомендую воспользоваться DllExport, ты увидишь насколько все кардинально проще становится! :)

не проще, а то же самое - один в один, тем более у меня и так все настроено и работает уже

но проще просто на MQL5 писать и не париться, а с МТ4 организовать только обмен ;)

 

Может потому что мы сокет не закрываем и он новый создает постоянно когда я компилю?

 

удалил библиотеку нажал пересобрать, после этого заработало


 
Алексей Барбашин:

А единичка - это что?

это сколько в очереди сообщений
 
Алексей Барбашин:

Ну теперь можно попробовать снова переключиться на консольное приложение и попытаться получить данные от того брокера, от которого ты хотел. Где его страничка с описанием api?

вот https://cloudapidoc.github.io/API_Docs/v1/ws/en/#general

и вот https://www.huobi.com.ru/ru-ru/user/api/

WebSocket API
  • cloudapidoc.github.io
wss://{HOST}/ws Host structure Authenticated APIs:www.xxxx.com Public APIs: www.xxxx.com/api Data All return data of websocket APIs needs to be unzipped. Library Recommend: ws by Node.js Topic type topic description : { ethbtc, ltcbtc, etcbtc, bccbtc ... } Heartbeat If the type of request message is not , websocket server will response...
 
Алексей Барбашин:


Корневой URL-адрес:

www.huobi.com.ru/api

ключ 02e47f17-259d6a49-edrfhh5h53-4c700

 

Вот есть это

вот есть еще их глобальный сайт

https://huobiglobal.zendesk.com/hc/en-us/articles/900000014146-Huobi-Global-will-include-two-new-subscription-topics-in-existing-Websocket-API

но что-то не работает

           Socket = new WebSocket("wss://www.huobi.com.ru/api/ws/v2");
            //Socket = new WebSocket("wss://api.huobi.pro/ws/v2");

 

я попробовал и /v1 и без, все равно не открывает сокет

Я ключ удалил, он видимо нужен для REST

 
Алексей Барбашин:

А касаемо websocket на mql, то до сих пор этого никому не удалось реализовать. .

Есть в маркете некая библиотека.
Для 4 
 и для 5 .

Вроде запрет на вызов DLL для продуктов из маркета еще не отменен, поэтому я бы не был таким категоричным

Торговую библиотеку Easy websocket library for mql4
Торговую библиотеку Easy websocket library for mql4
  • www.mql5.com
An easy to use websocket library for MQL4. It supports: ws:// and wss:// (secure websocket) text and binary data automatic ping-pong handling on protocol level (keep-alive protocol hand shake) automatic fragmented message handling on protocol level (large data transfer enabled) ================================================== ATTENTION: ...
 
Mikhail Dovbakh:

Есть в маркете некая библиотека.
Для 4 
 и для 5 .

Вроде запрет на вызов DLL для продуктов из маркета еще не отменен, поэтому я бы не был таким категоричным

сложно предположить, что там индонезиец выложил, у них и нигерийцев , да и вроде и у  индийцев что не код, то какой новый фокус 

ну а так, Вы нашли уже #include <wsmql.mqh>  https://www.mql5.com/ru/search#!keyword=wsmql.mqh

а что делать предлагаете с переименованием скаченного файла: Please rename the from MQL5 MARKET downloaded file to wsmqllib.ex5   /  Please rename the from MQL5 MARKET downloaded file to wsmqllib.ex4

профиль продавца чистый лист, 2 кода в КБ, неких загадочных манипуляций на кодами Младена ))))

Причина обращения: