Home / LinuxUser / 2006 / 08 / Datenaustausch mit ObexFTP und der Bash

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(179 Punkte bei 5 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)
Mageia 2 ist fertig
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Im übertragenen Sinne

Datenaustausch mit ObexFTP und der Bash

01.08.2006 ObexFTP hilft beim Austausch von Dateien zwischen Mobiltelefon und PC. Mit einigen Zeile Shellcode rundherum macht es Ihr Handy auch gleich zum Fotoalbum oder zur Jukebox.

Mobiltelefone werden immer mehr zum ständigen Begleiter der Menschen, sie haben sich von der tragbaren Telefonzelle längst zu hochintegrierten Multimediageräten entwickelt. Dies eröffnet jedoch auch neue Anforderungen beim Dateiaustausch: Die Bilder der Handy-Kamera müssen aufgrund der beschränkten Speichermedien langfristig auf dem heimischen PC archiviert werden. Auch der MP3-Player des Mobiltelefons benötigt hin und wieder frische Titel.

Herkömmliche Synchronisationsprogramme wie Kitchensync oder Multisync können diese Aufgaben nicht erfüllen. Sie gleichen lediglich Termine und Kontakte ab. Eine einfache Lösung zum individuellen Datenaustausch stellt daher ein einfaches Bash-Skript dar. Den Austausch der Dateien zwischen Handy und Notebook via Bluetooth, Infrarot oder USB übernimmt dabei das Kommandozeilenprogramm obexftp [1]. Da sich ObexFTP komplett über Parameter steuern lässt und keine interaktiven Eingaben erwartet, eignet es sich ideal für Skripte.

Bluetooth individuell

ObexFTP kann nicht nur mit Bluetooth-Geräten umgehen, es kommuniziert auch mit per Infrarot oder seriellem Kabel angeschlossenen Handys und Organizern. Während man bei Infrarot-Verbindungen lediglich den Parameter -i angegeben muss, benötigt ObexFTP für den Datenaustausch per Bluetooth neben dem Parameter -b die Bluetooth-ID der Gegenstelle. Die ermitteln Sie mit dem Aufruf hcitool scan, wobei Sie keine Root-Rechte benötigen:

$ hcitool scan
Scanning …
   00:01:E3:53:29:68   SK65
   00:16:20:63:1C:40   W300i

Die Bluetooth-ID der ersten Spalte ist genau wie die MAC-Adresse einer Netzwerkkarte für jedes Gerät einmalig und identifiziert das Handy zuverlässig. Indem Sie den Synchronisationsvorgang stets davon abhängig machen, dass das angebundene Gerät genau diese Bluetooth-ID besitzt, können Sie vermeiden, dass Ihr Rechner plötzlich mit dem Handy eines zufällig anwesenden Besuchers Daten austauscht.

Für aktuelle Mobiltelefone sollten sie unbedingt die neueste Version von ObexFTP übersetzen und installieren, da die in den meisten aktuellen Distributionen enthaltene Version 0.10.7 etwa mit dem Sony-Ericsson W300i und dem W700i nicht funktioniert (siehe Artikel S. 42). Mit der der bei Redaktionsschluss aktuellen Version 0.20 gibt es hingegen keine Probleme.

Datenaustausch per FTP

Die wichtigsten Funktionen von ObexFTP sind ls, get und put. Die passenden Parameter auf der Kommandozeile lauten -l, -g und -p, jeweils gefolgt vom Verzeichnispfad oder den Dateinamen. Während ObexFTP get- und put-Anfragen selbst bearbeitet, indem es die Dateien direkt auf die Festplatte schreibt oder von dort auf das Handy überträgt, schreibt die ls-Funktion die vom Handy übertragene XML-Datei mit den Verzeichnisinformationen unverändert auf die Standardausgabe. Listing 1 zeigt die Verzeichnisstruktur des Memorysticks auf einem Sony-Ericsson W300i.

Listing 1

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE folder-listing SYSTEM "obex-folder-listing.dtd">
<!--
 XML Coder, Apr 30 2006, 18:51:19, (C) 2001 Sony Ericsson Mobile Communications AB
-->
<folder-listing version="1.0"><parent-folder/>
<file name="MEMSTICK.IND" size="0"/>
<file name="MSTK_PRO.IND" size="0"/>
<folder name="DCIM"/>
<folder name="MP3"/>
<folder name="MSSEMC"/>
</folder-listing>

Ein Manko des Obex-Protokolls ist, dass es keine Wildcards kennt. Das macht das Herunterladen etwa aller Fotos der im Handy eingebauten Kamera aufwändig: Sie müssen zunächst das betreffende Verzeichnis nach den Dateien durchsuchen und sie dann für ObexFTP auflisten. In Listing 1 sehen Sie neben den Dateien MEMSTICK.IND und MSTK_PRO.IND (Zeile 7 und 8) die Verzeichnisse DCIM mit den Bildern der Kamera, MP3 für die Musik sowie MSSEMC für Videos und andere Multimedia-Dateien (Zeile 9 bis 11), Sie müssen also die XML-Datei analysieren, um an die Datei- und Verzeichnisnamen heranzukommen.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

318 Hits
Wertung: 0 Punkte (0 Stimmen)

Schlecht Gut

Infos zum Autor

Mirko Dölle

Redakteur für Linux bei c't, Heise Zeitschriften Verlag; ehemals Competence Center Hardware/Linux-Magazin, Linux New Media AG


Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...