OpenSync/SyncML-OBEX-Client
aus openSUSE, der freien Wissensdatenbank
Inhaltsverzeichnis |
Einführung
Das SyncML OBEX Client Plugin erlaubt es, mit modernen Mobiltelefonen eine lokale Synchronisation durchzuführen. Die Synchronisation wird von Bluetooth und USB unterstützt. In OpenSUSE 10.2 Beta 2 gibt es für den Desktop Benutzer defaultmäßig keine Berechtigung, das USB RAW Interface zu verwenden. Dies wird zukünftig hoffentlich geändert, wenn wir viele USB Produkt- und Vendor IDs von Mobiltelefonen erhalten. Damit können wir dann für die nächste OpenSUSE Beta eine hal-resmgr fdi Datei anbieten, die den Zugang zum USB RAW Interface des Mobiltelefons erlaubt. Für Palm Geräte ist dies bereits geschehen.
Fügen Sie der Liste "Getestete Geräte" bitte auch dann detaillierte Informationen zu ihrem Mobiltelefon hinzu, wenn Sie bisher noch keinen Erfolge hatte!
Getestete Geräte
Nokia
| Modell | Firmware | Kontakte DB | Termine DB | Notizen DB | Aufgaben DB | wbxml | Identifier | SyncML | Bluetooth | USB | USB Produkt ID | USB Vendor ID | libsyncml | Tester | Kommentar |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2630 | | contacts | calendar | notes | todo | PC Suite | 1.1 | - | - | 0.4.4.2 | ligfiets | Zum Synchronisieren wird ein "sauberer Bildschirm" benötigt | |||
| 6300 | v5.0 | contacts | calendar | notes | Todo | | PC Suite | 1.1 | - | - | 0.4.4 | jh40 | Zum Synchronisieren wird ein "sauberer Bildschirm" benötigt | ||
| 6230 | v5.50 | contacts | calendar | notes | PC Suite | 1.1 | 0x421 | 0x40f | 0.4.2 | dgollub | Zum Synchronisieren wird ein "sauberer Bildschirm" benötigt | ||||
| 6230i | v3.70 | contacts | calendar | notes | PC Suite | 1.1 | 0x421 | 0x428 | 0.4.2 | dgollub | Zum Synchronisieren wird ein "sauberer Bildschirm" benötigt | ||||
| 6680 | v4.05.07 | Contacts | Calendar | Notes | PC Suite | 1.1 | - | - | 0.4.2-0.4.4 | Arinium | msynctool | ||||
| 9300i | v6.27(00) | Contacts | Calendar | RcntTask | PC Suite | 1.1 | - | - | 0.4.4 | kwbolte | Konfigurationsdatei finden Sie hier: http://www.opensync.org/wiki/Nokia_9300i | ||||
| 9500 | v5.22(1) | Contacts | Calendar | Notes | PC Suite | 1.1 | - | - | 0.4.2 | FunkyM | DB-Namen sind ander, "msynctool --sync nokia" funktioniert / multisync-gui schlägt auf evo2-sync fehl | ||||
| E51 | v100.34.20 | Contacts | Calendar | Notes | PC Suite | 1.1 | - | - | 0.4.6 | en:User:Jas4711 | Bugs in opensync (?) causes duplicated contacts when I also use iSync on Mac OS X. 0.4.5 did not work with calendar syncing. | ||||
| E65 | v2.0633.01.00 | Contacts | Calendar | Notes | PC Suite | 1.1 | - | - | 0.4.2-0.4.4 | Arinium | Using msynctool works but only one way: E65->Suse. Syncml-obex-client as described here doesn't work at all. | ||||
| E90 | | Contacts | Calendar | Notes | PC Suite | 1.1 | - | - | 0.4.4 | kwbolte | Konfigurationsdatei finden Sie hier: http://www.opensync.org/wiki/Nokia_E90 | ||||
| N73 | v3.0638.0.0.1 | Contacts | Calendar | Notes | PC Suite | 1.1 | - | - | 0.4.2 | Priwinn | Kein "sauberer Bildschirm" nötig, nur mit kdepim-sync getestet |
| Legende: |
- "Sauberer Bildschirm" wird für die Synchronisation benötigt
- Das bedeutet, dass das Mobiltelefon die Synchronisation nicht ermöglicht, solange eine andere Anwendung läuft. Sogar ein Status Report einer vorherigen Synchronisation verhindert eine neue Synchronisation.
- In Kürze: Versichern Sie sich, dass auf ihrem Mobiltelefon keine andere Anwendung läuft oder sonst ein Dialogfenster geöffnet ist - "sauberer Bildschirm".
- "Received an transport error: Request not successfull: 67" - erscheint, wenn die Synchronisation verhindert wird
Sony Ericsson
- Auf Sony Ericsson Mobiltelefonen kann die Firmware-Version folgendermaßen abgefragt werden: "> * < < * < *" , wobei "<" bzw. ">" eine Joystick Bewegung nach links bzw. rechts bedeutet. Man findet es auch unter Einstellungen/Allgemein/Updateservice/Softwareversion (je nach Provider ausgeblendet)
| Modell | Firmware | Kontakte DB | Termine DB | Notizen DB | Aufgaben DB | wbxml | Identifier | SyncML | Bluetooth | USB | USB Produkt ID | USB Vendor ID | libsyncml | Tester | Kommentar |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| K750i | | contacts | agenda | notes | tasks | | 1.1 | d016 | 0fce | 0.4.2 | cstender | ||||
| D750i | R1N035 | contacts | agenda | notes | tasks | | 1.1 | d016 | 0fce | 0.4.2 | fasa01 | getestet mit SL10.1,oS10.2 | |||
| V630i | R1ED001 | contacts | agenda | notes | tasks | | | 1.1 | d043 | 0fce | 0.4.4_SVN237 | felixmoeller2 | openSUSE 10.3-alpha2 | ||
| W800i | R1AA008 | contacts | calendar agenda | notes | tasks | | | 1.1 | d028 | 0fce | 0.4.4-98 | casualprogrammer | openSUSE 11.0 RC1 | ||
| W810i | O2-firmware | contacts | agenda | notes | tasks | | | | | | 0.4.4-42 | Danielmader | openSUSE 10.3 GM | ||
| K530i | R8BB001 | contacts | agenda | notes | tasks | | | 1.1 | d079 | 0fce | 0.4.4-42 | RedDwarf | openSUSE 10.3 GM | ||
| K800i | R1KG001 | contacts | agenda | notes | tasks | | | 1.1 | | | 0.4.4-42 | drye | openSUSE 10.3 GM | ||
| K770i | R8AB001 | contacts | calendar | notes | tasks | | | 1.1 | d0b7 | 0fce | 0.4.4-42 | Dukla2000 | openSUSE 10.3 GM | ||
| K810i | R3A022 | contacts | agenda | notes | tasks | | 1.1 | d0a1 | 0fce | 0.4.4 | zehmi | openSuSE 10.3 | |||
| G502 | R1FA031 | contacts | agenda | notes | tasks | | 1.1 | | | 0.4.4-99.1 | jowi24 | openSuSE 11.0 |
| Legende: |
- Hinweise zum G502
- Aufruf ohne --wbxml führt zu folgenden Fehler (Neustart des Geräts erforderlich)
Received an transport error: Bluetooth connect error Received an transport error: Link Error
Testfallgrundlagen
Für die folgenden Testfälle benötigen Sie das Kommandozeilenprogramm "syncml-obex-client" welches im Paket libsyncml bzw. libsyncml-tools enthalten ist. Die Anwendung wird nur zum Testen verwendet und ist etwas kompliziert zu nutzen. Einige Grundlagen:
--sync <Typ> <Datenbank> --slow-sync <Typ> <Datenbank>
Der Parameter --slow-sync löst einen sogenannten "slow sync" aus, der alle Einträge der angegebenen Datenbank abruft. --sync fragt nur die seit der letzten Synchronisierung neu hinzugekommenen oder geänderten Einträge ab (zum Testen nicht sehr hilfrich).
- Typ: steht für den MIME-Typ
- text/x-vcard - für Kontakte
- text/x-vcalendar - für Termine
- text/plain - für Notzien
- Datenbank: ist der Name der Datenbank im Gerät in der die Einträge gespeichert sind. Bekannten Datenbanknamen:
- contacts
- calendar
- notes
- tasks
- agenda (auf einigen Sony Erricson Mobiltelefonen)
--identifier <Name>
Dieser Parameter setzt die "Synchronization Software"-Identifikation, die genutzt wird, um das Mobiltelefon zu identifizieren. Die meisten Mobiltelefone ignorieren diesen Identifikationswert. Bisher kennen wir nur Nokia-Mobiltelefone, die die Synchronisation ablehnen, wenn die Identifikation falsch ist. Die Identifikation für Nokia-Mobiltelefone ist:
- "PC Suite"
--wbxml
Dieser Parameter schaltet die Synchronisation von Plain XML auf WAP Binary XML um. Soweit wir wissen, wird dies bei den meisten Mobiltelefonen genutzt, weshalb wir es standardmäßig verwenden. Wenn Sie Probleme mit dem initialen sync-Testfall haben, entfernen Sie diesen Parameter.
-u <id>
Dieser Parameter ist für USB-Verbindungen. -u ohne id zeigt alle verfügbaren Schnittstellen an. Zur Zeit haben Nutzer standardmäßig keinen Zugriff auf das USB-RAW-Gerät. Fügen Sie das USB-Produkt- (product) und USB-Hersteller-ID (vendor) ihres Mobiltelefons bitte der Liste getesteter Geräte hinzu, so dass wir für die nächste Veröffentlichung Zugriff auf das USB-RAW-Gerät anbieten können.
-b <Adresse> <Kanal>
Dieser Parameter ist für Bluetooth-Verbindungen. <Adresse> ist die MAC-Adresse ihre Mobiltelefons und <Kanal> ist die Nummer des SyncML-Dienstes.
Umgebungsvariablen:
Falls Sie Trace-Dateien erzeugen möchten, schalten Sie tracing so ein:
export SYNCML_TRACE=/pfad/zum/log/verzeichnis
export SYNCML_LOG=/pfad/zum/log/verzeichnis
Anschließend den Aufruf neu starten, es werden je zwei Trace-Dateien im Zielverzeichnis erstellt.
hcitool scan
Sucht nach Bluetooth-Geräten und listet die Namen und MAC-Adressen der gefundenen Geräte auf. (Stellen Sie dabei bitte sicher, dass an ihrem Mobiltelefon Bluetooth aktiviert ist und dass es gefunden werden kann.)
sdptool browse <mac>
Zeigt die Bluetooth-Dienste des über die MAC-Adresse angegebenen Geräts an und gibt die zugehörige Kanalnummer aus. Suchen Sie dort nach "SyncML" oder "SyncML Client".
Testfälle
Tipp: Exportieren Sie $MAC, $KANAL und $USBINT mit den korrekten Werten für ihr Gerät und Sie können die Testfälle einfach hier kopieren und in ihrer Konsole einfügen.
Wenn Sie kein Nokia-Mobiltelefon haben, kopieren Sie nur bis --identifier "PC Suite", oder kopieren Sie nur bis --wbxml wenn ihr Gerät kein wbxml benutzt.
Initiale SyncML-Verbindung - nur lesend
Kontakte:
# Bluetooth syncml-obex-client -b $MAC $KANAL --slow-sync text/x-vcard contacts --wbxml --identifier "PC Suite"
# USB syncml-obex-client -u $USBINT --slow-sync text/x-vcard contacts --wbxml --identifier "PC Suite"
Termine:
# Bluetooth syncml-obex-client -b $MAC $KANAL --slow-sync text/x-vcalendar calendar --wbxml --identifier "PC Suite"
# USB syncml-obex-client -u $USBINT --slow-sync text/x-vcalendar calendar --wbxml --identifier "PC Suite"
(Auf einigen Sony Ericsson Mobiltelefonen müssen Sie "agenda" an Stelle von "calendar" nutzen.)
Notizen:
# Bluetooth syncml-obex-client -b $MAC $KANAL --slow-sync text/plain notes --wbxml --identifier "PC Suite"
# USB syncml-obex-client -u $USBINT --slow-sync text/plain notes --wbxml --identifier "PC Suite"
Aufgaben: (nur für Geräte, die Aufgaben/zu erledigendes nicht in der Termindatenbank speichern)
# Bluetooth syncml-obex-client -b $MAC $KANAL --slow-sync text/x-vcalendar tasks --wbxml --identifier "PC Suite"
# USB syncml-obex-client -u $USBINT --slow-sync text/x-vcalendar tasks --wbxml --identifier "PC Suite"
Mehrere Einträge mit dem Gerät synchronisieren
syncml-obex-client -b $MAC $KANAL --slow-sync text/x-vcard contacts --slow-sync text/x-vcalendar calendar --wbxml --identifier "PC Suite"
syncml-obex-client -u $USBINT --slow-sync text/x-vcard contacts --slow-sync text/x-vcalendar calendar --wbxml --identifier "PC Suite"
Dieser Testfall führt beim Sony Ericsson W800i zum Einfrieren mit der Anzeige "Synchronisieren", einzige Abhilfe: Akku entfernen.
Einen einzelnen Eintrag mit dem Gerät synchronisieren
syncml-obex-client -b $MAC $KANAL --slow-sync text/x-vcalendar calendar --add text/x-vcalendar /tmp/test.vcf --wbxml --identifier "PC Suite"
syncml-obex-client -u $USBINT --slow-sync text/x-vcalendar calendar --add text/x-vcalendar /tmp/test.vcf --wbxml --identifier "PC Suite"
Ihr SyncML-OBEX-Gerät als Nutzer verwenden
Um ihr Mobiltelefon als normaler Nutzer (also nicht als root) synchronisieren zu können, müssen die Berechtigungen korrekt gesetzt werden. Dies wird von resmgr, hal und co. erledigt.
Erstellen Sie eine Datei /etc/hal/fdi/policy/20user/cell.fdi mit folgendem Inhalt:
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.category" string="usbraw">
<match key="@info.parent:usb_device.vendor_id" int="0x<HIER EINFÜGEN>">
<match key="@info.parent:usb_device.product_id" int="0x<HIER EINFÜGEN>">
<merge key="resmgr.class" type="string">cell</merge>
</match>
</match>
</match>
</device>
</deviceinfo>
Um die Klasse zu erstellen, erstellen Sie die Datei /etc/resmgr.conf.d/50-cell.conf mit folgendem Inhalt:
class cell class desktop includes cell
usb_device.vendor_id und usb_device.product_id müssen an die korrekten Werte angepasst werden, die Sie mit lsusb herausfinden können. (Bitte 0x voranstellen, z.B. 0x0fce für usb_device.vendor_id )
Eine alternative /etc/hal/fdi/policy/20user/cell.fdi:
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.bus" string="usb_device">
<match key="usb_device.vendor_id" int="<HIER EINFÜGEN>">
<match key="usb_device.product_id" int="<HIER EINFÜGEN>">
<merge key="resmgr.class" type="string">cell</merge>
</match>
</match>
</match>
</device>
</deviceinfo>
Weiteres finden Sie in Fehler #258986
.

