как в советнике/индикаторе обработать сообщения Mailbox?

 

никак не могу найти способ чтобы в советнике обработать сообщения из mailbox (вкладка в термминале куда приходят сообщения в основном от DC)

Ситуация очень типичная и жизненная - в случае тех.проблем на сервере, DC за какое-то время до перезагрузки присылает типовое письмо. Очень хочется чтобы советник мог его прочесть и среагировать.

PS/ речь про MT 4, про пятый даже и не копал

 
Maxim Kuznetsov:

никак не могу найти способ чтобы в советнике обработать сообщения из mailbox (вкладка в термминале куда приходят сообщения в основном от DC)

Ситуация очень типичная и жизненная - в случае тех.проблем на сервере, DC за какое-то время до перезагрузки присылает типовое письмо. Очень хочется чтобы советник мог его прочесть и среагировать.

PS/ речь про MT 4, про пятый даже и не копал

Найдете ответ - напишите в теме
 
Maxim Kuznetsov:

никак не могу найти способ чтобы в советнике обработать сообщения из mailbox (вкладка в термминале куда приходят сообщения в основном от DC)

Ситуация очень типичная и жизненная - в случае тех.проблем на сервере, DC за какое-то время до перезагрузки присылает типовое письмо. Очень хочется чтобы советник мог его прочесть и среагировать.

PS/ речь про MT 4, про пятый даже и не копал

Скорее всего почтовый ящик нужно делать текстовым (выбрать соответствующего почтового клиента). Просматриваем mailbox в блокноте для уверенности, что всё читабельно. Далее работаем с текстовым файлом - для МТ это не проблема

Если речь зашла про встроенную в МТ почту - то присоединяюсь к вопросу)

 
new-rena:

Скорее всего почтовый ящик нужно делать текстовым (выбрать соответствующего почтового клиента). Просматриваем mailbox в блокноте для уверенности, что всё читабельно. Далее работаем с текстовым файлом - для МТ это не проблема

Если речь зашла про встроенную в МТ почту - то присоединяюсь к вопросу)

речь именно про встроенную почту.

для внешней я бы написал модуль читатель/парсер на C и всего делов

 
Maxim Kuznetsov:

речь именно про встроенную почту.

для внешней я бы написал модуль читатель/парсер на C и всего делов

Ну так напиши на С копировщик из папки почты терминала в папку файлов терминала и оттуда читай средствами MQL.
 
Alexey Viktorov:
Ну так напиши на С копировщик из папки почты терминала в папку файлов терминала и оттуда читай средствами MQL.

сугубо визуально - там письма зашифрованы или по крайней мере имеют сжатую часть. То есть небольшой бинарный заголовок неизвестного формата и неизвестной длины, а дальше сжатое или зашифрованное тело письма.

хотя...отправителя и тему там видно в этом самом заголовке - может на выходных выделю время, напишу чего. Ещё и формат этого заголовка реверсить придётся :(

 

буду писать модуль для чтения почты.

API и возможности можно обсуждать здесь или в моём блоге https://www.mql5.com/ru/blogs/post/658940

к обсуждению API для частичного чтения почты терминала
к обсуждению API для частичного чтения почты терминала
  • 2016.01.22
  • Maxim Kuznetsov
  • www.mql5.com
Предлагаю к обсуждению интерфейс (API) для чтения почты терминала из советников и индикаторов. Предупреждаю сразу - можно будет только узнать факт прихода почты и прочесть имя отправителя и тему...
 
Maxim Kuznetsov:

сугубо визуально - там письма зашифрованы или по крайней мере имеют сжатую часть. То есть небольшой бинарный заголовок неизвестного формата и неизвестной длины, а дальше сжатое или зашифрованное тело письма.

хотя...отправителя и тему там видно в этом самом заголовке - может на выходных выделю время, напишу чего. Ещё и формат этого заголовка реверсить придётся :(

Для начала можно руками скопировать 1 файл и посмотреть что прочтётся из него.
 
Alexey Viktorov:
Для начала можно руками скопировать 1 файл и посмотреть что прочтётся из него.

файл письма бинарный, то есть не текстовый. Работать с двоичными файлами на Mql - то ещё удовольствие :-) Да к тому-же чтобы его просто взять и скопировать всё равно надо писать внешнюю функцию на С (Mql не позволяет работать вне ограждённых каталогов).

если посмотреть на файлы писем, то  видно что имя отправителя и тема сообщения всегда находятся по фиксированному смещению, а далее идёт или сжатое или шифрованное тело письма. Прочесть Subj,From оттуда совсем несложно

 
Maxim Kuznetsov:

файл письма бинарный, то есть не текстовый. Работать с двоичными файлами на Mql - то ещё удовольствие :-) Да к тому-же чтобы его просто взять и скопировать всё равно надо писать внешнюю функцию на С (Mql не позволяет работать вне ограждённых каталогов).

если посмотреть на файлы писем, то  видно что имя отправителя и тема сообщения всегда находятся по фиксированному смещению, а далее идёт или сжатое или шифрованное тело письма. Прочесть Subj,From оттуда совсем несложно

Да я-то не против, просто если не прочтётся как хочется, то и писать копировщик нет смысла. Ну а если уверен что получится, тогда дерзай... :)))

Удачи.

 
Maxim Kuznetsov:

Ещё и формат этого заголовка реверсить придётся :(

Вы бы поаккуратнее на форуме MQ про реверс-инжиниринг их программы говорили, что ли )

Ренат все читает и запоминает.