/////////////////////////////////////////////////////// // // SaherElm IT Center MQL5 Alert Library // -------------------------------------- // Name: XAlert // Description: provides Alerts abilities ... // // // Maintainer: // ------------ // Hadi Khazaee Asl (hadi_khazaee_asl@yahoo.com) // ////////////////////////////////////////////////////// // // Global Properties ... #property library #property copyright "Copyright 2023, SaherElm IT Center" #property link "https://www.saherelm.ir" #property version "1.00" #property strict // // START Inputs ... // input group "Alerts"; input bool enableAlerts = true; // Enable Alerts input bool logAlerts = true; // Log Alerts input bool terminalAlerts = false; // Terminal Alerts input bool mailAlerts = false; // Mail Alerts input bool pushAlerts = false; // Push Alerts // // END Inputs ... // // #include "x-saherelm.log.lib.mq5" // // START Global Definitions: Variables, Properties and etc ... // string alertPrefix = "X-Alert"; // // END Global Definitions: Variables, Properties and etc ... // // // START Provided Functions ... // // // Initial Library if required ... bool OnInInitAlertLibrary() { return false; } // // DeInitial Library if required ... void OnDeinitAlertLibrary() { } // // Attach Alert Prefix to Message ... string PrepareAlertMessage(string message) { // StringReplace(message, "\n", " | "); // StringConcatenate(message, alertPrefix, " > ", message); // return message; } // // Logging an Alert ... void LogAlert(string message) { // // Validate Args ... if (!enableAlerts || !logAlerts) { return; } // LogMessage(alertPrefix, message); } // // Terminal Alert ... void TerminalAlert(string message) { // // Validate Args ... if (!enableAlerts || !terminalAlerts) { return; } // // Prepare Message ... message = PrepareAlertMessage(message); // Send Terminal Alert ... Alert(message); } // // Mail Alert ... void MailAlert(string message) { // // Validate Args ... if (!enableAlerts || !mailAlerts) { return; } // // Send Mail Alert ... SendMail(alertPrefix, message); } // // Send Push Notification ... void PushAlert(string message) { // // Validate Args ... if (!enableAlerts || !pushAlerts) { return; } // // Prepare Message ... message = PrepareAlertMessage(message); // // Send Push Notification Alert ... SendNotification(message); } // // Alert Sending ... void SendAlert(string message) { // // Validate Args ... if (!enableAlerts) { return; } // // Log ... if (logAlerts) { LogAlert(message); } // // Terminal ... if (terminalAlerts) { TerminalAlert(message); } // // Mail ... if (mailAlerts) { MailAlert(message); } // // Push ... if (pushAlerts) { PushAlert(message); } } // // END Provided Functions ... //