Página siguiente Página anterior Índice general

10. IrOBEX (Apéndice C)

10.1 Introducción y pruebas

El protocolo IrOBEX en un principio estaba integrado en el paquete de las irda-tools. Sin embargo, se separó para formar por si solo un proyecto de desarroyo conjunto.
Lo forman dos paquetes. Uno perteneciente a las librerías y otro sería el de los binarios:

-rw-r--r--    1 root     root       167002 Oct  5 11:57 openobex-0.9.8.tar.gz
-rw-r--r--    1 root     root        53957 Oct  5 11:58 openobex-apps-0.9.8.tar.gz

El IrOBEX es una especie de protocolo de intercambio de objetos. Es el que utilizan los teléfonos para intercambiar las VCARDS (tarjetas de visita) o bien la Palm cuando transmite aplicaciones de una a otra.
Por supuesto, ni que decir que también es posible hacer funcionar dicho protocolo en Linux.
Después de la instalación de las susodichas librerías y aplicaciones, encontramos la utilidad perfecta para Palm, que es con la que he hecho las pruebas:

irobex_palm3

A modo de ejemplo, lo ejecutamos:


annapurna:~# irobex_palm3
Send and receive files to Palm3
Waiting for files

.....................................HEADER_LENGTH = 35611
put_done() Skipped header 05
CREATORID = 0x6c6e6368
Filename = BigClock.prc
Wrote /tmp/BigClock.prc (35611 bytes)

No tiene mayor misterio, es otro modo de transmisión de los ficheros. Algo mas enfocado a como si fueran objetos.

Destacar el anuncio de las tramas XID donde ahora el campo I en vez de anunciar el IrCOMM lo hace con el IrOBEX y que la comunicación esta vez es desde la Palm al portátil y no al revés, como en la mayoria de casos anteriores.


13:03:55.498363 xid:cmd ffffffff < cd1af64f S=6 s=5 (14)
        ff3f014ff61acdffffffff010500
         . ? . O . . . . . . . . . .
13:03:55.498385 xid:rsp 2c18ee8c > cd1af64f S=6 s=5 annapurna hint=8420 [ 
Computer IrOBEX ] (26)
        febf018cee182c4ff61acd010500842000616e6e617075726e61
         . . . . . . , O . . . . . . .   . a n n a p u r n a
13:03:55.591249 xid:cmd ffffffff < cd1af64f S=6 s=* quasar hint=8220 [ 
PDA/Palmtop IrOBEX ] (23)
        ff3f014ff61acdffffffff01ff00822000717561736172
         . ? . O . . . . . . . . . . .   . q u a s a r

13:03:55.640515 snrm:cmd ca=fe pf=1 2c18ee8c < cd1af64f new-ca=42 (32)
        ff934ff61acd8cee182c4201013f82010183010f8401018501088601070801ff
         . . O . . . . . . , B . . ? . . . . . . . . . . . . . . . . . .
13:03:55.640560 ua:rsp ca=42 pf=1 2c18ee8c > cd1af64f (31)
        42738cee182c4ff61acd01013e82010183013f84017f8501ff860107080107
         B s . . . , O . . . . . > . . . . . ? . . . . . . . . . . . .

Vemos cómo en la negociación hemos cambiado de protocolo.


13:03:55.716862 i:cmd  < ca=42 pf=1 nr=1 ns=1 LM slsap=01 dlsap=00 
GET_VALUE_BY_CLASS: "OBEX" "IrDA:TinyTP:LsapSel" (30)
        4332000184044f42455813497244413a54696e7954503a4c73617053656c
         C 2 . . . . O B E X . I r D A : T i n y T P : L s a p S e l
13:03:55.716889 i:rsp  > ca=42 pf=1 nr=2 ns=1 LM slsap=00 dlsap=01 
GET_VALUE_BY_CLASS: Success Integer: 10 (15)
        4252010084000001fe810100000010
         B R . . . . . . . . . . . . .

Y así aparecen otros campos en las tramas, que el irdadump nos los muestra de la siguiente manera:


13:03:55.747489 i:rsp  > ca=42 pf=1 nr=4 ns=3 LM slsap=10 dlsap=03 TTP credits=1
        OBEX SUCCESS len=7 ver=1.1 flags=0 mtu=1024 (12)
        4296031001a0000711000400
         B . . . . . . . . . . .
13:03:55.765767 i:cmd  < ca=42 pf=1 nr=4 ns=4 LM slsap=03 dlsap=10 TTP credits=1
        OBEX PUT final=0 len=63 Name="BigClock.prc" Lenght=35611 
Description="BigClock" custom=1819173736 (68)
        439810030102003f01001d0042006900670043006c006f0063006b002e007000
         C . . . . . . ? . . . . B . i . g . C . l . o . c . k . . . p .
13:03:55.765795 rr:rsp > ca=42 pf=1 nr=5 (2)
        42b1
         B .
13:03:55.772290 rr:cmd < ca=42 pf=1 nr=4 (2)
        4391
         C .
13:03:55.772301 i:rsp  > ca=42 pf=1 nr=5 ns=4 LM slsap=10 dlsap=03 TTP credits=1 
OBEX CONTINUE (8)
        42b8031001900003
         B . . . . . . .

No he probado el IrOBEX con móviles.....queda para futuras versiones....


Página siguiente Página anterior Índice general