Документация и советы для разработчиков ПО

Ericsson R320s снабжен прекрасным аппаратным модемом, при помощи дополнительных AT-команд которого происходит общение коммуникационного ПО и телефона.

Формат OBEX - Object Extention разработан для обмена данными по IRDA, а его урезанная версия IRDA ULTRA как раз и используется в телефоне.

Подключение к OBEX по кабельному соединению осуществляется командой AT*EOBEX
(можно также AT+CPROT=0), на которую телефон отвечает CONNECT.

Подключение к OBEX по IrDa-порту производится после обмена специальными пакетами согласно спецификациям c irda (когда разберусь в этом, напишу подробно)

Далее происходит обмен пакетами соответственно стандарту

Используя форматы OBEX, возможно получить следующую информацию:

  • Данные об аппарате
  • Телефонную книгу
  • Записи органайзера
  • Свои мелодии
  • Возможно что-то еще
Вкратце, вся информация, предоставляемая телефоном состоит из файлов, находящихся в виртуальном каталоге /TELECOM. Вот некоторые из них:
  • /telecom/devinfo.txt
    Данные о модели телефона,прошивке и т.д.

    Вот как он выглядит в моем примере:


    MANU:ERICSSON
    MOD: R320s
    SW-VERSION:010628 1056 prgCXC125193
    SW-DATE:20010628T105600
    HW-VERSION:
    SN:520069-71-009029-7-55
    IRMC-VERSION:1.1
    PB-TYPE-RX:VCARD2.1
    PB-TYPE-TX:VCARD2.1
    CAL-TYPE-RX:
    CAL-TYPE-TX:VCAL1.0
    MSG-TYPE-RX:NONE
    MSG-TYPE-TX:NONE
    NOTE-TYPE-TX:NONE
    NOTE-TYPE-RX:NONE
    ERROR-LOG:NO
    INBOX:SINGLE
    MSG-SENT-BOX:NO
    X-EMELODY-TYPE-TX:EMELODY1.0
    X-EMELODY-TYPE-RX:EMELODY1.0
    X-XTRA:telecom/calendar.txt

  • /telecom/pb/info.log
    Информация о телефонной книге.


    Total-Records:84
    Last-Used-Index:*
    Free-Records:245
    Maximum-Records:329
    IEL:0x08
    HD:NO
    SAT:CC
    DID:00001D7A
    X-IRMC-FIELDS:
    VERSION:2.1
    N:=18
    FN:=18
    TEL:=20
    X-IRMC-LUID:=12
    ICL:NO
    OCL:NO
    MCL:NO

  • /telecom/pb.vcf
    Сама телефонная книга, приходит в виде визитных карточек.
    Вот так выглядит запись, сделанная по русски:


    BEGIN:VCARD
    VERSION:2.1
    N;QUOTED-PRINTABLE;CHARSET=UTF-8:=D0=90=D0=9B=D0=95=D0=9A
    FN;QUOTED-PRINTABLE;CHARSET=UTF-8:=D0=90=D0=9B=D0=95=D0=9A
    TEL:7902XXXXXXX
    X-IRMC-LUID:000000000000
    END:VCARD

    Русский текст запакован дважды - сверху QUOTED-PRINTABLE,
    а под ним UTF-8 (Unicode Transfer Format)

    А вот так выглядит запись, сделанная по английски:


    BEGIN:VCARD
    VERSION:2.1
    N;QUOTED-PRINTABLE;CHARSET=ISO-8859-1:TEST
    FN;QUOTED-PRINTABLE;CHARSET=ISO-8859-1:TEST
    TEL:7902XXXXXXX
    X-IRMC-LUID:000000000000
    END:VCARD

    Как видно, она не запакована вообще никак...

  • Для чтения информации органайзера используются два файла:
    telecom/cal.vcs и telecom/cal/info.log
Подробнее о том, какие еще бывают файлы
читайте в разделе OBEX Formats


Для работы с интерфейсом в основном используются 4 команды:
  • Connect (пакет начинается с 0х80)
  • Disconnect (пакет начинается с 0х81)
  • Put Object (пакет начинается с 0х82)
  • Get Object (пакет начинается с 0х83)