forked from nique_372/TbpWrraper
88 lines
3.3 KiB
MQL5
88 lines
3.3 KiB
MQL5
//+------------------------------------------------------------------+
| |||
//| Jobs.mqh |
| |||
//| Copyright 2025, Niquel Mendoza. |
| |||
//| https://www.mql5.com/es/users/nique_372 |
| |||
//+------------------------------------------------------------------+
| |||
#property copyright "Copyright 2025, Niquel Mendoza."
| |||
#property link "https://www.mql5.com/es/users/nique_372"
| |||
#property strict
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
#include "Base.mqh"
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
class CTbpJobs : public CTbpBase
| |||
{
| |||
public:
| |||
CTbpJobs(void) {}
| |||
~CTbpJobs(void) {}
| |||
| |||
//---
| |||
// Verifica si el software relacionado con un trabajo puede usarse.
| |||
// Resultado en GetLastJson()
| |||
bool GetJobSoftwareAccess(const string& user_id, const string& job_id);
| |||
| |||
//---
| |||
// Verifica si un usuario puede acceder a la entrega de un trabajo.
| |||
// Resultado en GetLastJson()
| |||
bool CheckJobDeliveryAccess(const string& user_id, const string& job_id);
| |||
};
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
bool CTbpJobs::GetJobSoftwareAccess(const string& user_id, const string& job_id)
| |||
{
| |||
//---
| |||
string res_headers;
| |||
char data[], result[];
| |||
string req_headers = "api-key: " + m_api_key + "\r\n";
| |||
const string url = StringFormat("%sjobs/?userId=%s&jobId=%s",
| |||
THE_BOT_PLACE_BASE_URL, user_id, job_id);
| |||
| |||
//---
| |||
const int request = WebRequest("GET", url, req_headers, m_timeout, data, result, res_headers);
| |||
const string msg = CharArrayToString(result);
| |||
| |||
//---
| |||
if(request != 200)
| |||
{
| |||
LogError(StringFormat("Fallo al mandar request, codigo = %d, result:\n%s", request, msg), FUNCION_ACTUAL);
| |||
return false;
| |||
}
| |||
| |||
//---
| |||
return m_json.Parse(msg);
| |||
}
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
bool CTbpJobs::CheckJobDeliveryAccess(const string& user_id, const string& job_id)
| |||
{
| |||
//---
| |||
string res_headers;
| |||
char data[], result[];
| |||
string req_headers = "api-key: " + m_api_key + "\r\n";
| |||
const string url = StringFormat("%sjob/%s?userId=%s",
| |||
THE_BOT_PLACE_BASE_URL, job_id, user_id);
| |||
| |||
//---
| |||
const int request = WebRequest("GET", url, req_headers, m_timeout, data, result, res_headers);
| |||
const string msg = CharArrayToString(result);
| |||
| |||
//---
| |||
if(request != 200)
| |||
{
| |||
LogError(StringFormat("Fallo al mandar request, codigo = %d, result:\n%s", request, msg), FUNCION_ACTUAL);
| |||
return false;
| |||
}
| |||
| |||
//---
| |||
return m_json.Parse(msg);
| |||
}
| |||
//+------------------------------------------------------------------+
|