Кіріспе
Байланыс протоколы
коммуникациялық протокол
the communications protocol
OBEX (OBject EXchange аббревиатурасы, сондай-ақ IrOBEX деп те аталады) – құрылғылар арасында екілік объектілерді алмасуды жеңілдететін коммуникациялық протокол. Оны Инфрақызыл деректер қауымдастығы ұстап тұрады, бірақ Bluetooth арнайы қызығушылық тобы және Ашық Мобильді Альянстың (OMA) SyncML бөлімі де қабылдады. OBEX-тің ең алғашқы танымал қолданыстарының бірі Palm III-де болды. Бұл жеке цифрлық көмекші (PDA) және оның көптеген ізбасарлары OBEX-ті визит карточкаларын, деректерді, тіпті қосымшаларды алмасу үшін пайдаланады. OBEX бастапқыда инфрақызыл үшін жобаланған болса да, қазір ол Bluetooth арқылы қолданылады, сондай-ақ RS 232, USB, WAP және Livescribe смарт қаламдары сияқты құрылғыларда да қолданылады.
HTTP-мен салыстыру
OBEX дизайны мен функциясы HTTP-ге ұқсас, клиентке серверге қосылу үшін сенімді байланыс құралын ұсынады, содан кейін ол объектілерді сұрауы немесе беруі мүмкін. Бірақ OBEX көптеген маңызды жағынан ерекшеленеді:
HTTP әдетте TCP/IP байланысының үстінде құрылады. OBEX-ті де осылай құруға болады, бірақ көбінесе IrDA құрылғысында IrLAP/IrLMP/Tiny TP жиынтығында қолданылады. Bluetooth-та OBEX Baseband/ACL/L2CAP (және ескі нұсқаларды қолдану үшін RFCOMM) жиынтығында іске асырылады. OBEX-ті басқа да "байланыстар" арқылы, мысалы USB арқылы да қосуға болады. HTTP адам оқи алатын мәтінді пайдаланады, ал OBEX сұраныс немесе объект туралы ақпарат алмасу үшін "Headers" деп аталатын бинарлық форматталған тип-ұзындық-мәнді үштіктерді қолданады. Мұндай формат ресурстары шектеулі құрылғылар үшін талдауды әлдеқайда жеңілдетеді. HTTP транзакциялары негізінен күйсіз болады; әдетте HTTP клиенті байланысты ашады, бір сұрау жібереді, жауап алады, содан кейін байланысты жабады немесе басқа байланыссыз сұраулар жібереді. OBEX-те бір байланыс арқылы көптеген байланысты операцияларды жүргізуге болады. Шындығында, OBEX спецификациясына жаңа қосымшалар транзакция күрт үзілген жағдайда да, барлық күй ақпараты сақталған күйде оны қайта бастауға мүмкіндік береді.
javax.obex
Java API-дегі Bluetooth үшін жавакс obex ерікті пакеті Java-да OBEX-ті жүзеге асыруды ұсынады.
PyOBEX және nOBEX
PyOBEX Python-да OBEX протоколының бір бөлігін қолдайды. nOBEX – PyOBEX-тің толыққанды OBEX қолдауы бар түрі және автокөлік ойын-сауық жүйелерінде OBEX-ті сынауды жеңілдету үшін Bluetooth қолсыз режим профилін қолдайды.