CiviMail requires unrelated "Mail Account" to be configured in order to process outgoing mail
A fresh installation of CiviCRM/Drupal10 with all outgoing mail settings properly configured. Run the "Send Scheduled Mailings" job. This error is logged:
Finished execution of Send Scheduled Mailings with result: Failure, Error message: The default mailbox has not been configured. You will find more info in the online system administrator guide
The code throwing the error is in CRM/Mailing/BAO/Mailing.php on line 2302:
if ($mode == NULL && CRM_Core_BAO_MailSettings::defaultDomain() == "EXAMPLE.ORG") {
// Using forceBackend=TRUE because WordPress sometimes fails to detect cron
throw new CRM_Core_Exception(ts('The <a href="%1">default mailbox</a> has not been configured. You will find <a href="%2">more info in the online system administrator guide</a>', [
1 => CRM_Utils_System::url('civicrm/admin/mailSettings', 'reset=1', FALSE, NULL, TRUE, FALSE, TRUE),
2 => "https://docs.civicrm.org/sysadmin/en/latest/setup/civimail/",
]));
}
Go into the Default "Mail Account" record (the one auto-configured for "bounce processing") and change its domain to any other value besides EXAMPLE.ORG. Leave everything else as is, such that it would not work if it were executed.
Rerun the Send Scheduled Mailings job. The run will succeed. This configuration arrangement needs to be corrected because it is not coherent. The ability to send mail should not be bound to a setting on an unrelated configuration setting that has no bearing on its proper function.