Man Linux: Main Page and Category List

NAME

       scmxx - exchange data with your Siemens mobile phone

SYNOPSIS

       scmxx   [--device   device]  [--baud  baudrate]  [--quiet]  [--verbose]
       [--reset] {--info | --set-time | --mem-info | --lock-info | --lock lock
       {--enable | --disable} | --set-smsc --number {number | name} }

       scmxx   [--device   device]  [--baud  baudrate]  [--quiet]  [--verbose]
       [--reset] [--out file]  [--pipe  pipe]  {--remove  |  --send  |  --get}
       [--binary] [--mem memory] [--slot slot] [file...]

       scmxx   [--device   device]  [--baud  baudrate]  [--quiet]  [--verbose]
       [--reset] [--out file] [--pipe pipe] [--pin PIN] {--remove |  --send  |
       --get}  [--pbook] [--mem memory] [--slot slot] [--text text] [ --number
       {number | name} ] [file...]

       scmxx  [--device  device]  [--baud  baudrate]   [--quiet]   [--verbose]
       [--reset]  [--out  file]  [--pipe  pipe]  {--remove  |  --send | --get}
       [--sms] [--mem memory] [--slot slot] [--text text] [ --number {number |
       name} ] [--direct] [--flash] [--srr] [--unicode] [file...]

       scmxx [--help] [--version]

DESCRIPTION

       SCMxx can copy files to and from a Siemens mobile phone and also delete
       stored files. Files can read from a given file  or  through  stdin  and
       stored  to  a  given  file  or stdout. SMS can also be directly sent or
       received without storing in the mobile phone.  SCMxx  was  tested  with
       several mobile phones manufactured by Siemens (only S25 and later).

OPTIONS

       --device (-d)
              specify another than the compiled in device. This overwrites the
              SCMXX_TTY environment variable and the  compiled-in  value.  For
              linux   systems,   this   may  be  e.g.  /dev/ttyS0  for  serial
              connections,   /dev/ircomm0   for   infrared   connections   and
              /dev/rfcomm0  for  bluetooth  connections.   If native bluetooth
              support  is  compiled  in,  you  can   also   use   the   format
              bt://[xx:xx:xx:xx:xx:xx]:n  or bluetooth://[xx:xx:xx:xx:xx:xx]:n
              to  specify  a  bluetooth  address  xx:xx:xx:xx:xx:xx  and   the
              bluetooth  channel  n  (default is 1).  The channel is optional,
              omit the colon in this case, too.

       --baud (-b)
              specify the device’s speed. Valid values are  dependent  on  the
              system  but  may  be  9600,  19200,  38400, 57600 or 115200. The
              default value is 19200. The S25 and *35i only work at the 19200,
              all  later  phones  also  work  at  full  serial speed. Infrared
              connections may be an exception to these rules (dependent on the
              infrared  donle).   This  overwrites  the SCMXX_BAUD environment
              variable and the compiled-in value.

       --out (-o)
              specify a file to use. When getting binary files with "all", the
              slot  number, a dot and the filetype are appended.  When sending
              or deleting, this parameter has no use but the  last  parameters
              that  should be valid files.  Stdout must be explicitly selected
              with the dash ("-"), by default nothing is  written  to  stdout.
              There is nothing appended to "-" when getting multiple files.

       --pipe (-p)
              specify  a  pipe  to  another  program. When getting with "all",
              every file is piped to  this  programs  on  its  own  (only  for
              --binary and --sms).

       --quiet (-q)
              decreases verbosity by 1

       --pin  use this option if a PIN code is required for access

       --verbose (-v)
              increases verbosity by 1

       --reset
              try  to  reset  the  phone,  so it gets accessible again. It may
              happen that the phone does not answer on  the  serial  interface
              anymore,   especially  with  a  previous  user-interrupted  file
              transfer. This simply blindly sends some special characters.

       --help (-h)
              print the help message

       --version
              print the version number

       --remove (-r)
              removes an entry from the phone.  When specified with --sms  and
              --get,  this  will  get’n’delete.  When specified with --sms and
              --send, this will send’n’delete.

       --get (-g)
              get an entry and save it to a file.  When specified  with  --sms
              and --remove, this will get’n’delete.  When specified with --sms
              and --send, this will get’n’send.

       --send (-s)
              sends a file to the phone.  When sending sms, you might want  to
              take  a  look  at the option --direct, too.  When specified with
              --sms and --remove, this  will  send’n’delete.   When  specified
              with --sms and --get, this will get’n’send.

       --info (-i)
              collect  information from the phone, --mem-info can be used as a
              trigger to display a  more  complex  listing  of  the  available
              memories

       --mem-info
              display information about available memories and their slots and
              other information.  It uses the  same  format  as  --mem=?  (see
              below)  and  can  also be use as a trigger for --info to replace
              the short memory listing.

       --lock-info
              display status of locks. It can also be use  as  a  trigger  for
              --info to replace the lock name listing.

       --lock specify  a lock that you can enable or disable.  For some locks,
              a password is needed (see --pin)

       --enable
              enable e.g. a lock

       --disable
              disable e.g. a lock

       --dial dial a number (requires --number).  The program  returns  either
              after 10 seconds or when the call reached the other side.

       --hangup
              hangup all currently active calls

       --set-time
              synchronize  time  to  phone.  The  use of tools like ntpdate is
              recommended before using this.

       --set-smsc
              set the SMSC number (requires --number)

       --binary (-N)
              select binary file transfer mode

       --pbook (-P)
              select phonebook transfer mode

       --sms (-S)
              select short message service mode

       --mem  select a memory to access. Slot numbers may  vary  depending  on
              the  selected memory. See the output of --info for the supported
              memory types.   Not  using  this  option  triggers  the  default
              behaviour  (if  a  default  behaviour  was defined).  There is a
              special string "?" that outputs in the same format as --mem-info
              but only for the selected mode.

       --slot select  a  slot  to  access.  See  the  output  of --mem-info or
              --mem=?.  Not using this option triggers the  default  behaviour
              (if  a default behaviour was defined).  The special string "all"
              defines the whole range of  available  slots  for  the  selected
              memory  and  mode  and,  except  with --sms, cannot be used with
              --send.  For SMS, there are  four  additional  special  strings:
              "read",  "unread",  "sent"  and  "unsent". The latter two can be
              used with --send.  For phonebook access, there is the additional
              special string "last".  When this option is omitted with --send,
              scmxx tries to find an empty slot (that  may  or  may  not  take
              long).  Finding  an  empty slot is not supported for phonebooks,
              yet.  When a slot was  specified  and  also  multiple  files  to
              upload,  the  specified slot is the starting point to search for
              empty  slots.  Overwriting  multiple,  non-empty  slots  is  not
              supported, yet, except for the special case "all".

       --text (-t)
              specify  content  text of short message or text of the phonebook
              entry.  For phonebook entries, the length limit  may  depend  on
              the selected phonebook (see output of --mem-info or --mem=?).

       --number (-n)
              specify  number  to  send the short message to or the number for
              the phonebook entry.  Note that the number may  have  a  leading
              ’+’  for  international  numbers.  It  is normally limited to 20
              digits (without the ’+’) which is certainly enough.

       --direct
              send/get short messages without storing in the  phone.  This  is
              not  default  because  you will certainly be charged for it when
              sending. With direct getting, SMS that are not of  type  DELIVER
              are  still  stored  on  the  phone  (scmxx  cannot  decode those
              messages, yet).

       --unicode
              send  the  short  message  and  use  UCS-2  (16bit  unicode)  as
              character  set.   You  do  not need to specify this parameter to
              enable unicode sms decoding.

       --flash
              set the class0 in the data coding scheme field that is  normally
              interpreted  as  "immediate display". Not all receiving entities
              support this. Note that a  second  sms  of  this  type  normally
              overwrites  a  previous  one  without  asking!  Its  use  is not
              recommended.

       --srr  this sets the StatusReportRequest bit in the  pdutype  field  of
              the  sms  pdu.  It  depends on the SMSC if this is honored. With
              some providers, this produces additional costs!

       --sort sort the messages on printing to chosen output. Possible sorting
              methods are "type", "slot" and "type,slot". "type" sorts for the
              type of the short message with an internal order of  unsupported
              types first, then SMS-SUBMIT, SMS-STATUS-REPORT and SMS-DELIVER.
              "slot" sorts for the slot of the short message. "type,slot" does
              sorting  like  "type"  first  and  sorts  each type like "slot".
              Default is to not sort at all (order depends on phone).

       --pin  enable pin usage. Use this only if there was  an  error  message
              that asks for a PIN or PUK. For a PIN, this is the corresponding
              "<PIN>", for a PUK, it is "<PUK>,<new PIN>". The value  is  only
              used  once.   Consider using the pin file (see below) instead of
              this option.

       --system-charset
              define the system character set  instead  of  using  the  return
              value  from nl_langinfo(CODESET). This is to work around systems
              that do not support unicode locales like UTF-8 or when data from
              a  different  system  with  a different locale is used as input.
              Usually, you do not need this option.

EXAMPLES

       Send an bitmap file to the phone as bitmap (logo):
              scmxx --send --binary --mem="bmp" --slot=0 myfile.bmp

       Get a Bitmap from the phone and save it into a new file:
              scmxx --get --binary --mem="bmp" --slot=0 --out=myfile.bmp

       Get all unread (default on get) short messages and output to stdout:
              scmxx --get --sms --slot=unread --out=-

              scmxx -gS -o-

       Send a short message directly (not stored in the phone):
              scmxx --send --sms --direct --number=123 --text="test"

       Get a phonebook and store it to a file:
              scmxx --get --pbook --mem=SM --out=SM.pb

       Modify a specific slot (33) in phonebook memory SM:
              scmxx -sP --mem=SM --slot=33 --number=123 --text="test"

NOTES

       The output of text (phonebook and sms) depends on the character set  of
       your  current  locale.  Input  is  the  same. This has the advantage of
       localization but may have the drawback that all other  characters  must
       be  entered  by a sequence \XXXX where X is a hex character (e.g. \20ac
       for EuroSign). This is a 16bit representative of the unicode value. The
       \XXXX  is only used for output with the intention to read it again at a
       later time. For normal output, characters that cannot be  displayed  in
       the  current  local  are replaced by a ’?’. Using an UTF-8 based locale
       will make sure that  all  character  can  be  converted.   The  newline
       character  can  be  entered  using the common \n and ’\’ must be masked
       with itself. In bash, this might even result in  a  needed  input  like
       "\\\\".

CONNECTION PROBLEMS

       There  are  additional  parameters  --ignore-serial-bits  (default) and
       --keep-serial-bits.  Use it only when you  get  no  response  from  the
       phone  at  all. Which setting is needed depends on the cable and serial
       port and cannot be determined automatically.

       If  you  experience  timeouts   on   the   first   command,   try   the
       --start-delay=<seconds> parameter.

       Another  parameter  --device-timeout=<seconds> is provided for the case
       that your phone ever needs more than default value  of  10  seconds  to
       answer.  Actually, this should be more than enough but one never knows.
       The minimum value is 1, values higher than 25 mean "forever".

SECURITY

       The --pin option should be used with care. The option and its  argument
       are visible in the process list.

ENVIRONMENT

       SCMXX_TTY
              see --device for decription

       SCMXX_BAUD
              see --baud for description

FILES

       ~/.scmxx/cache.pb
              this file serves as lookup file during short message output (for
              recipient/sender address) and for number aliasing  for  --number
              on  sending  a  short  message.  The  format  is  the  same as a
              phonebook file (slot numbers don’t matter but must be  present).

       ~/.scmxx/config
              this  file  can  contain  long  options  (without  the  --), the
              arguments is seperated from the option  name  by  an  ’=’.   Any
              amount  of  spaces  at  beginning  of line, before and after the
              seperator are allowed.  A ’#’ at beginning of  line  marks  this
              line as comment.  Examples:

                        #choose a device to access
                        device  =  /dev/ttyS0
                        #always send SMS using UCS-2
                        unicode

       ~/.scmxx/pin
              This  file  is  used  as an alternativ to the --pin command line
              option. The file MUST NOT be group readable/writeable  or  world
              readable/writeable!  It  also  MUST  be  a  regular  file, not a
              symlink. SCMxx refuses to use the file if this is not the  case.
              If  a PUK value is requested by the phone, the corresponding PIN
              must also be defined.  The only necessary  format  elements  are
              ’{’,  ’=’,  ’;’  and  ’}’. Spaces and newlines are ignored.  The
              file has the following format:

                        sim 262031234567890 {
                          pin = 1234
                          puk = 12345678;
                          pin2 = 4321;
                          puk2 = 87654321;
                        }
                        device 350123456789012 {
                          type SIM {
                            pin = 0000;
                            puk = 0000;
                          }
                        }

              "sim" sections use the IMSI as identifier, "device" sections use
              the IMEI as identifier (see output of --info). Since the IMSI is
              needed, you canNOT switch the phone on with  this!   The  "type"
              sub section in the device section has the following idenfifiers:

              SIM    device code (theft protection)

              FSIM   very first inserted SIM

              NET    network personalization

              NETSUB network subset personalization

              SP     service provider personalization

              CORP   corporate personalization

AUTHOR

       Hendrik Sattler post@hendrik-sattler.de