Man Linux: Main Page and Category List


       gsmsmsd - SMS message reception daemon


       gsmsmsd  [ -a action ] [ --action action ] [ -b baudrate ] [ --baudrate
       baudrate ] [ -c concatenatedID ] [ --concatenate concatenatedID ] [  -C
       service centre address ] [ --sca service centre address ] [ -d device ]
       [ --device device ] [ -D ] [ --direct ] [ -f ] [ --flush ]  [  -h  ]  [
       --help  ]  [  -I  init  string  ]  [  --init  init  string  ]  [ -r ] [
       --requeststat ] [ -s spool directory ] [ --spool spool directory ] [ -t
       SMS store name ] [ --store SMS store name ] [ -v ] [ --version ] [ -X ]
       [ --xonxoff ] { sms_type }


       gsmsmsd reads new incoming SMS from the  mobile  phone  and  dispatches
       them  to  a  user-defined  action. Additionally it can send SMS message
       that it reads from a spooldir.

       gsmsmsd attaches itself  to  the  device  given  on  the  command  line
       (usually  an  GSM  modem)  using  the  specified baudrate and waits for
       incoming  SMS  messages.  If   no   device   is   given,   the   device
       /dev/mobilephone  is used. If no baudrate is given, a default baud rate
       of 38400 is used.

       If no action is given, the SMS  message  is  printed  to  the  standard
       output.  If  an  action  is specified the action is excecuted using the
       shell and the SMS message is written  to  the  standard  input  of  the

       gsmsmsd  needs  one  empty  storage slot for SMS messages in the mobile
       phone, otherwise SMS reception will not work. The SMS store to use  for
       temporary  storage  of  incoming  SMS can be selected using the --store
       option, otherwise the ME default store is used.

       To terminate gsmsmsd cleanly (without losing SMS messages)  one  should
       send  either  SIGINT  (CTRL-C  on  the  command line) or SIGTERM to the

       Error messages are printed  to  the  standard  error  output.   If  the
       program terminates on error the error code 1 is returned.

       sms_type may be any combination of:

       sms, no_sms
              Controls reception of normal SMS messages.

       cb, no_cb
              Controls reception of cell broadcast messages.

       stat, no_stat
              Controls reception of status reports.

       The default is sms, cb, and stat.


       -a action, --action action
              The  action  to  execute  for  each  incoming SMS message. If no
              action is given the SMS is written to the standard output.

       -b baudrate, --baudrate baudrate
              The baud rate to use.

       -c concatenatedID, --concatenate concatenatedID
              If  an  ID  is  given,  large  SMSs  are  split  into   several,
              concatenated  SMSs.  All  SMSs have the same ID and are numbered
              consecutively so that the receiving phone can assemble  them  in
              the  correct order. IDs must be in the range 0..255. This number
              is increased by one for  every  outgoing  concatenated  SMS  and
              wraps  around  after 255.  Not all receiving phones will support
              concatenated SMSs (and display them as separate SMSs), since all
              the  numbering  and  ID  information is carried in the user data
              header element at the beginning  of  the  SMS  user  data.  This
              information may show up as garbage in such phones.

       -C service centre address, --sca service centre address
              Sets  the service centre address to use for all SUBMIT SMSs (may
              not work with some phones).

       -d device, --device device
              The device to which the GSM modem is connected. The  default  is

       -D, --direct
              Enables  direct routing of incoming SMS messages to the TE. This
              is not supported by many mobile  phone/GSM  modem  combinations.
              Therefore,  the  default  is  to  store incoming SMS temporarily
              before processing them in the indicated store.

       -f, --flush
              This option  causes  gsmsmsd  to  flush  (ie.  read  and  erase)
              existing SMS messages from the SMS store selected by the --store
              option. The action given by the --action option is  executed  on
              each  of  the  flushed SMS. This option should be used to ensure
              that enough space is available in the SMS  store  for  temporary
              storage of incoming SMS, otherwise incoming SMS might be ignored
              silently by the ME.

       -h, --help
              Prints an option summary.

       -I init string, --init init string
              Initialization string to send to the TA  (default:  "E0").  Note
              that the sequence "ATZ" is sent first.

       -r, --requeststat
              Request  status  reports  for  sent  SMS. Note: This option only
              makes sense if the phone supports routing of status  reports  to
              the  TE.  Otherwise the status reports might show on the phone’s
              display or get lost.

       -s spool directory, --spool spool directory
              This option sets the spool directory where gsmsmsd  expects  SMS
              messages  to  send.  The format of SMS files is very simple: The
              first  line  contains  the  phone  number  of   the   recipient.
              Everything  else  after the first line is interpreted as the SMS
              text. Please refer to gsmsendsms(1) for details on the SMS  text
              character  set  and  maximum  length.   gsmsmsd  polls the spool
              directory every 5 seconds. Sent SMS message files are removed.

       -t SMS store name, --store SMS store name
              The name of the SMS store to read from (for the --flush  option)
              or  write  to  (for  temporary SMS storage). This option must be
              must be used in conjunction with the  --flush  option.  If  this
              option  is  omitted  the  ME  uses  it’s  default  SMS store for
              temporary storage of incoming SMS. A commonly available  message
              store is "SM" (SIM card).

       -v, --version
              Prints the program version.

       -X, --xonxoff
              Uses software handshaking (XON/XOFF) for accessing the device.


       The  following invocation of gsmsmsd sends each incoming SMS message as
       a mail to the user "smsadmin":

       gsmsmsd -d /dev/ttyS2 -b 19200 -a "mail smsadmin"

       This is the format of SMS deliver messages as output from gsmsmsd:

       Message type: SMS-DELIVER
       SC address: ’491710762100’
       More messages to send: 1
       Reply path: 0
       User data header indicator: 0
       Status report indication: 0
       Originating address: ’01805000102’
       Protocol identifier: 0x39
       Data coding scheme: default alphabet
       SC timestamp: 17.12.98 14:10:55(+0100)
       User data length: 159
       User data header: 0x
       User data: ’Nicht vergessen! Die XtraWeihnachtsverlosung lauft
       noch bis zum 24.12. Nutzen Sie jetzt Ihre Gewinnchance und faxen
       Sie Ihren Teiln.-Gutschein an 0180/5000 056’

       This is the format  of  SMS  status  report  messages  as  output  from

       Message type: SMS-STATUS-REPORT
       SC address: ’’
       More messages to send: 0
       Status report qualifier: 0
       Message reference: 0
       Recipient address: ’’
       SC timestamp: 00.00.00 00:00:00(+0000)
       Discharge time: 00.00.00 00:00:00(+0000)
       Status: 0x0 ’Short message received by the SME’

       The  following invocation of gsmsmsd flushes all existing messages from
       the "SM" SMS store and looks in the "/tmp/spooldir" directory  for  SMS
       to send:

       gsmsmsd -d /dev/ttyS2 --spool /tmp/spooldir -f --store sm \
       --action ’mail smsadmin’


                     Default mobile phone device.


       Peter Hofmann <>


       Cell  broadcast  SMS  message reception has not been tested, but it has
       been enabled in the gsmsmsd daemon.

       The mobile phone device is blocked when the gsmsmsd daemon is  running,
       ie.  it  cannot be used for data transfer or from the other programs of
       this suite (gsmpb, gsmsms).

       Report bugs to   Include  a  complete,  self-contained
       example that will allow the bug to be reproduced, and say which version
       of gsmsmsd you are using.


       Copyright © 1999 Peter Hofmann

       gsmsmsd is free software; you can  redistribute  it  and/or  modify  it
       under  the terms of the GNU Library General Public License as published
       by the Free Software Foundation; either version 2, or (at your  option)
       any later version.

       gsmsmsd  is distributed in the hope that it will be useful, but WITHOUT
       ANY WARRANTY; without even the implied warranty of  MERCHANTABILITY  or
       FITNESS  FOR  A PARTICULAR PURPOSE.  See the GNU Library General Public
       License for more details.

       You should have received a copy  of  the  GNU  Library  General  Public
       License along with gsmsmsd; see the file COPYING.  If not, write to the
       Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.


       gsminfo(7), gsmpb(1), gsmctl(1), gsmsendsms(1), gsmsmsstore(1).