Отправка сообщений в Telegram

 

Приветствую.

Пробовал двумя способами отправить сообщение в телеграм. 

Делал с помощью функции WebRequest() и библиотеки Telegram.mqh.

#include <Telegram.mqh>

input string URL="https://api.telegram.org/";
input string CnannelID="5863571114";
input string BotID="6007009741:AAGkZ51nG7l43AlAGLjnfVQlDtisDNSe9Z8";

CCustomBot bot;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   Comment("");
   EventSetTimer(1);
   PutButton("m",99,33,"MESSAGE");
   bot.Token(BotID);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutButton(string name,int x,int y,string text)
  {
   ObjectCreate(0,name,OBJ_BUTTON,0,0,0);
//--- установим координаты кнопки
   ObjectSetInteger(0,name,OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,name,OBJPROP_YDISTANCE,y);
//--- установим размер кнопки
   ObjectSetInteger(0,name,OBJPROP_XSIZE,65);
   ObjectSetInteger(0,name,OBJPROP_YSIZE,20);
//--- установим угол графика, относительно которого будут определяться координаты точки
   ObjectSetInteger(0,name,OBJPROP_CORNER,3);
//--- установим текст
   ObjectSetString(0,name,OBJPROP_TEXT,text);
//--- установим шрифт текста
   ObjectSetString(0,name,OBJPROP_FONT,"Arial");
//--- установим размер шрифта
   ObjectSetInteger(0,name,OBJPROP_FONTSIZE,7);
//--- установим цвет текста
   ObjectSetInteger(0,name,OBJPROP_COLOR,Red);
//--- установим цвет фона
   ObjectSetInteger(0,name,OBJPROP_BGCOLOR,White);
//--- установим цвет границы
   ObjectSetInteger(0,name,OBJPROP_BORDER_COLOR,Blue);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTimer()
  {
   string msg="Hello! I am bot";

   if(ObjectGetInteger(0,"m",OBJPROP_STATE)==1)
     {
      ResetLastError();
      
      int res=bot.SendMessage(CnannelID,msg);
      if(res!=0)
         Print("Error: ",GetErrorDescription(res));

      ObjectSetInteger(0,"m",OBJPROP_STATE,false);
     }
  }
//+------------------------------------------------------------------+
   int res=0;
   char post[];
   char result[];
   string headers;

   string text="Hello! I am bot";

   string url=URL+"bot"+BotID+"/sendMessage?chat_id="+CnannelID+"&text="+text;

   if(ObjectGetInteger(0,"m",OBJPROP_STATE)==1)
     {
      ResetLastError();
      res=WebRequest("GET",url,NULL,NULL,5000,post,0,result,headers);

      if(res<0)
        {
         Print(url);
         Print("Ошибка в WebRequest. Код ошибки  =",GetLastError());
        }

      ObjectSetInteger(0,"m",OBJPROP_STATE,false);
     }

Как я понял из сообщений об ошибках, сейчас телеграм блокирует эти функции. 

В первом случае ошибка: Telega EURUSD,H1: Error: HTTP request failed


Во втором:  ошибка  5203


Ручной запрос из адресной строки браузера проходит: 

https://api.telegram.org/bot1391025599:AAFOpgDWODKtgVcTEQgs8jB65n9UjO9XaMk/sendMessage?chat_id=1424319433&text=Hello!


Каким способом сейчас можно решить этот вопрос? Можно кусок рабочего кода

Документация по MQL5: Константы, перечисления и структуры / Коды ошибок и предупреждений / Ошибки компиляции
Документация по MQL5: Константы, перечисления и структуры / Коды ошибок и предупреждений / Ошибки компиляции
  • www.mql5.com
Ошибки компиляции - Коды ошибок и предупреждений - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Пересел с Windows 7 на 8 и все заработало
 
Andrey Kornishkin #:
Пересел с Windows 7 на 8 и все заработало

Наверное не долго будет работать

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Как долго еще можно будет сидеть на Win7?

Renat Fatkhullin, 2023.05.05 13:45

Все, что касается HTML отображений, будет отключено.

Далее версии на Windows 7/8 перестанут обновляться и потом перестанут приниматься серверами.

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