This interface is provided for the mBlox SMS service. Note that this interface currently only submits messages - it is expected that the user will provide a separate interface to receive delivery reports from mBlox.

The interface currently supports only standard SMS messages, not mBlox Premium (PSMS) messages.


The following parameters are available:

$sms_serviceThe name of the DLL for this interface should be entered on the second parameter of the $sms_service command as @PFC\CF8SMS02.DLL.  For example:
$sms_service * MBLOX "@PFC\CF8SMS02.DLL"
The interface can also be called from CopiaFacts version 7, using engine 7.401 or later.
SMS_SERVICESet this variable to MBLOX (see above) to use this service for the call.
SMS02_URLSet this variable (normally in FAXFACTS.CFG) to the mBlox URL to which the notification request is to be sent.
SMS02_USERNAMESet this variable (normally in FAXFACTS.CFG) to your mBlox account user name.
SMS02_PASSWORDSet this variable (normally in FAXFACTS.CFG) to your mBlox account password.
SMS02_PORTSet this variable to the port number to connect to.  If not supplied, the default is 8180.  Currently, setting the value to a number other than 8180 (e.g. 443) causes HTTPS to be selected as the protocol.
SMS02_PROFILESet this variable to the mBlox Profile ID to be used for the message.
SMS02_SENDERIDSet this variable to the mBlox Sender ID to be used.  If omitted, no Sender ID element is included in the notification request.
SMS02_IDTYPESet this variable to the Sender ID type (Numeric, Shortcode or Alphanumeric), if a value is supplied for SMS02_SENDERID.
SMS02_OPERATORSet this variable to the numeric Operator ID supplied earlier by mBlox, if available.  If omitted, no Operator element is included in the notification request.
SMS02_EXPIREDATESet this variable to the Expire Date, if required. The output format is MMDDHHmm and the date must be UTC.  If the value consists of 8 numeric digits, it will be passed unchanged.  If it is a number with a suffix of D, H or M it will be taken as a number of days, hours or minutes from the current time and an appropriate UTC expiration date will be calculated. The UTC date will also assigned to SMS02_EXPIREDATE in the FS file.  If omitted or incorrectly formatted, no Operator element is included in the notification request.
SMS_ENCODINGReserved for future use.
SMS02_KEEPNLSet this variable to a non-empty value to cause newlines in the message to be retained. When not specified, LF will be set to a space, and CR will be deleted.


SMS_MSGIDThis variable is not used in this interface.  The FS number is used to identify the message (as MBlox Batch ID).

SMS_DELIVERY_OUTCOME   Will be set to PENDING after the 'submission' of the message. This variable is not set if the submission fails.

SMS_ERROR_CODEWill be set to the numeric code returned by mBlox if the message submission fails.  The numeric code is preceded by R, N or S depending on whether the error is reported at Request, Notification or Subscriber result level. The variable will be cleared if the submission succeeds.

SMS_ERROR_MESSAGE   Will be set to the error text returned by mBlox if the message submission fails.  The variable will be cleared if the submission succeeds.

Outcome codesOne of the following codes:
170SMS_SERVICE not defined for the transmission
172Submission error
173Error getting SMS provider response
174No message to send
175SMS delivery failure
176SMS message too long (see below)
177Retryable submission error (mBlox returns 1 as the Retry element)
179Exception in SMS DLL
(FFTRACE)Set CF8SMS02 under File/Applications to see the trace output.

Message Processing

Messages are currently sent only in system default encoding.  Characters not in the iso-8859-1 subset supported by mBlox are dropped.

If a message contains more than 160 characters after variable expansion, it will be failed with outcome 176.  However if a character ¶ (182) appears in the text, a block of characters preceding it, and  the character itself, will instead be replaced by "..." to reduce the total length of the message to 160 bytes. If more than 160 characters follow the marker character, the transmission will fail with outcome 176. This feature allows trailing message text (preceded by ¶) to be retained even if the message has to be shortened.