1 .TH MDSMS 1 "17 May 1999" ~ VERSION ~ "SendSMS Manual"
6 .\~ Revision 1.2 1999/06/03 10:38:52 short
7 .\~ Implemented remaining communication timeouts and maximum retry count.
9 .\~ Revision 1.1.1.1 1999/05/26 13:06:26 short
10 .\~ First alpha release.
14 mdsms \- send SMSes through MobilDock
18 .RB [ "-c <cfgfile>" ]
20 .RB [ "-l <lockfile>" ]
27 .RB [ "<dest. phone>" ]
31 Program sends one SMS message through MobilDock device.
35 .BR -c | --config\ < cfgfile >
36 Process recursively this file and read all options from it. See the section
40 .BR -d | --device\ < device >
41 Specify serial device to communicate with MobilDock. If only bare name is
42 specified, "\fB/dev/\fP" is prepended automatically. This device name is used
47 .BR -l | --lockfile\ < lockfile >
48 Prior to accessing serial device specified above the lockfile should be
49 acquired for correct concurrent processes behaviour. Although this name
50 can be given as direct filename more common method is to use pattern
51 with embedded "\fB%s\fP" where this mark is replaced by actual basename
52 (last component of pathname with all preceding directory names stripped)
53 of serial device used.
54 Default name for lockfile is ~\fB DEF_LOCKFILE \fP~.
56 .BR -s | --smsc\ < smsc\ # >
57 Specify custom SMS center number. If not specified (or overriden as empty
58 string by \fB-s ""\fP)
60 asks by "\fBAT+CSCA?\fP"
61 Siemens A1 for its default SMS center. Situation with undeterminable SMS center
62 is unrecoverable and casues immediate fail. It is a common practice to use
63 plus sign ("\fB+\fP") to indicate international number type.
64 Known SMS centers as of May 1999:
67 .BR "CZ Paegas " ( "230 01" "): " +420603052000
69 .BR "CZ EuroTel " ( "230 02" "): " +420602909909
72 .BR -m | --maxretry\ < # >
73 Maximum retries of any \fBAT\fP-style command during the session. All the
74 retries are summed during one run of
76 and no more retries of the command are permitted. After exceeding this
77 value the program is terminated.
79 .BR -r | --readtime\ < sec >
80 Maximum response read timeout before give up.
82 sends the requested \fBAT\fP-style command to
84 and expects response. Unfortunately when the voice call is in progress,
86 will block any serial device communication and it is impossible to differentiate
89 and stucked/disconnected one. After exceeding this time interval,
91 is terminated immediately,
93 parameter notwithstanding. Standard value is
95 seconds and should be enough for any voice call.
97 .BR -t | --chartime\ < msec >
98 Although the fixed used baudrate of
100 is pretty low, MobilDock/Siemens A1 couple
102 able to accept steady
103 stream of data at this speed. Even the used XON/XOFF handshaking is just not
104 enough. The only possible workaround is to slowdown the communication by
105 waiting a bit after character sent to give relax time to these devices.
106 When full rate communication was used, occasional longer SMS data corruption
107 was observed. Argument is given in milliseconds and its default value is
110 .BR -T | --cmdtime\ < msec >
111 This delay is given before sending any
113 command to MobilDock/Siemens A1.
114 Its primary purpose is to let any previous entered commands to finish and
115 to clear any input before actually sending our own command. Also all Siemens
116 devices are known that they strongly dislike fast edge-to-edge communication
117 and to satisfy these requirements this delay was considered as the best
118 approach. The default value is
122 Increase verbosity level by one. Currently the maximum defined level is
128 Give short parameters description to
130 (standard error output stream).
133 Print the version number and exit.
135 .RB < "dest. phone" >
136 This mandatory parameter specifies the telephone number of the recipient
137 of SMS message. International prefix character plus
139 is supported the national mode without plus
141 prefix is supported and the meaning is specific to the GSM operator currently
142 being roamed in (NOT the native
144 operator of the SIM card!).
145 This number can be made default in system configuration files, see below
150 Here you write the exact body of the message. This parameter should be
151 specified only as one component, although if more found they are concatenated
152 with separating space (" "). But this practice is discouraged as
153 your shell will probably remove any multiple spaces found and also other
154 metacharacters may be incorrectly interpreted. To prevent any escaping
155 mess, you may prefer to omit this parameter and the the message text is
158 (standard input stream).
162 reads ~\fB CONFIG_MAIN \fP~ followed by ~\fB$HOME CONFIG_HOME \fP~
163 configuration files. The content of these files (and also any file read by
168 syntax with dashes. Newlines are taken as whitespace, both double ("\fB~\fP")
169 and single ("\fB'\fP")
170 quoting is supported. Embedded quote characters can be escaped by backslash
172 Arguments are processes in order as specified in configuration files and
173 finally the command-line of the program itself, overriding any previous
174 values. Although the order of
176 options on one line is preserved the first file is read AFTER all of the
177 current options are processed. Recursive use of
179 is permitted and the files are read in LIFO (Last-In First-Out, AKA stack)
180 order. You should use "\fB-v -v\fP"
181 to see details of option processing with more complex configuration setups.
186 locks the port (see option
188 for details) and opens the serial device with hardcoded parameters of
189 19200 baud, software handshaking (XON/XOFF style), 8 bits, no parity.
190 Then issues the following commands:
194 is used to fool MobilDock and pass the following
196 (ascii decimal code 26) character to Siemens A1 and break it from eventual
198 mode in which it may errorneously remain from previous sessions.
201 Test the responsiveness of Siemens A1.
203 \fBAT+CSCA="\fPsmc # from user\fB"\fP
204 This command is omitted if
206 is not specified by user (or specified/overriden as empty string \fB""\fP
209 Query the currently set SMC center number to include it later to the
210 header of SMS PDU format where it is required. If \fBAT+CSCA="\fP...\fB"\fP
211 was issued before, this number should match it but no sanity checks are
215 Set the default SMS message format to PDU type. Currently Siemens A1
217 support any other SMS format anyway.
219 \fBAT+CMGS=\fP# chars
220 This command physically sends the message and the resulting "\fB+CMGS:\fP" output
221 is catched and returned as
223 (message reference) number to the user.
226 Check that Siemens A1 survived the sending of the message.
231 ETSI documentation for SMS messages in GSM networks
233 .B "Developers'" Guide: SMS with the A1
234 Tech note on PDU SMS format etc:
235 .B http:/ /www.siemens.se/telefoner/ovrigtgsm/fragorsvar/a1_sms.pdf
237 .B Technical Description of the Siemens A1
238 Siemens A1 command description
239 .B http:/ /www.siemens.se/telefoner/ovrigtgsm/fragorsvar/a1_manual.pdf
244 Main configuration file
246 \fB$HOME CONFIG_HOME \fP
247 User personalized local configuration file
251 was written by Jan Kratochvil who should be responsible for all the bugs
252 included. Please see the file "\fBAUTHORS\fP"
253 shipped with the original distribution archive for more details.