email-delivery

How to fix email delivery problems

Alex Tselegidis

Are you experiencing any problems?

One of the most important features of any modern day application is the ability to inform its users about certain events or actions within the app core domain. This way each individual user will always stay up to date with the latest activities of their installation.

Notifications may be implemented in various way including Push, SMS and Email, with the later being the standard and simplest one since the dawn of the world wide web. Self hosting applications can take advantage of the running environment’s emailing capabilities and notify all involved users upon important data changes.

Some times though the email functionality of the hosting environment may not be present or not properly configured for successful email delivery, something that may confuse users and lead to misunderstandings. Easy!Appointment installations are no exception to that and even though the application is pre-configured to run on any system, one may still have to apply their own email configuration in order to get notifications to work.

Common configuration issues

By default any PHP installation already has internal email related configuration, that allows the scripts to send emails to any address(es). This configuration is part of the so called “php.ini” file that is used when processing a PHP request.

Problems start to appear when this configuration is missing. In such cases Easy!Appointments will still execute the mail delivery but no actual mail will be sent because PHP does not know how to process such operations.

Another common situation is that the existing mail configuration may be invalid, meaning that it may point to a non existing email relay server or the mail delivery dependencies may be missing from the host operating system or the credentials of the email rely server are wrong. All those situations mean that the server is incapable of sending any Email notification.

How to use your own SMTP server

In cases where the server configuration cannot be repaired, the use of a custom SMTP server is advised. Easy!Appointments allows for custom email configuration and can use a remote SMTP server to send all the email notification messages. The email configuration is located in the /application/config/email.php file and looks as follows.

This file can be modified with custom values as described in this framework documentation page. In more detail, the following changes may be performed:

  • The comments from the last file lines need to be removed (//).
  • The $config[‘protocol’] value needs to be changed to ‘smtp’.
  • The $config[‘smtp_auth’] value needs to be changed to FALSE in case the SMTP server does not require a username/password combination.
  • The server host, username and password need to filled accordingly (except when the SMTP server does not require username and password, in which case they remain empty).
  • The $config[‘smtp_crypto’] value needs to be ‘ssl’ or ‘tls’.
  • The correct port value must be set to $config[‘smtp_port’].

Going Premium

Did you read this article, but you’re still not sure on how to proceed?

Reach out to info@easyappointments.org and have an expert take care of everything for you in zero time.

Get your free quote and get started now!

More great articles

Using Appointment Status Options

In this post, we'll explore how to make the most of appointment status options—like "Pending," "Confirmed," and "Completed"—to improve your…

Read Story
Default Featured Image

How to submit feature requests

Easy!Appointments is an open source project and thus user feedback is very important for the development progress. Submissions proposing new killer-features or required…

Read Story
System Notifications Explained

System notifications explained

Notifications are one of the most important piece of functionality of any modern software. As workflows are becoming more and…

Read Story

Never miss a minute

Get great content to your inbox every month. No spam.

    Only great content, we don’t share your email with third parties.
    Arrow-up