SymbianOS - pełna integracja
SymbianOS i jego możliwości współpracy z linuksem
Ostatnia zmiana: 2007-12-11 20:50

1. Dialup
2. Video
3. Pliki
 3.1. Wyświetlanie plików
 3.2. Wysyłanie plików
 3.3. Przeglądanie zawartości telefonu
4. Synchronizacja
 4.1. Opensync


Całość opisu dotyczy telefonu Nokia 6630 (SymbianOS 8.1a, S60v2). Oznaczenie XX:XX:XX:XX:XX:XX oznacza adres BT telefonu (można go uzyskać wydając polecenie "hcitool scan"
Dialup
Możlwe jest zwykle przez BT, kabel USB lub IrDA (w zależności od wyposażenia telefonu). Całość procesu połączenia omówiona została w dokumencie Połączenie PPP z wykorzystaniem sieci GSM
Video
Wbudowany RealPlayer wymaga plików w określonym formacie.
Do odtwarzania plików video z telefonu wystarczy mplayer z wbudowaną obsługą kodeka AMR.
Aby odtworzyć dowolny plik video na telefonie niezbędne jest jego odpowiednie przekodowanie. Wymagany jest więc mencoder (z pakietu mplayera) oraz ffmepg z obsługa AMR.

    $ mencoder film.avi -ovc lavc -lavcopts vcodec=mpeg4 -vop expand=176:144,scale=176:-2 -oac pcm -o film1.avi -ofps 25
    $ ffmpeg -i film1.avi -s 176x144 -b 120 -vcodec h263 -ab 32 -ar 8000 -ac 1 -acodec amr_nb -r 25 film.3gp

Pliki
Telefon można połączyć zwykle na kilka sposóbów: kabel USB, blueooth lub irda.
Wyświetlanie plików
Wyświetlanie plików przez BT:

    $ obexftp -b XX:XX:XX:XX:XX:XX -B 12 -c E:/ -l 

Dla Nokii 6630/6670 należy wykorzystać kanał 12, nie 10!
Wysyłanie plików
Wysyłanie pliku przez BT:

    $ obexftp -b XX:XX:XX:XX:XX:XX -p plik.txt 


Inne możliwości:
- plugin obex do MC
- obexfs
- obextool
- p3nfs
Przeglądanie zawartości telefonu
Debian Mini HowTo / Bluetooth
Synchronizacja

Opensync
Umożliwia synchronizację kontaktów, kalendarza i notatek. Można zrobić backup danych, synchronizować kaledarz z google, z PDA lub innym telefonem przez gnokii czy książką programu pocztowego. W tym przykładzie zostanie zrealizowana prosta synchronizacja - backup danych do określonego katalogu. Opis powinien być aktualny także dla innych urządzeń wspierających SyncML (nie tylko z systemem Symbian)
Instalujemy niezbędne pakiety. Dla debiana będzie to (repozytoria: deb http://www.in.fh-merseburg.de/~jahn/opensync/ sid main oraz deb http://www.in.fh-merseburg.de/~jahn/ sid main):

    $ apt-get install msynctool libopensync-plugin-syncml libopensync-plugin-file

Następnie konfigurujemy opensync. Dodajemy nową grupę, rejestrujemy odpowiednie pluginy:

    $ msynctool --addgroup filesyncml
    $ msynctool --addmember filesyncl file-sync
    $ msynctool --addmember filesyncl syncml-obex-client

Listę dostępnych pluginów można uzyskać wydając polecenie

    $ msynctool --listplugins

Konfigurujemy poszczególne pluginy. Najpierw plugin file:

    $ msynctool --configure filesyncml 1

Dla tego pluginu należy okreslić katalog gdzie będą przechowywane dane, czyli

    <config>
    <path>/tmp/sync</path>
    <recursive>FALSE</recursive>
    </config>

i oczywiście, trzeba poźniej ten katalog utworzyć

    $ mkdir /tmp/sync

Przed konfigurację następne pluginu (syncml) niezbędne jest posiadanie paru informacji o telefonie.
Szukamy adresu BT telefonu:

    $ hcitool scan
    XX:XX:XX:XX:XX:XX       Nokia 6630

oraz kanału serwisu synchronizacji SyncMLClient
   
    $ sdptool browse XX:XX:XX:XX:XX:XX

    ...  
    Service Name: SyncMLClient
    Service RecHandle: 0x10003
    Service Class ID List:
            UUID 128: 00000002-0000-1000-8000-0002ee000002
    Protocol Descriptor List:
            "L2CAP" (0x0100)
            "RFCOMM" (0x0003)
            Channel: 11
            "OBEX" (0x0008)
    Language Base Attr List:
            code_ISO639: 0x454e
            encoding:    0x6a
            base_offset: 0x100
    Profile Descriptor List:
        "" (0x00000002-0000-1000-8000-0002ee000002)
        Version: 0x0100

czyli kanał 11.
Konfigurujemy więc plugin syncml:

    $ msynctool --configure filesyncml 2

Przykładowa Konfigracja pluginu (do synchronizacji przez BT!)

    <config>
    <bluetooth_address>XX:XX:XX:XX:XX:XX</bluetooth_address>
    <bluetooth_channel>11</bluetooth_channel>
    <identifier>PC Suite</identifier>
    <version>1</version>
    <wbxml>1</wbxml>
    <username></username>
    <password></password>
    <type>2</type>
    <usestringtable>1</usestringtable>
    <onlyreplace>0</onlyreplace>
    <recvLimit>10000</recvLimit>
    <maxObjSize>0</maxObjSize>
    <contact_db>Contacts</contact_db>
    <calendar_db>Calendar</calendar_db>
    <note_db>Notes</note_db>
    </config>			   

Sama synchronizacja sprowadza się do wydania polecenia

    $ msynctool --sync filesyncml


Dla klikających - można zainstalować pakiet multisync-gui (dla gnome) i "wyklikać" wszystkie opcje.