Version bumped to 1.5.2.
[mdsms.git] / mdsms.1.in
index 80a8c61..ded0992 100644 (file)
@@ -46,13 +46,22 @@ device connected through the serial port. Currently supported:
 .RS
 .TP
 .B Nokia Communicator 9000/9000i
-All modes except \fB--logo-send\fP supported.
+All modes except \fB--logo-send\fP/\fB--ring-send\fP supported.
 .TP
 .B Nokia Communicator 9110
-All modes supported. This is the only device with \fB--logo-send\fP capability for now.
+All modes supported. This is the only device with \fB--logo-send\fP/\fB--ring-send\fP capability for now.
 .TP
 .B Siemens A1
-Firmware revision 2.0 required. All modes except \fB--logo-send\fP supported.
+Firmware revision 2.0 required. All modes except \fB--logo-send\fP/\fB--ring-send\fP supported.
+These modes \fBcould\fP be supported for this device but unfortunately
+.B mdsms
+currently does not support it.
+.TP
+.B Siemens M20, M1
+All modes except \fB--logo-send\fP/\fB--ring-send\fP supported.
+These modes \fBcould\fP be supported for this device but unfortunately
+.B mdsms
+currently does not support it.
 .RE
 
 .SH OPTIONS
@@ -76,6 +85,15 @@ etc., similar to output of
 If set to empty string (which is default - ~\fB        DEF_LOGNAME     \fP~), nothing
 is logged anywhere.
 .TP
+.BR -l | --lockfile\  < lockfile >
+Prior to accessing serial device specified above the lockfile should be
+acquired for correct concurrent processes behaviour. Although this name
+can be given as direct filename more common method is to use pattern
+with embedded "\fB%s\fP" where this mark is replaced by actual basename
+(last component of pathname with all preceding directory names stripped)
+of serial device used.
+Default name for lockfile is ~\fB      DEF_LOCKFILE    \fP~.
+.TP
 .BR -b | --baud\  < rate >
 Sets custom baudrate for accessing Nokia modem. Supported speeds are currently:
 \fB2400\fP,
@@ -85,14 +103,60 @@ Sets custom baudrate for accessing Nokia modem. Supported speeds are currently:
 \fB38400\fP,
 \fB57600\fP. Default is \fB    DEF_BAUD        \fP.
 .TP
-.BR -l | --lockfile\  < lockfile >
-Prior to accessing serial device specified above the lockfile should be
-acquired for correct concurrent processes behaviour. Although this name
-can be given as direct filename more common method is to use pattern
-with embedded "\fB%s\fP" where this mark is replaced by actual basename
-(last component of pathname with all preceding directory names stripped)
-of serial device used.
-Default name for lockfile is ~\fB      DEF_LOCKFILE    \fP~.
+.BR -x | --xonxoff
+Turns handshaking mode to \fBXON/XOFF\fP (also called \fBsoftware handshaking\fP).
+Use this mode if you are using only 3-wire serial cable. Device should be
+configured in "\fBAT+IFC=1,1\fP" mode, if \fBAT+IFC\fP command supported. When
+possible, you should rather use \fBRTS/CTS\fP handshaking described in the
+following paragraph. This mode is the default one.
+.TP
+.BR -C | --rtscts
+Turns handshaking mode to \fBRTS/CTS\fP (also called \fBhardware handshaking\fP).
+Use this mode if you are using full 7-wire (approx.) serial cable. Device should be
+configured in "\fBAT+IFC=2,2\fP" mode, if \fBAT+IFC\fP command supported. Try
+to use this mode whenever possible (instead of the default \fBXON/XOFF\fP mode described
+in the previous paragraph). This mode may not be available in your UNIX flavour.
+.TP
+.BR -M | --smsmode
+Forces the SMS mode to use - either \fBpdu\fP or \fB text\fP mode. By default
+.B mdsms
+tries to detect mode to use automatically, \fBPDU\fP mode is preferred. When
+your modem is capable of both modes and you need for some reasone \fBtext\fP
+mode, you may use \fB--smsmode text\fP argument to force it. \fBPDU\fP mode
+is recommended for unattended operation, on the other side \fBtext\fP mode
+should be more compatible when you have compatibility problems with unsupported
+GSM modem. It is recommended to force the exact mode you will be using in
+unattanded operaton. By such way you will prevent failures caused by the other
+mode after possible random communication glitches (and therefore automatic
+.B mdsms
+switchover).
+.TP
+.BR -P | --pdusmscmode
+Forces SMS center prepending mode for \fBPDU mode\fP operation. By default
+.B mdsms
+tries sequentially all the described modes, you should lock it for
+unattanded operation to prevent vain switchovers from random communication
+glitches (also you will notice faster response for "\fBcount-out\fP" or
+"\fBnone\fP" modes):
+.RS
+.TP
+.BR count-in
+The default mode, SMS center is prepended to the \fBPDU\fP and SMS
+.RB "center's"
+length is taken into account during length calculation for "\fBAT+CMGS=\fP#".
+.TP
+.BR count-out
+SMS center is prepended to the \fBPDU\fP but SMS
+.RB "center's"
+length is omitted
+during length calculation for "\fBAT+CMGS=\fP#".
+.TP
+.BR none
+SMS center is \fBNOT\fP prepended to the \fBPDU\fP, SMS center to use by
+GSM modem is taken from the one set by
+\fBAT+CSCA="\fPsmsc # from user\fB"\fP
+command.
+.RE
 .TP
 .BR -s | --smsc\  < smsc\ # >
 Specify custom SMS center number. If not specified (or overriden as empty
@@ -100,14 +164,17 @@ string by \fB-s ""\fP)
 .B mdsms
 asks by "\fBAT+CSCA?\fP"
 for the current default SMS center. Situation with undeterminable SMS center
-is unrecoverable and casues immediate fail. It is a common practice to use
+is unrecoverable and causes immediate fail. Please contact your GSM operator
+customer service if you are in trouble. It is a common practice to use
 plus sign ("\fB+\fP") to indicate international number type.
-Known SMS centers as of May 1999:
+Known SMS centers as of April 2001:
 .RS
 .TP
-.BR "CZ Paegas " ( "230 01" "): " +420603052000
+.BR "CZ Paegas  " ( "230 01" "): " +420603052000
 .TP
 .BR "CZ EuroTel " ( "230 02" "): " +420602909909
+.TP
+.BR "CZ Oskar   " ( "230 03" "): " +420608005681
 .RE
 .TP
 .BR -m | --maxretry\  < # >
@@ -296,13 +363,13 @@ mode in which it may errorneously remain from previous sessions.
 .B AT
 Test the responsiveness of the device.
 .TP
-\fBAT+CSCA="\fPsmc # from user\fB"\fP
+\fBAT+CSCA="\fPsmsc # from user\fB"\fP
 This command is omitted if
 .B "smsc #"
 is not specified by user (or specified/overriden as empty string \fB""\fP
 .TP
 \fBAT+CSCA?\fP
-Query the currently set SMC center number to include it later to the
+Query the currently set SMS center number to include it later to the
 header of SMS PDU format where it is required. If \fBAT+CSCA="\fP...\fB"\fP
 was issued before, this number should match it but no sanity checks are
 currently do so. Also it is used to detect possibly unset SMS center.
@@ -366,10 +433,61 @@ scheme) to 0 (\fBalphabet indication\fP, \fBdefault 7-bit alphabet\fP).
 .RE
 .TP
 .BR --receive :
+Receiving of messages is performed using direct routing of incoming data to TE (Terminal Equipment).
+No SMSes are stored to SIM card/device memory and then read back as one may expect.
+There are slight advantages of better response times (SIM card access is very slow) and
+saving EEPROM writes to SIMcard. Unfortunately there is one big advantage that when
+.B mdsms
+suddenly stops/crashes without switching the device back to SIM-store mode, messages
+being consequently received are lost on the dead end of serial port.
+.B mdsms
+tries very hard to restore the device state before its termination but sometimes it just
+.RB "isn't"
+possible. Due to this fact \fBnever kill mdsms with SIGKILL (-9) signal\fP, use standard
+SIGTERM instead, please. Also one fact resulting of this behaviour is that messages
+with Class-2 (SIM store) specific routing are really stored to SIM card and as such are
+not processed in any way by
+.BR mdsms .
+Safer SIM store/retrieve mechanism may be implemented in future versions. Command sequence used in
+.B --receive
+mode follows:
 .RS
 .TP
-FIXME
-To be written according to \fBAT+CMGF=0\fP support.
+\fBAT+CMGF=0\fP, if fails \fBAT+CMGF=1\fP
+Set the default SMS message format to PDU type (preferred) or text mode (if
+PDU mode not available).
+.TP
+\fBAT+CNMI=,2\fP
+Set the message routing to go directly to TE (Terminal Equipment), see the discussion
+in paragraph above for more. Also right before starting attempt to send this command,
+\fBAT+CNMI=,0\fP is set to be tried before finishing
+.BR mdsms
+to restore the original device behaviour.
+.TP
+\fBAT+CSDH=0\fP
+We
+.RB "aren't"
+really much interested in additional non-standard values of
+PID (Protocol IDentifier), DCS (Data Coding Scheme) etc.
+.TP
+data wait
+In this point the device lock file is removed, retry count is set to infinite value
+(see discussion in
+.B --maxretry
+parameter) and
+.B mdsms
+starts to passively listen for any incoming data. Possible dial-out mode is being
+detected afterwards, otherwise message receive sequence follows as described below.
+.TP
+\fB+CMT:\fP read
+Any waiting \fB+CMT\fP incoming message indications are read and processed. Format
+being processed (text/PDU) depends on the actual value of \fBAT+CMGF\fP set before. Any
+possible \fB+CMTI:\fP input is discarded as we are not interested in SIM-store
+directed messages.
+.TP
+receive restart
+After processing all the messages, the whole initialization sequence is restarted as
+the device configuration may have changed or lost during the data wait phase.
 .RE
 
 .SH SEE ALSO