meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
cron [2023/07/25 14:21] – [Cron Scripts] johnnycron [2025/12/07 02:41] (current) – [Script purposes] 108.63.126.75
Line 1: Line 1:
 ====== Cron ====== ====== Cron ======
  
-ITFlow comes with an array of PHP scripts that are meant to be executed automatically using Cron. The operation of scripts via Cron guarantees that actions are carried out autonomously in the backgroundeliminating the need for a user to be logged in.+ITFlow includes PHP scripts designed to run automatically via [[https://en.wikipedia.org/wiki/Cron|Cron]]ensuring background tasks execute without user interacton. We strongly recommend configuring Cron.
  
-==== Cron Activation & Key ==== 
  
-For the sole execution of the scripts by Cronnot by an arbitrary user or bot visiting the pagesit is necessary to activate Cron and generate a Cron Key.+==== Script purposes ==== 
 +All Cron scripts are now in the ''/cron/'' directory. There are several different cron scripts, each with a particular purpose: 
 +  * ''cron.php'' - Daily maintenance tasks (cleanupauto-closing resolved tickets, alerts, recurring invoices, etc.) 
 +  * ''mail_queue.php'' - Sends e-mails (SMTP) 
 +  * ''ticket_email_parser.php'' - Reads e-mails and creates/updates tickets (IMAP) 
 +  * ''domain_refresher.php'' - Updates domain details (expiry, records, whois) 
 +  * ''certificate_refresher.php'' - Updates certificate details (expiry, issuer, key)
  
-Sign in to ITFlow with administrative rights. Proceed to **Settings** > **Alerts**: +   
-  * Enable cron +==== Crontab file ====
-  * Generate a Cron Key+
  
-==== Cron Scripts ==== +To setup the scheduled tasks, copy the [[https://github.com/itflow-org/itflow-install-script/blob/main/cron.d-itflow|provided cron.d-itflow file]] to your system's cron directory (e.g. ''/etc/cron.d/itflow'').
-The following scripts should be added to your Cron:+
  
-  * ''php /full/path/to/**cron.php** **[KEY]**'' -- This should run daily at 2 AM for tasks such as cleanup, alerts, recurring invoices, and more. +//NB: If installed using the automated script after v25.10, this will have been done for you.//
-  * ''php /full/path/to/**cron_ticket_email_parse.php** **[KEY]**'' -- Set to run every minute: it interprets tickets +
-  * ''php /full/path/to/**cron_mail_queue.php** **[KEY]**'' -- This should run every minute: it's used for in-app email dispatching+
  
-Please note: Swap [KEY] with your actual Cron key, and don't include the brackets [ ] 
  
 +==== Cron Activation ====
 +You must then activate Cron within ITFlow:
 +
 +  * Sign in to ITFlow with administrative rights.
 +  * Navigate to **Settings** > **Notifications**
 +  * Enable Cron