## SMS Server Tools 3

Home

### Localizing

Starting from the version 3.1, message files can be written using localized headers. While localization is in use, english words can still be used. Localization settings can also be used to drop some unwanted headers from the incoming files, like "From_TOA".

A file containing definitions of localization can be defined in the global section of configuration file (smsd.conf) using the setting: language_file = /path_to_smstools3/examples/language-UTF-8.fi.

Character set used in the language file should match to the locale setting used by the system which creates outgoing message files. This is very important when UTF-8 is used as a locale, because byte sequences of special characters should match. Because of this, there is two versions of finnish translation available in the examples directory: language-ISO-8859-15.fi and language-UTF-8.fi. NOTE: those translations are from 2007 version of smsd, and not updated which means that all current headers are not presented in those files. Headers listed in this page are from the version 3.1.16 (released 2017).

Headers written using Unicode (UCS2) are not currently supported. If you are interested to use Unicode headers, please contact the author.

Localization file can contain empty lines and comment lines starting with # character. Keywords are case-insensitive and everything is checked by the smsd. Keyword and value is separated using an equal sign. If there are syntactical failures, an error message is produced and the smsd does not start.

First, some general settings are available:

datetime | format string. Can be used to localize timestamp format. For example: datetime = %d.%m.%Y %H:%M:%S produces 14.08.2007 12:34:56. See man strftime for more details.
incoming | yes/no. Default: yes. Defines if incoming message files are written using localized headers.
no_chars | Used like yes_chars.
no_word | Used like yes_word.
yes_chars | Define one or more character sequences (or byte sequences if using UTF-8) which means "yes" as the input value. Sequence should be inside apostrophes and sequences are delimited using comma. For example in finnish, "yes" can be defined using: yes_chars = 'K','k'.
yes_word | Defines a word to be used when smsd writes "yes" word to the file, like "kyllä".

While defining alternatives for message file headers, ensure that there is colon included at the end of word. Some words in the following list are used in the content part, and there colon should not be used. This list includes a definition how and where a header is used by the smsd.

Alternative content for a header can be given as "-" (minus sign only) which means that there is no translation for this header and smsd does not print this header to the files. If a header has a translation to be used as an input, and it is wanted that this header is not printed to the files, an alternative text can start with minus sign. Some headers cannot be omitted, those cases are market to the list.

Alphabet: | Msg file input. Incoming message.
Autosplit: | Msg file input.
Binary: | Msg file input (sets alphabet to 1 or 0).
CALL MISSED | Incoming call, written to the message body. Cannot be omitted.
Call_type: | Incoming message from phonebook.
Class: | Msg file input.
DCS_hex: | Msg file input.
Description: | Written to all message files..
Fail_reason: | Failed outgoing message (currently only spooling uses this).
Failed: | Timestamp for failed message.
Flash: | Msg file input.
From: | Msg file input: informative. Incoming message: senders address. Cannot be omitted.
From_SMSC: | Incoming message: senders SMSC.
From_TOA: | Incoming message: senders Type Of Address.
Hex: | Msg file input.
IMEI: | Incoming / Sent (or failed) message.
IMSI: | Incoming / Sent (or failed) message, identification code if supported.
Include: | Msg file input.
Incomplete: | Incoming message.
Language: | Msg file input, incoming message.
Language_ext: | Msg file input, incoming message.
Length: | Incoming message, text/data length.
Macro: | Msg file input.
Message_id: | Sent (successfully) message.
Message_reference: | Msg file input.
missed | Incoming call type. Note: this is a value. Cannot be omitted.
Modem: | Sent message, device name (=modemname).
Name: | Incoming message: name from the modem response (???).
Number: | SIM card's telephone number (if defined in the config file).
Original_filename: | Stored when moving file from outgoing directory and unique filenames are used in the spooler.
Ping: | Msg file input.
Priority: | Msg file input. With this header a value HIGH can be used and also localized "yes" meaning will work (defined using yes_chars).
Provider: | Msg file input.
Received: | Incoming message timestamp. Cannot be omitted.
Reject_duplicates: | Msg file input.
Replace: | Msg file input. Incoming message: exists with code if replace code was defined.
Reply_path: | Msg file input.
Report: | Msg file input. Incoming message: report was asked yes/no.
Result: | Voicecall. Result string from a modem.
Retries: | Msg file input.
Sending_time: | Outgoing time.
Sent: | Outgoing timestamp. Incoming: senders date & time (from PDU).
SMSC: | Msg file input.
Subject: | Incoming message, modemname.
System_message: | Msg file input.
Text_is_pdu: | Msg file input.
To: | Msg file input.
To_TOA: | Msg file input.
UDH-Type: | Incoming message, type(s) of content of UDH if present.
Validity: | Msg file input. Note that if word values are used, they should be written using english.
Voicecall: | Msg file input.
Queue: | Msg file input.