2026-03-08 17:37:22 -05:00 | | | //+------------------------------------------------------------------+
|
| | | //| 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
|
| | |
|
2026-03-10 06:38:32 -05:00 | | | #ifndef TBPWRRAPER_SRC_JOBS_MQH
|
| | | #define TBPWRRAPER_SRC_JOBS_MQH
|
| | |
|
2026-03-08 17:37:22 -05:00 | | | //+------------------------------------------------------------------+
|
| | | //| |
|
| | | //+------------------------------------------------------------------+
|
| | | #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);
|
| | | }
|
| | | //+------------------------------------------------------------------+
|
2026-03-10 06:38:32 -05:00 | | | #endif // TBPWRRAPER_SRC_JOBS_MQH
|