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....