Specify E-Mail Options

$email_options option [option ...]

This command specifies options for this e-mail item. For further information see the Features section on sending e-mail.

The parameters on this command are used as follows:

option one of the following keywords:


based64 indicates that the body text and alternate body text files have already been encoded as base64 and so need not be scanned for non-ASCII characters. They will be described as base64-encoded in the Content-Type header.  This option should not be used when $email_text or $email_alttext commands are present.  When present, this option also suppresses scanning for CopiaFacts variables in the body and alternate body text files. This option does not affect the encoding of e-mail headers.
quoted indicates that the body text and alternate body text files need not be scanned for non-ASCII characters, have already been encoded as quoted-printable, and should be described as such in the Content-Type header. This option does not affect the encoding of e-mail headers.
noquote indicates that the body text and alternate body text are not to be scanned for non-ASCII characters and are to be considered encoded 7bit.
qpperiodadds the period ('.') to the list of values which trigger quoted-printable or base64 encoding. This caters for some mailservers which have been found not to comply with RFC 5321 and to fail to remove a doubled period character at the start of a body text line.This option will also cause either quoted-printable or base64 encoding to be done if a period is found in the body text, so may increase the amount of data to be transmitted if used for all e-mail.
escOKtreats the Escape character (ASCII 27) as a transportable character in bodies and alternate bodies.  The default is to treat non-printable ASCII characters as a trigger for base64 encoding of the body text.   This option allows 7-bit encodings which include ESC characters (for example iso-2022-jp) to be transmitted without base64 encoding. This option does not affect the encoding of e-mail headers, because header text always has to be encoded if 'non-printable' characters (which includes ESC) are present.
longOKtreats body text lines with more than 76 characters as transportable as-is in bodies and alternate bodies.  The default is to treat long lines as a trigger for quoted-printable encoding of the body text unless they also contain a high enough proportion of non-transportable characters to trigger base64 encoding. This option does not affect the encoding of e-mail headers.
HtmlChswhen set, the meta tag in an HTML body has its charset= value changed, if necessary, to match the charset requested by $email_charset. This option is now the default, and this keyword is ignored.
rfc2231causes RFC2231-style encoding to be used for filename= and name= parameters in attachment headers. This has been found to be necessary to for Yahoo mail to display file names correctly when they contain Asian characters, but may not be supported by all mail clients. It is ignored if the file name is all ASCII and has no embedded spaces.


useTLSthe secure transmission method (TLS, transport later security) is used if the remote mailserver announces TLS capability.  Note that this option does not apply to forceISP transmissions (see below), where TLS selected in the EMSETUP login options.  The TLS_USED variable is set to yes if the connection has used TLS, even if the transmission then fails. This variable is cleared from the FS file before each e-mail attempt.
reqTLSthe secure transmission method (TLS, transport later security) is required.  If the remote mailserver does not have TLS capability the transmission will fail with outcome code 160. It is not necessary to specify useTLS also. Note that this option does not apply to forceISP transmissions (see below), where TLS selected in the EMSETUP login options.  The TLS_USED variable is set to yes if the connection has used TLS, even if the transmission then fails. This variable is cleared from the FS file before each e-mail attempt.
DKIMenables DKIM signing.  An $email_dkim_keyfile command is also required in the same FS file, as well as a $var_def command for the DK_SELECTOR variable. The keyword 'domainkeys' is a synonym for this option.  If specified, DKIM signing is always done after the message has been S/MIME signed and/or encrypted.
encryptfirstobsolete, ignored.
smimeencryptenables S/MIME encryption. An $email_encrypt_keyfile command is also required in the same FS file. The keyfile must contain the public key of the recipient and will be used to encrypt the e-mail transmission.
smimesignenables S/MIME signing. An $email_sign_keyfile command is also required in the same FS file.  One of the specified keyfiles must contain a private and public key for the From: address specified, and will be used to sign the e-mail transmission.


cvfailok causes the original unconverted image to be sent if a conversion to PDF, JPG or GIF fails. Without this option the transmission fails with error code 125.
debug enables debug messages for the transaction (written to FFTRACE, if it is running), even if FFTRACE is not set to collect all CF8EMAIL output.
expandattachvarsexpands CopiaFacts variables in e-mail attachment files which have content-type text/html.  Such attachments are treated similarly to body files: CP_EMAILHTMLATTACH can be used to detect code page, option HtmlChs (see above) can be used,and variable FIX_UNICODE is checked.  Other attachments are sent completely 'as is'.
failNoMXin the absence of MX records for a domain, suppresses any attempt to try an SMTP login to the domain name instead.  Without this keyword, the domain login is attempted in the absence of MX records only if there is a DNS A record present for the domain.
forceISPforces transmission via the ISP configured and enabled in EMSETUP on each sending machine.  If an ISP is not configured or not enabled, this option is ignored. Important: your list of domains which are to use the ISP, shown in EMSETUP, must not be empty: this would cause all traffic to go via the ISP.  If you need only items with this e-mail option to be sent via the ISP, add a single list entry with an invalid domain name (eg ZZZZ) which can never be matched with a real target domain.
ignmisscauses missing attachment files to be ignored. Without this setting a missing attachment file will cause an email transmission to fail with error code 150.
IPv6causes IPv6 to be used, if available, when the IPv6 keyword is given on the $email_settings configuration command.  That command also has an IPv6ALL keyword which will avoid the need to set this e-mail option for each transmission.
MHTML indicates that all the attachments are images to be embedded in the HTML body text. For more information, see the Features section on sending e-mail.
nomacro indicates that '`' macro-expansion is not to be performed on the headers, body text, alternate body text and text attachments.  This option overrides option expandattachvars.
notimeoutsuppresses the error outcome (146) in circumstances when the e-mail data has been completely transmitted, including the final ".", but the remote MTA does not then send an acknowledgement.  In this situation the transmission will be considered a success.  No other e-mail timeout is affected by this option.
percentxxindicates that in links in body/altbody text and in text/html attachments, the string %60 (by default) will be changed to the e-mail variable-expansion character (`) before variable expansion takes place.  This option is needed because most HTML editor software replaces such characters with a percent sign followed by a hexadecimal value.  The expansion will recognize only the hexadecimal value of whatever character is defined by the second parameter of $macro_char (default %60 for accent grave `). The operation is performed on http, https and mailto links only.
rawbody places the supplied body text file into the e-mail with no additional formatting. The body text can contain encoded attachments and multipart sections, but all boundaries and content-type parameters are assumed to be already in the file. An alternate body and attachments may not be specified when this option is given. No checking of the contents is done, but CopiaFacts variables are expanded in the normal way unless the nomacro keyword is also present.  Your body text file should normally include Content-Type and Content-Transfer-Encoding headers because these are not added when the rawbody keyword is used.  The file must be in system default encoding with all characters transportable.
sanitizere-formats the e-mail destination address in an attempt to eliminate some common syntax errors, such as: missing double-quotes surrounding the 'display-name' element, missing both, or closing, angle-bracket on the 'angle-addr' element, entire address string in double-quotes, etc.  Note that adding this option will result in some rejections (outcome 194), if an e-mail address is ambiguous or not correctable, for example containing an unquoted '<' in a display-name. In addition a badly malformed address may not result in an error until we attempt to send the e-mail or the e-mail reaches its destination.   In such cases it is conceivable that a receiving mail server might have been able to process the item had the sanitize option not been used.  For more information, see the $email_address topic.
second all e-mail commands in the FS file will be ignored unless the fax or voice commands also in the same FS file result in a failed transmission. If this option is not given, an FS file containing both e-mail and fax/voice commands will be attempted as a fax or voice outbound operation if the e-mail transmission fails.
See also E-Mail Error Handling


Email options:

$email_options nomacro ; email commands and text contain no ` macros

S/MIME encryption:

$email_options SMIMEencrypt 

$email_encrypt_keyfile steve.cer

$email_address steve@copia.com


S/MIME signing:

$email_options SMIMEsign

$email_sign_keyfile steve.pfx;xyzzy

$email_from steve@copia.com

$email_esender steve@copia.com

DKIM signing:

$email_options dkim

$email_dkim_keyfile copia.pem

$email_from steve@copia.com

$email_esender steve@copia.com

E-Mail Option Global Overrides (advanced) E-Mail option overrides were implemented in CopiaFacts version for a user who was unable to modify FS file generation.  If you need to use these variables please inform Copia Support because they may be removed if no longer required.:

Four new configuration-file variables are available:


The value of each item is a string of up to 8 hexadecimal digits. The ‘M’ variables are a mask for which option bits are to be affected by the corresponding variable: if absent, no change is made.  The variable without the ‘M’ specifies the bits to be set on or off, and if missing, all masked bits will be set off.

The significance of the bits is as shown below.

EMAIL1: basic options:

00000001  nomacro: no variable expansion
00000002  noquote: no scan for non-ASCII
00000004  quoted: already quoted-printable encoding
00000008  second: try fax first
00000020  ignmiss: ignore missing attachment
00000040  debug: force low-level debug on for this item
00000080  mhtml: all attachments are embedded
00000100  based64: already base64 encoding
00000200  smimesign: message will be signed
00000400  smimeeencrypt: message will be encrypted
00000800  cvfailok: send unconverted file on PDF/JPG/GIF convert
00008000  forceisp: force ISP
00010000  raw: body text supplied is raw body with headers
00040000  notimeout: no 146 outcome if data and period sent
00080000  expandattachvars: expand vars in text/html attachments
00100000  percentxx: expand e.g. %60 to ` in links
00200000  domainkeys: sign with DKIM
00400000  qpperiod: include period in set of chars for QP
00800000  mx163: ignored; use MX_BREAK and MX_CONTINUE
01000000  encryptfirst: encrypt before sign

EMAIL2: additional options (first four are $email_charset options)

00000001  base64: use base64 instead of preferred
00000002  q-p: use QP instead of preferred
00000004  uuencode: use uuencode instead of preferred
00000008  8bit: use 8bit instead of preferred
00000010  longOK: don't trigger encode on long lines
00000020  escOK: don't trigger encode on ESC (for iso-2022-jp)
00000040  htmlchs: fix HTML charset= in body meta tag
00000080  IPv6: use IPv6 if available
00000100  dnsdebug: DNS resolver debug (creates huge trace file)
00000200  sanitize: fixes specific address syntax issues