ve yine dll ve market - sayfa 10

 
Alexsandr San :

yeniden yazarsan?

ya da öylesine

evet, bu bir ikili dosyayla çalışıyor, ancak genel bir web hizmeti bağlamında değil)

Maalesef bu kodun faydasını görmüyorum

 
Alexsandr San :

Teşekkür ederim! çok anlayışlıyım bir insan neyi kör etmeye çalışıyor

bok gibi! :) 401, ibm web sunucusu tarafından döndürülen hata numarasıdır, MQL5 yuvasında aramamalısınız

 
Nikolai Karetnikov :

yapılmış

Profilinizdeki Hizmet Masası bağlantısına gitmeniz ve orada yeni bir bilet oluşturmanız gerekir. "Finansal işlemler sınırlıdır" gibi bir konu seçin. Ve oraya ikinci bir hesap oluşturarak bilmeden kaynağın kurallarını ihlal ettiğini yazın. Ve kaldırılmasını isteyin. Silinecek hesaba bir bağlantı ekleyin.

 
Nikolai Karetnikov :

Aryom, Hesap birleştirme sağlanıyor mu?

Numara.

 

ve bir şey daha, WebRequest belgesi , bu işlevin 2 çeşidi olduğunu belirtir. İlki Content-Type ile çalışır: application/x-www-form-urlencoded, bu açıkça uygun değildir, çünkü IBM, "Content-Type: application/json" başlığını ister

Ama şu ana kadar anlayabildiğimiz tek şey bu.

 

bişeyim var

sadece dosya ses vermiyor

anlık görüntü4

 //+------------------------------------------------------------------+
//|                                                   WebRequest.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link        "https://www.mql5.com"
#property version    "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
   string cookie= NULL ,headers;
   char    post[],result[];
   headers = "curl -X POST -u" "apikey:GR1bb3zVMs9fcNKL6pA9-5zj9ptWliCu6eh9oupUnpZB" ;
   headers = "Content-Type: application/json" ;
   headers = "Accept: audio/wav" ;
   headers = "data" "{\"text\":\"hello world\"}" ;
//output hello_world.wav ^

   string url= "https://api.eu-gb.text-to-speech.watson.cloud.ibm.com" ;
//--- для работы с сервером необходимо добавить URL "https://finance.yahoo.com"
//--- в список разрешенных URL (Главное меню->Сервис->Настройки, вкладка "Советники"):
//--- обнуляем код последней ошибки
   ResetLastError ();
//--- загрузка html-страницы с Yahoo Finance
   int res= WebRequest ( "GET" ,url,cookie, NULL , 500 ,post, 0 ,result,headers);
   if (res==- 1 )
     {
       Print ( "Ошибка в WebRequest. Код ошибки  =" , GetLastError ());
       //--- возможно, URL отсутствует в списке, выводим сообщение о необходимости его добавления
       MessageBox ( "Необходимо добавить адрес '" +url+ "' в список разрешенных URL во вкладке 'Советники'" , "Ошибка" , MB_ICONINFORMATION );
     }
   else
     {
       if (res== 200 )
        {
         //--- успешная загрузка
         PrintFormat ( "Файл успешно загружен, размер %d байт." , ArraySize (result));
         //PrintFormat("Заголовки сервера: %s",headers);
         //--- сохраняем данные в файл
         int filehandle= FileOpen ( "output hello_world.wav" , FILE_WRITE | FILE_BIN );
         if (filehandle!= INVALID_HANDLE )
           {
             //--- сохраняем содержимое массива result[] в файл
             FileWriteArray (filehandle,result, 0 , ArraySize (result));
             //--- закрываем файл
             FileClose (filehandle);
           }
         else
             Print ( "Ошибка в FileOpen. Код ошибки =" , GetLastError ());
        }
       else
         PrintFormat ( "Ошибка загрузки '%s', код %d" ,url,res);
     }
  }
//+------------------------------------------------------------------+
 

yüklenen bu

anlık görüntü5

anlık görüntü6

anladığım kadarıyla - adresle ilgili bir şeye ihtiyacınız var, bir şekilde değiştirin

anlık görüntü7

 
Nikolai Karetnikov :

)))

fikir, terminalin ve evrenin sesli kontrolünde değil))), ancak sesli yönlendirmede. Örneğin, her beş dakikada bir, bir setten bir enstrümanın fiyatını seslendirin veya sesli uyarı ayarlama yeteneğine sahip olun. Terminalde benzer bir "Uyarılar" var, tetiklendiklerinde kısa bir ses sinyali çalınıyor ve hangi enstrümana atıfta bulunduğunu anlamak imkansız.

Görev çok zor, neredeyse imkansız çünkü hedefin sınırları belli değil. Danışman tam olarak ne demeli? Yalnızca fiyat ise, daha sonra birleştirilen bir dizi sesli numarayı entegre edebilirsiniz. Danışmanın doğru zamanda açacağı mikrofona özel bir hatırlatıcı kaydetme seçeneğine ihtiyacınız varsa, bu o kadar da imkansız değil, AMA ÇOK ZOR. Neredeyse şüpheli bir çip için çok fazla enerji harcamanın anlamını görmüyorum.

Ne yapmak istediğiniz konusunda daha spesifik olun.
 

Makale ücretinin tartışmaya katılanlar arasında dağıtılması ve yazarların tümünün belirtilmesi gerektiğini anlıyorum :-)

 
Çok sayıda ses dosyası kaydedersiniz, kaynakları Expert Advisor'a entegre edersiniz, bunların dahil edilmesini olay modeliyle ilişkilendirirsiniz ve hepsi bu kadar. Web isteğine gerek yok.