\SendDogAdvanced
Multi-service SendDog implementation
Synopsis
class SendDogAdvanced
extends SendDog
{
- // constants
- const API_IMPL_PATH = 'api/vendor/sms_services_APIs/';
- // Inherited constants from SendDog
- const URL_ME = '?module=senddog';
- const PID_PATH = 'exports/senddogrunning.pid';
- const SERVICES_LIB_PATH = 'api/vendor/senddog_classic_services/';
- // members
- protected array $servicesApiId = ;
- protected string $defaultSmsServiceId = '';
- protected string $defaultSmsServiceApi = '';
- protected bool $phpMailerOn = false;
- // Inherited members from SendDog
- protected array $altCfg;
- protected array $settings;
- protected $messages;
- protected $smsQueue;
- protected $ubConfig;
- protected array $servicesEnabled;
- protected array $activeServices;
- // methods
- public void __construct()
- protected void loadPHPMailerConfig()
- protected void getServicesAPIsIDs()
- protected array getImplementedSmsServicesApiNames()
- public array getSmsServicesConfigData()
- public string checkServiceNameExists()
- public getUBConfigInstance()
- public getSmsQueueInstance()
- public getUBMsgHelperInstance()
- public void editTelegramBotToken()
- public string renderTelegramConfigInputs()
- public void editPHPMailerConfig()
- public void renderPHPMailerConfigInputs()
- public void renderJSON()
- public string renderJQDT()
- public string renderAddForm()
- public string renderEditForm()
- public void addSmsService()
- public void editSmsService()
- public void deleteSmsService()
- public bool checkSmsServiceProtected()
- public integer smsProcessing()
- protected void actualSmsProcessing()
- public int phpMailProcessing()
- public string safeEscapeString()
- // Inherited methods from SendDog
- public void __construct()
- protected void loadAltCfg()
- protected void setOptions()
- protected void preloadSmsServicesLibs()
- protected void loadServicesConfigs()
- protected void initSmsQueue()
- protected void initMessages()
- protected void loadBaseConfig()
- public string getBaseUrl()
- protected string safeEscapeString()
- protected void loadTelegramConfig()
- public string renderTelegramContacts()
- protected string newContact()
- protected string renderTelegramConfigInputs()
- public string renderConfigForm()
- public void saveConfig()
- public int emailProcessing()
- public int smsProcessing()
- public void smsHistoryProcessing()
- public int telegramProcessing()
- public static bool|mixed|string cutInternationalsFromPhoneNum()
- public void renderBalanceInfo()
Hierarchy
Extends
Constants
Name | Value |
---|---|
API_IMPL_PATH | 'api/vendor/sms_services_APIs/' |
URL_ME | '?module=senddog' |
PID_PATH | 'exports/senddogrunning.pid' |
SERVICES_LIB_PATH | 'api/vendor/senddog_classic_services/' |
Members
protected
- $activeServices
—
array
Active services objects array - $altCfg
—
array
Contains system alter config as key=>value - $defaultSmsServiceApi
—
string
Placeholder for default SMS service API name - $defaultSmsServiceId
—
string
Placeholder for default SMS service ID - $messages
—
System message helper object placeholder - $phpMailerOn
—
bool
Placeholder for SMS_SERVICES_ADVANCED_PHPMAILER_ON alter.ini option - $servicesApiId
—
array
Placeholder for SMS services IDs => APINames - $servicesEnabled
—
array
Contains array of SMS services that will be loaded as serviceId=>serviceParams - $settings
—
array
Contains senddog config - $smsQueue
—
System SMS queue object placeholder - $ubConfig
—
null
Placeholder for UbillingConfig object
Methods
protected
- actualSmsProcessing() — Creates SMS service object from given API file name and processes the
- getImplementedSmsServicesApiNames() — Returns array with contents of API_IMPL_PATH dir with names of implemented services APIs
- getServicesAPIsIDs() — Fills up $SrvsAPIsIDs with IDs => APINames
- loadPHPMailerConfig() — Loads PHPMailer config from storage
public
- __construct()
- addSmsService() — Adds SMS service to DB
- checkServiceNameExists() — Returns true if SMS service with such name already exists
- checkSmsServiceProtected() — Check if SMS service is protected from deletion
- deleteSmsService() — Deletes SMS service
- editPHPMailerConfig() — Changes PHPMailer settings
- editSmsService() — Edits SMS service
- editTelegramBotToken() — Changes telegram bot token if differs from already stored
- getSmsQueueInstance() — Returns reference to UbillingSMS object
- getSmsServicesConfigData() — Gets SMS services config data from DB
- getUBConfigInstance() — Returns reference to UbillingConfig object
- getUBMsgHelperInstance() — Returns reference to UbillingMessageHelper object
- phpMailProcessing() — Loads and sends all email messages from system queue via PHPMailer
- renderAddForm() — Returns SMS srvice addition form
- renderEditForm() — Returns SMS service editing form
- renderJQDT() — Returns JQDT control and some JS bindings for dynamic forms
- renderJSON() — Renders JSON for JQDT
- renderPHPMailerConfigInputs()
- renderTelegramConfigInputs() — Returns set of inputs, required for Telegram service configuration
- safeEscapeString() — Dirty input data filtering
- smsProcessing() — Loads and sends all stored SMS from system queue Or checks statuses of already sent SMS
Inherited from SendDog
protected
- initMessages() — Inits message helper object for further usage
- initSmsQueue() — Inits system SMS queue object
- loadAltCfg() — Loads system alter config into protected property for further usage
- loadBaseConfig() — Loads basic send dog settings
- loadServicesConfigs() — Loads enabled SMS services data
- loadTelegramConfig() — Loads telegram config
- newContact() — Returns new contact marker
- preloadSmsServicesLibs() — Preloads all enabled SMS services libs and creates separate instances of each
- renderTelegramConfigInputs() — Returns set of inputs, required for SMS-Fly service configuration
- safeEscapeString() — Dirty input data filtering
- setOptions() — Loads required options and
public
- cutInternationalsFromPhoneNum() — Cuts international codes like "+38", "+7" from phone number This function might be supplemented with new country codes and refactored
- emailProcessing() — Loads and sends all email messages from system queue
- getBaseUrl() — Returns base module URL
- renderBalanceInfo() — Renders service balance or another misc info by its serviceId
- renderConfigForm() — Renders SendDog config interface
- renderTelegramContacts() — Renders current telegram bot contacts
- saveConfig() — Saves config in database
- smsHistoryProcessing() — Goes through sms_history table and checks statuses for messages
- smsProcessing() — Loads and sends all stored SMS from system queue
- telegramProcessing() — Loads and sends all stored Telegram messages from system queue