Configuring the SMTP Server

As mentioned previously, the SMTP server is a component of the “MMSC” service. Even if you are not using any of the other MMS related functionality, you must check “Activate MMSC Service” in order to enable e-mail to SMS and/or MMS support.

Unless you have a very specialised setup, you should configure the “SMTP Port Number” as “25”. (Note that only one service can bind to a particular port number on a single machine. So you can have difficulty installing NowSMS on the same PC as an existing SMTP mail server. If your PC has multiple IP addresses, NowSMS does have the ability to bind to only one of the available IP addresses if you select that address in the “IP Address” field beneath the “SMTP Port Number” setting. However, any other SMTP server that you run on the same PC must have similar capabilities to bind to only one IP address in order to run multiple SMTP servers on the same PC. If you are confused by all of this, the just avoid trying to run NowSMS with this SMTP support on the same PC as an another mail server.)

Skip the “Require AUTH” setting for now, as it will be explained later in this section.

“Local Host Name or IP Address” is the host name that is presented when this host communicates with another SMTP server (HELO command). This host name is also used for constructing URLs when sending MMS using NowSMS as a direct delivery MMSC. Under normal conditions it should be a host name defined in the internet DNS, which resolves to the PC running NowSMS. It could also be the IP address of the PC.

“Domain Name for MMS E-Mail” defines the domain name that is to be used to identify messages that are to be routed as MMS messages. If the NowSMS SMTP server receives a message addressed to username@mms.domain.name where “mms.domain.name” is the domain name defined in this field, then NowSMS will attempt to route the message to the recipient via MMS. If you want to be able to send to this domain over the internet, you must define a Mail eXchange (MX) record in internet DNS that resolves this domain name to the PC that is running NowSMS.

If you are not using the MMS facilities of NowSMS, it is possible to enter a dummy value into this field.

The “Enable SMTP Smart Mailer” and “SMTP Relay Host” settings are used for routing from SMS or MMS to e-mail. These settings are not used for routing e-mail to SMS or MMS.

If “Enable SMTP Smart Mailer” is checked, the MMSC will perform DNS lookups to locate remote recipients and perform SMTP e-mail delivery. If “Enable SMTP Smart Mailer” is not checked, it is required that an “SMTP Relay Host” be defined. When the smart mailer is not enabled, the MMSC will connect to the “SMTP Relay Host” to send all outbound SMTP e-mail messages. If you are using an “SMTP Relay Host”, please define an appropriate SMTP mail server in your network that will perform this SMTP message relay capability.

Checking “Enable POP3 Server” enables the POP3 Server. The POP3 server allows user accounts defined in the “SMS Users” dialog to connect via the POP3 e-mail protocol in order to receive SMS or MMS messages (the accounts can also connect via the SMTP e-mail protocol to send SMS or MMS messages). The standard “POP3 Port Number” is 110, however it is possible to use a non-standard port, if desired. The POP3 server will be described in more detail later in this section.

The “Enable MMS Delivery Receipts” and “Enable Dynamic Image + Audio Conversion” options can be ignored, as they are not relevant to e-mail connectivity.

To enable e-mail to SMS support, check “Enable E-Mail to SMS Support”.

Next, specify a “Domain Name for SMS E-Mail”. This defines the domain name that is to be used to identify messages that are to be routed as SMS messages. If NowSMS receives a message addressed to username@sms.domain.name, where “sms.domain.name” is the domain name defined in this field, then NowSMS will attempt to route the message to the recipient via SMS. If you want to be able to send to this domain over the internet, you must define a Mail eXchange (MX) record in internet DNS that resolves this domain name to the PC that is running NowSMS.

Note that the “Domain Name for SMS E-Mail” must be different from the “Domain Name for MMS E-Mail”. If the values are the same, NowSMS will attempt to route any e-mail for that domain via MMS instead of SMS.

“Max SMS messages per e-mail” specifies the maximum number of SMS messages to be sent out for a single received e-mail message. If a message contains only characters in the standard GSM character set, you can fit 160 characters in a single message (or only 70 characters when any Unicode characters outside of this character set are included in a message). However, NowSMS can send out a set of concatenated messages which will appear as a single longer message on most handsets. Set this value to “1” if you do not want to use any concatenated/long SMS, or set a value to specify the maximum number of SMS to be sent in a concatenated SMS for a single e-mail message. NowSMS will truncate any messages that include text longer than can fit into the specified number of SMS.

E-Mail Access Restrictions

The previous section described the basic settings for e-mail to SMS or MMS. However, it did not discuss access restrictions. Access restrictions are extremely important, as you would not want to inadvertently deploy an e-mail to SMS or MMS gateway that was open for anyone to use.

By default, NowSMS will only allow e-mail messages to be sent to SMS or MMS for user accounts that are defined in the “MMSC Users” list. (Yes, even if you are sending e-mail to SMS, these accounts are defined in the “MMSC Users” list.)

So, if you only want to allow e-mail messages to be sent to a few addresses, you can define those phone numbers in the “MMSC Users” list. NowSMS then allows you to send to either phonenumber@mms.or.sms.domain.name or alias@mms.or.sms.domain.name.

In this default configuration, NowSMS will accept messages for any address defined in the “MMSC Users” list, but will reject attempts to send to any phone numbers that are not defined in that list.

What if you have bulk sending needs, and want to be able to send to any phone number?

Well, the first consideration is that you want to limit who can do this, so that you do not run up your SMS bill.

NowSMS supports three approaches for allowing for sending e-mail to any phone number via SMS or MMS.

1.) The first approach uses SMTP AUTH (SMTP Authentication). Accounts can be defined in the “SMS Users” list. If SMTP login capability is enabled for the “SMS Users” account, an SMTP e-mail client can be configured to connect to NowSMS and authenticate itself with a defined username and password.

If the SMTP e-mail client authenticates with a defined username and password, NowSMS will allow the client to send to any phonenumber@mms.or.sms.domain.name. (If you would like the account to be able to only send to SMS recipients, set “Web Menu Options” = “Text SMS Only” when configuring the “SMS Users” account.)

In this mode, the SMTP E-Mail client can also be configured to connect to the NowSMS POP3 server to receive messages. SMTP is the protocol the e-mail protocol that is used when an e-mail client wants to send a message. POP3 is one of the e-mail protocols that can be used when an e-mail client wants to receive messages from a server. When configuring POP3/SMTP e-mail client, the SMTP server is often referred to as the “Outbound Mail Server”, while the POP3 server is referred to as the “Inbound Mail Server”. The NowSMS POP3 Server will be discussed in more detail under the heading Using the POP3 Server later in this section.

2.) The second approach is to define specific e-mail addresses that are allowed to send SMS or MMS messages via NowSMS without requiring authentication. The Authorised E-Mail to SMS/MMS Senders” button on the “MMSC” configuration dialog displays a dialog where these e-mail addresses can be defined.

If the SMTP server receives an e-mail from an address that is listed in the “SMS & MMS” list, it will allow that e-mail address to send an MMS or SMS message to any phone number. If the SMTP server receives an e-mail from an address that is listed in the “SMS Only” list, it will allow that e-mail address to send an SMS message to any phone number.

The authorised sender list can include e-mail addresses which include wildcards of “*” or “?”. “*” matches zero or more characters. “?” matches exactly one character. These wildcards are often used to indicate that all e-mail addresses from a particular domain are to be considered authorised (e.g., *@domain.com).

Use caution when deploying a server that authenticates based upon the authorised senders list. It is very easy to forge sender e-mail addresses when using internet e-mail protocols. For this reason, most customers who use this authorised sender list will want to make sure that the SMTP port of the NowSMS server is only accessible over their local network.

3.) The third approach involves defining “trusted” IP addresses that are allowed to submit SMS or MMS messages to NowSMS via SMTP without requiring authentication. This might be the IP address of particular workstations, or it might be the IP address of an internal corporate mail server that is configured to relay mail to NowSMS.

To define trusted IP addresses which are allowed to submit e-mail messages to any phone number, you must manually edit the MMSC.INI file. Under the [MMSC] section header, you can add a parameter:

SMTPIPAddressList=ip.address.1,ip.address.2,192.168.1.*

This parameter can have a comma-delimited list of IP addresses (no white space, if you specify multiple addresses, separate with a comma only) that are allowed to connect via SMTP and send to *any* phone number using an addressing format of phonenumber@mms.or.sms.domain.name. The IP addresses specified, can also include a “*” place holder as a wildcard match for all addresses in that network (for example, *.*.*.* would open access to any address, so you could use that value if you have complete confidence in your firewall).

Additional E-Mail Settings

Earlier in this section, we skipped over the “Require AUTH” setting on the “MMSC” configuration dialog. This setting allows you to also require authentication before being able to send to any phone numbers defined in the “MMSC Users” list.

As discussed in the previous section, in a default configuration, NowSMS will accept messages for any address defined in the “MMSC Users” list, but will reject attempts to send to any phone numbers that are not defined in that list.

If “Require AUTH” is checked, even if a user account is defined in the “MMSC Users” list, NowSMS will only route SMS or MMS for that phone number if the submitting SMTP client authenticates via SMTP AUTH with a valid account, or the sending e-mail address is in the “authorised sender” list, or the submitting IP address is defined in the “SMTPIPAddressList” setting.