Provided by: scmxx_0.9.0-2_i386 bug

NAME

       scmxx - Datenaustausch mit einem Siemens-Handy

SYNOPSIS

       scmxx  [--device  Gerätedatei]  [--baud Baudrate] [--quiet] [--verbose]
       [--reset] {--info | --set-time | --mem-info | --lock-info | --lock lock
       {--enable | --disable} | --set-smsc --number {Nummer | Name} }

       scmxx  [--device  Gerätedatei]  [--baud Baudrate] [--quiet] [--verbose]
       [--reset] [--out Datei] [--pipe  Pipe]  {--remove  |  --send  |  --get}
       [--binary] [--mem Speicher] [--slot Speicherplatz] [Datei...]

       scmxx  [--device  Gerätedatei]  [--baud Baudrate] [--quiet] [--verbose]
       [--reset] [--out Datei] [--pipe Pipe] [--pin PIN] {--remove | --send  |
       --get}  [--pbook] [--mem Speicher] [--slot Speicherplatz] [--text Text]
       [ --number {Nummer | Name} ] [Datei...]

       scmxx [--device Gerätedatei] [--baud  Baudrate]  [--quiet]  [--verbose]
       [--reset]  [--out  Datei]  [--pipe  Pipe]  {--remove  | --send | --get}
       [--sms]  [--mem  Speicher]  [--slot  Speicherplatz]  [--text  Text]   [
       --number  {Nummer  |  Name}  ] [--direct] [--flash] [--srr] [--unicode]
       [Datei...]

       scmxx [--help] [--version]

BESCHREIBUNG

       SCMxx kann bestimmte Dateien zu und von einem Siemens-Handy  übertragen
       und  dort  gespeicherte  löschen. Die Daten werden aus einer Datei oder
       von der Standardeingabe gelesen, geschrieben wird in  eine  Datei  oder
       auf  die  Standardausgabe. Kurznachrichten (SMS) können direkt gesendet
       und empfangen werden, also ohne  daß  sie  auf  dem  Handy  gespeichert
       werden.   SCMxx wurde mit mehreren Handys von Siemens getestet (nur S25
       und später).

OPTIONEN

       --device (-d)
              definiert  eine  Gerätedatei.  Diese  wird  statt  der  in   der
              Umgebungsvariable   SCMXX_TTY   und   dem  einkompilierten  Wert
              verwendet. Für  Linux-Systeme  kann  dies  /dev/ttyS0  für  eine
              serielle  Verbindung,  /dev/ircomm0 für eine Infrarot-Verbingung
              und  /dev/rfcomm0  for  eine  Bluetooth-Verbingung  sein.   Wenn
              native   Bluetooth-Unterstützung   einkompiliert  wurde,  können
              zusätzlich   die    Formen    bt://[xx:xx:xx:xx:xx:xx]:n    oder
              bluetooth://[xx:xx:xx:xx:xx:xx]:n   benutzt   werden,   um  eine
              Bluetooth-Adresse   xx:xx:xx:xx:xx:xx   und   einen   Kanal    n
              (Vorgabewert   ist  1)  anzugeben.  Die  Angabe  des  Kanals  is
              optional,  in  diesem  Fall  muss  aber  auch  der   Doppelpunkt
              weggelassen werden.

       --baud (-b)
              definiert  ein  Baudrate,  mit der zum Gerät verbunden wird. Die
              gültigen Werte sind abhängig vom System,  typische  sind  jedoch
              9600,  19200,  38400,  57600  oder  115200. Der Standardwert ist
              19200. Das S25  und  die  *35i  arbeiten  nur  bei  19200,  alle
              späteren    Modelle   arbeiten   auch   bei   voller   serieller
              Geschwindigkeit.  Infrarotverbindungen  können,   abhängig   vom
              IrDA-Modul,    eine    Ausnahme    sein.   Dies   übergeht   die
              SCMXX_BAUD-Variable und den einkompilierten Wert.

       --out (-o)
              definiert eine zu benutzende Datei.  Wenn  man  Binärdatein  mit
              "all"  holt,  werden  die  Speicherplatznummer  und der Dateityp
              angehängt. Wenn man sendet oder  löscht,  hat  dieser  Parameter
              keine  Wirkung  aber  die  letzten Parameter sollten beim Senden
              gültige Dateien sein. Die Standardausgabe  muß  explizit  mittel
              einem  Bindestrich (’-’) angegeben werden, sonst wird nichts auf
              diese geschrieben. Wenn  ’-’  angegeben  wurde,  wird  nicht  an
              diesen Wert, auch beim holen von mehereren Dateien, angehängt.

       --pipe (-p)
              definiert  eine  Pipe  zu  einem  anderen Programm. Wenn man mit
              "all" Daten holt, wird jede Datei in eine eigene Pipe  geschickt
              (nur mit --binary und --sms).

       --quiet (-q)
              verringert die Menge der Ausgaben um 1

       --pin  die  Option  kann  man  benutzen,  wenn ein PIN-Code zum Zugriff
              erforderlich ist

       --verbose (-v)
              erhöht die Menge der Ausgaben um 1

       --reset
              versucht, das Handy  zurückzusetzen,  sodaß  man  wieder  darauf
              zugreifen kann.  Es kann passieren, daß das Handy nicht mehr auf
              der seriellen Schnittstelle antwortet, besonders nach einem  vom
              Benutzer  unterbrochenen  Dateitransfer.   Dies  sendet  einfach
              blind ein paar besondere Zeichen.

       --help (-h)
              gibt die Hilfeseite aus

       --version
              gibt die Version aus

       --remove (-r)
              löscht  einen  Eintrag  vom  Handy  Wenn  --sms  und  --get  mit
              angegeben  werden,  holt  und löscht dies. Wenn --sms und --send
              mit angegeben werden, sendet und löscht dies.

       --get (-g)
              holt einen Eintrag und Speichert ihn in eine  Datei  Wenn  --sms
              und  --remove  mit  angegeben werden, holt und löscht dies. Wenn
              --sms und --send mit angegeben werden, holt und sendet dies.

       --send (-s)
              sendet eine Datei zum  Handy  Beim  Senden  vom  Kurznachrichten
              könnte  die  Option  --direct ebenfalls von Interesse sein. Wenn
              --sms und --remove mit angegeben werden, sendet und löscht dies.
              Wenn  --sms und --get mit angegeben werde, holt und sendet dies.

       --info (-i)
              sammelt Informationen vom Handy, --mem-info  kann  als  Schalter
              benutzt  werden und eine komplexere Tabelle über die verfügbaren
              Speicher auszugeben.

       --mem-info
              zeigt  Informationen  über   verfügbare   Speicher   und   deren
              Speicherplätze  und andere Informationen an. Es benutzt dasselbe
              Format wie --mem=? und kann als Schalter für --info  dienen,  um
              die kurze Speicherauflistung zu ersetzen.

       --lock-info
              zeigt  den  Status  der  Zugriffssperren (locks) an. Es kann als
              Schalter für --info dienen, um die kurze  Speicherauflistung  zu
              ersetzen.

       --lock wählt  die  ein-/auszuschaltende Sperre aus.  Für einige Sperren
              wird ein Passwort benötigt (siehe --pin).

       --enable
              einschalten z.B. einer Sperre

       --disable
              ausschalten z.B. einer Sperre

       --dial wählt eine Nummer (erforder  --number).   Das  Programm  beendet
              sich   entweder  nach  10  Sekunden  oder  wenn  der  Anruf  die
              angerufene Seite erreicht hat.

       --hangup
              beendet alle, momentan aktiven Gespräche

       --set-time
              gleicht die Zeit des Handy mit der des Rechners ab. Der  Einsatz
              eines   Programms  wie  ntpdate  wird  vor  der  Nutzung  dieses
              Parameters empfohlen.

       --set-smsc
              setzt eine neue SMSC nummber (erfordert --number)

       --binary (-N)
              wählt den Binärdateiübertragungsmodus

       --pbook (-P)
              wählt den Telefonbuchübertragungsmodus

       --sms (-S)
              wählt den Kurznachrichtenübertragungsmodus

       --mem  wählt   den   Speicher   aus,   der   benutzt    werden    soll.
              Speicherplatznummern  hängen von dieser Wahl ab. Die Ausgabe von
              --info zeigt unterstützte Speicher an. Wird diese Optioen  nicht
              benutzt, wird eine eventuell vorhandene Vorgabe benutzt. Es gibt
              den besonderen Wert "?", der die selbe  Ausgabe  wie  --mem-info
              hat, nur daß es auf den gewählten Modus eingeschränkt wird.

       --slot wählt  die zu benutzende Speicherplatznummer aus. (siehe Ausgabe
              von --mem-info oder --mem=?). Wird diese Optioen nicht  benutzt,
              wird  eine  eventuell  vorhandene Vorgabe benutzt. Der besondere
              Wert "all" definiert the alle  verfügbaren  Speicherplatznummern
              für den gewählten Speicher und Modus (mit der Ausnahme von --sms
              mit --send). Für den  Kurznachrichtenübertragungsmodus  gibt  es
              die  besonderen  Werte  "read"  (gelesen), "unread" (ungelesen),
              "sent" (bereits gesendet) und "unsent"  (noch  nicht  gesendet).
              Die letzteren beiden können mit --sms und --send benutzt werden.
              Für den Telefonbuchmodus gibt  es  zusätzlich  den  Wert  "last"
              (letzter).  Wenn  diese  Option  nicht  angegeben wird, versucht
              scmxx einen leeren Speicherplatz zu finden (je nachdem kann dies
              auch  länger dauern). Wenn ein Wert angegeben wurde und meherere
              Datei gesendet werden, ist die angebene Speicherplatznummer  der
              Startpunkt  für  die  Suche nach leeren Speicherplätzen. Mehere,
              nicht-leere  Speicherplätze  zu  überscheiben  wird  noch  nicht
              unterstützt, außer für den Spezialfall "all" (alle).

       --text (-t)
              definiert    den   Inhalt   einer   Kurzmitteilung   oder   eine
              Telefonbucheintrags.  Bei Telefonbucheinträgen hängt  die  Länge
              vom  gewählten Telefonbuch ab (siehe Ausgabe von --mem-info oder
              --mem=?).

       --number (-n)
              definiert die Nummber beim Senden einer Kurznachricht  oder  die
              Nummer  bei einem Telefonbucheintrag. Die Nummer kann ein Prefix
              ’+’ für internationale Nummern haben und ist  normalerweise  auf
              20 Ziffern (ohne das ’+’) limitiert, was genug sein sollte.

       --direct
              sendet/holt Kurznachrichten ohne sie auf dem Handy zu speichern.
              Dies  ist  kein  Standardwert,  weil  man  für  das  Senden  von
              Kurznachrichten  normalerweise  Geld bezahlen muß. Beim direkten
              Holen werden Kurznachrichten, die  nicht  vom  Type  SMS-DELIVER
              sind  trotzdem  auf  dem  Handy gespeichert, da diese noch nicht
              dekodiert werden können.

       --unicode
              sendet Kurznachrichten  als  UCS-2  (16bit-Unicode-Zeichensatz).
              Dieser    Parameter    muß    nicht    angegeben    werden,   um
              Unicode-Kurznachrichten zu dekodieren.

       --flash
              dies setzt  das  Class0-Bit  im  DCS-Feld,  was  beim  Empfänger
              normalerweise  als  "immediate  display"  (unmittelbar anzeigen)
              interpretiert wird. Nicht alle Empfangsgeräte unterstützen  das.
              Man  muß  außerdem  beachten,  daß eine zweite Kurznachricht mit
              dieser Einstellung eine vorherige ohne  Nachfrage  überschreibt!
              Die Nutzung wirde deshalb nicht empfohlen.

       --srr  dies  setzt das Bit StatusReportRequest (Statusreport anfordern)
              im pdutype-Feld der SMS-PDU. Es hängt von der SMSC ab, ob dieses
              Bit  beachtet  wird.  Bei manchen Providern kosten StatusReports
              extra.

       --sort sortiert  die  Kurznachrichten   bei   der   Ausgabe.   Mögliche
              Sortiermethoden  sind  "type",  "slot"  und  "type,slot". "type"
              sortiert nach dem Nachrichtentyp mit einer  internen  Rangfolge:
              erst   die   nicht   unterstützten   Typen,   dann   SMS-SUBMIT,
              SMS-STATUS-REPORT und SMS-DELIVER.   "slot"  sortiert  nach  dem
              Speicherplatz  der Kurzmitteilung. "type,slot" sortiert erst wie
              "type" und dann jeden Typen wie "slot". Die  Vorgabe  ist  keine
              Sortierung (Reihenfolge hängt vom Handy ab).

       --pin  ermöglichst  die  Nutzung  einer  PIN.  Diese  Option sollte nur
              benutzt werden, wenn nach eine Fehlermeldung erscheint, die nach
              einer PIN oder PUK verlangt. Für eine PIN ist dies die erwartete
              "<PIN>", für eine PUK ist dies die erwartete "<PUK>,<new  PIN>".
              Der  Wert  wird  nur  ein  einziges  Mal benutzt.  Die Pin-Datei
              sollte, wenn möglich, stattdessen benutzt werden (siehe  unten).

       --system-charset
              definiert  den  Systemzeichensatz  anstatt  den Rückgabewert von
              nl_langinfo(CODESET) zu nutzen. Das ist eine Behelf für Systeme,
              die keine Unicode-Locales wie UTF-8 unterstützen oder wenn Daten
              von einem anderen System mit einer anderen  Locale  als  Eingabe
              benutzt  werden  soll.   Normalerweise  wird  diese Option nicht
              benötigt.

BEISPIELE

       Senden einer Bitmapdatei an das Handy (Logo):
              scmxx --send --binary --mem="bmp" --slot=0 myfile.bmp

       Holen eines Logos vom Handy und speichern in eine neue Datei:
              scmxx --get --binary --mem="bmp" --slot=0 --out=myfile.bmp

       Holen  aller  ungelesenen  (Vorhabe  beim  holen)  Kurznachrichten  und
       Ausgabe auf die Standardausgabe:
              scmxx --get --sms --slot=unread --out=-

              scmxx -gS -o-

       Direkten empfangen einer Kurznachricht:
              scmxx --send --sms --direct --number=123 --text="test"

       Holen eines Telefonbuchs und speichern in eine Datei:
              scmxx --get --pbook --mem=SM --out=SM.pb

       Änders des Speicherplatzes 33 im Telefonbuch SM:
              scmxx -sP --mem=SM --slot=33 --number=123 --text="test"

BESONDERHEITEN

       Die Ausgabe von Text (Telefonbuch und SMS) hängt  von  dem  Zeichensatz
       der  gewählten  Systemlocale  ab,  ebenso  für die Eingabe. Das hat den
       Vorteil der Lokalisation aber auch den Nachteil, daß alle nicht von der
       Locale  unterstützten Zeichen mit einer Sequenz \XXXX eingegeben werden
       müssen,  wobei  X  ein  Hexadezimalzeichen  ist  (z.B.  \20ac  für  das
       Eurozeichen).  Das  ist  der 16bit-Unicode-Wert. Die \XXXX-Ausgabe wird
       nur für Ausgaben benutzt, die normalerweise  auch  wieder  als  Eingabe
       dienen  können.   Für  alle anderen Ausgabe wird ein Fragezeichen (’?’)
       als   Platzhalter   genommen.   Mit   einer   UTF-8-locale   kann   man
       sicherstellen,  daß  alle  Zeichen  konvertiert  und  angezeigt  werden
       können. Das  Zeichen  für  das  Zeilenende  kann  als  das  übliche  \n
       eingegeben  werden und ’\’ muß sich selbst vorangestellt werden. In der
       bash kann dies sogar in einem "\\\\" enden.

VERBINDUNGSPROBLEME

       Es gibt die zusätzlichen Parameter --ignore-serial-bits (serielle  Bits
       ignorieren,    Vorgabe)    und    --keep-serial-bits   (serielle   Bits
       beibehalten).  Diese sollte man nur probieren,  wenn  das  Handy  keine
       Antwort  zu  geben  scheint. Welchen Einstellung die richtig ist, hängt
       vom Kabel und vom seriellen Port ab und kann nicht automatisch bestimmt
       werden.

       Wenn Timeouts beim ersten Kommando kommen, kann man außerdem die Option
       --start-delay=<seconds> (Anfangsverzögerung in Sekunden) probieren.

       Eine  weitere  Option  --device-timeout=<seconds>   (Gerätetimeout   in
       Sekunden) gibt es für den Fall, daß es das Handy nicht schafft, auf ein
       Kommando innerhalb von 10 Sekunden zu antworten. Eigentlich sollte dies
       mehr  als  genug  sein, aber man weiß ja nie. Der minimal erlaubte Wert
       ist 1, der höchste von 25 bedeutet "unendlich lange".

SICHERHEIT

       Die --pin Option sollte man mit Vorsicht benutzen. Diese Option mitsamt
       Wert ist in der Prozesslist sichtbar.

UMGEBUNGSVARIABLEN

       SCMXX_TTY
              siehe --device für eine Beschreibung

       SCMXX_BAUD
              siehe --baud für eine Beschreibung

DATEIEN

       ~/.scmxx/cache.pb
              Diese    Datei   dient   als   Telefonbuch   (für   Nummer   von
              Empfänger/Sender) während der Ausgabe  von  Kurznachrichten  und
              als  Alias  für  --number  beim  Senden von Kurznachrichten. Das
              Format   ist   dasselbe   wie   eine    Telefonbuchdatei    (die
              Speicherplatznummern  sind  nicht wichtig, müssen aber vorhanden
              sein).

       ~/.scmxx/config
              Diese Datei kann Option in der langen Form (aber  ohne  die  --)
              enthalten.  Der  Wert  is von der Option durch ein ’=’ getrennt.
              Eine beliebige Anzahl von Leerzeichen ist am Anfang  der  Zeile,
              vor  und  nach  dem  Trennzeichen erlaubt. Ein ’#’ am Anfang der
              Zeile markiert diese Zeile als Kommentar.  Beispiele:

                        #eine andere Gerätedatei festlegen
                        device  =  /dev/ttyS0
                        #SMS immer als UCS-2 senden
                        unicode

       ~/.scmxx/pin
              Diese Datei wird als Alternative zur --pin  Kommandozeilenoption
              benutzt.  Die  Datei  DARF  NICHT gruppenlesbar/-schreibbar oder
              weltlesbar/-schreibbar sein! Es MUSS auch  eine  reguläre  Datei
              sein,  kein  SymLink.  SCMxx  wird  sonst  die Nutzung der Datei
              verwehren.  Wenn ein PUK-Wert vom Gerät  angefordert  wird,  muß
              ein  zugehöriger  PIN-Wert ebenfalls definiert sein.  Die einzig
              nötigen Formatelemente sind ’{’, ’=’, ’;’ und  ’}’.  Leerzeichen
              und  Zeilenumbrüche werden ignoriert. Die Datei hat das folgende
              Format:

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

              "sim"-Sektionen    benutzen    die    IMSI     als     Variable,
              "device"-Sektionen benutzen die IMEI als Variable (siehe Ausgabe
              von --info). Da die IMSI benötigt wird, können sie hiermit nicht
              das   Handy   einschalten.    Die   "type"-Untersektion  in  der
              device-Sektion hat folgende Variablen:

              SIM    Gerätecode (Diebstahlsicherung)

              FSIM   die zuallererst eingelegte SIM

              NET    Netwerk-Personalisierung

              NETSUB Netwerk-Subset-Personalisierung

              SP     Service-Provider-Personalisierung

              CORP   Corporate-Personalisierung

AUTOR

       Hendrik Sattler post@hendrik-sattler.de