Отправка писем >10000. Сервер ДЦ блокирует отправку писем ( Помогите советом!

 

Добрый день, коллеги.

Прошу помочь с отправкой писем на мой личный почтовый адрес системой. 

Проблема в том, что советник отсылается большое количество писем (>10000), и сервер ДЦ блокирует отправку писем. 

Я написал код, дайте ему совю профессиональную оценку. Спасибо!:

//Описание переменных

   string TopicEmailSend       = ""; //Тема письма            

   string CurrentTopicEmailSend= ""; //Текущая тема письма
   string CurrentTextEmailSend = ""; //Текущий текст письма

   static datetime dayTime     = 0;

//Описание функции Init

   int init()
     {
  

      dayTime=iTime(Symbol(),PERIOD_D1,0);

...


//Описание функции Start

  int start()

     {
      if(iTime(Symbol(),PERIOD_D1,0)!=dayTime)
        {
         dayTime=iTime(Symbol(),PERIOD_D1,0);  // поймали начало нового дня, обнулим переменные для отправки письма
         TopicEmailSend=""; CurrentTopicEmailSend=""; CurrentTextEmailSend="";

        }

...

//Условие выполняется и отсылаем письмо с уведомлением

//Кусок кода:

       CurrentTopicEmailSend = "Est igra: "+Symbol();
       CurrentTextEmailSend  = "Para: "+Symbol();

       SendMail_(CurrentTopicEmailSend,CurrentTextEmailSend);

//Собственно сама функция отправки письма

   void SendMail_(string CurrentTopicEmailSend,string CurrentTextEmailSend)
     {
      if(TopicEmailSend!=CurrentTopicEmailSend)
        {
         TopicEmailSend=CurrentTopicEmailSend;
         SendMail(TopicEmailSend,CurrentTextEmailSend+", time server: "+Hour()+":"+Minute());
        }

     }

Суть в следующем, каждый час система запоминает переменную с отправленной темой.

И если письмо с такой темой уже отправлено, советник письмо по новой не должен отправлять, но он почему то отправляет. Вот не могу понять почему (((

Может подскажите ошибку, или поделитесь своим кодом отправки писем.

Спасибо, большое!

 
Попробуйте убрать Static в глобальной секции - в mql4 этот режим использования памяти реализован весьма "специфично", вследствие чего  dayTime=iTime(Symbol(),PERIOD_D1,0); в init, предположительно,  может игнорироваться. 
 
Tara, спасибо огромное ) А так, сам алгоритм написан грамотно?
 
блин убрал, этот чертов Static все равно проблема осталась. Поделитесь пожалуйста своим кодом. Как Вы контролируете массовую отправку писем? Спасибо.
 
rabanik:
блин убрал, этот чертов Static все равно проблема осталась. Поделитесь пожалуйста своим кодом. Как Вы контролируете массовую отправку писем? Спасибо.

Никак не контролирую, поскольку я писем не рассылаю. 

Фрагменты кода, вроде-бы корректны; но я Вам предлагаю выложить весь код, удалив, при необходимости "граальные" фрагменты (не увлекайтесь и обязательно укажите, что фрагмент удален), а лучше - просто весь код через SRC, либо в приложении.  

 

Сервер ДЦ блокирует отправку писем ( Помогите советом!

Как интересно...

Письма не проходят через сервер ДЦ, так, к сведению.

 
evillive:

Как интересно...

Письма не проходят через сервер ДЦ, так, к сведению.

ДЦ ни при чем. Отправка письма на каждом тике

Спам блокируется  почтовым сервером. 

 
а может использовать функцию Sleep() или функцию RefreshRates(); а ? Помогите плиззззззззз!
 
rabanik:
а может использовать функцию Sleep() или функцию RefreshRates(); а ? Помогите плиззззззззз!
лучше персмотреть условия, по которым сообщение отправляется.