AllJoyn

AllJoyn — открытая платформа программного обеспечения, позволяющая совместимым устройствам и приложениям находить друг друга, связываться и взаимодействовать вне зависимости от категории продукта, платформы, бренда и типа подключения. Изначально проект продвигался альянсом AllSeen Alliance в период с 2013 по 2016 год, когда альянс объединился с Open Connectivity Foundation (OCF)[1]. В 2018 году исходный код был перенесён на платформу GitHub[2].

Что важно знать
AllJoyn
Разработчики Linux Foundation, Open Connectivity Foundation (AllSeen Alliance до 2016 года, Qualcomm до 2013 года)
Написана на C, C++, Java, Objective-C, JavaScript
Операционные системы Linux, Windows, Mac, FreeRTOS, Android, iOS
Последняя версия 16.10 (1 декабря 2016)
Лицензия Apache 2.0
Сайт openconnectivity.org

История

Технология AllJoyn была представлена и продвигалась компанией Qualcomm в 2011 году[3]. В декабре 2013 года Qualcomm передала исходный код и товарный знак платформы Linux Foundation при создании альянса AllSeen[4][5]. Альянс развивал совместимость для Интернета вещей, и к нему присоединились многие потребительские бренды, включая LG, Sharp, Haier, Panasonic, Sony[6], Electrolux[7], Sears, Arçelik[8]. Другими участниками были Silicon Image, Cisco, TP-Link, Canary, Changhong, Two Bulls[9], Affinegy[10], doubleTwist, Fon, Harman, HTC, LIFX, Liteon, Muzzley, Onbiron[11], Sproutling, Microsoft[12] и Wilocity[13].

10 октября 2016 года AllSeen Alliance объединился с Open Connectivity Foundation (OCF). OCF поддерживал оба открытых проекта — IoTivity и AllJoyn — в рамках Linux Foundation. В расширенный совет директоров OCF входили руководители компаний Electrolux, Arçelik A.S., ARRIS International plc, CableLabs, Canon, Cisco, GE Digital, Haier, Intel, LG Electronics, Microsoft, Qualcomm, Samsung и Technicolor SA[14][15]. В процессе объединения лицензия проекта была изменена на Apache 2.0.

Исходный код размещался в репозиториях проекта AllJoyn до конца 2017 года[16]. В 2018 году разработка прекратилась после переноса исходных текстов и документации на GitHub[2].

Технические особенности

AllJoyn предоставляла основные системные сервисы для обеспечения совместимости между подключёнными продуктами и программными приложениями разных производителей, создавая динамические близлежащие сети[17] с использованием шины сообщений D-Bus[18]. Разработка этого открытого проекта велась под руководством Qualcomm; платформа впервые была представлена на Mobile World Congress 2011 года[19]. Unity Technologies предоставила «AllJoyn Unity Extension», которая была включена в состав релиза AllJoyn SDK 2.3.6 и выше[20]. В числе партнёров-производителей оригинального оборудования и дизайнеров оригинального оборудования были Foxconn, Technicolor, LG Innotek, LeTV и Xiaomi[21].

Программная платформа и основные сервисы AllJoyn позволяли совместимым устройствам и приложениям обнаруживать друг друга, взаимодействовать и работать совместно независимо от категории продукта, платформы, бренда и типа подключения. В качестве целевых устройств рассматривались решения для «умного дома», Smart TV, систем аудио, широкополосных шлюзов и автомобилестроения[22]. Предполагаемым уровнем коммуникации была сеть Wi-Fi[23].

Система строилась по клиент-серверной модели. Например, лампа могла быть «производителем» (сервером), а выключатель — «потребителем» (клиентом)[24]. Каждый «производитель» в сети публиковал XML-файл introspection для объявления своих возможностей и перечня поддерживаемых команд[24].

Возможности AllJoyn можно было расширять посредством «мостов» (bridges) для других протоколов. Например, Microsoft добавила технологию Device System Bridge, которая позволяет появляться в сети AllJoyn устройствам, использующим протоколы домашней или строительной автоматизации, такие как Z-Wave и BACnet[24]. Microsoft встроила AllJoyn runtime (стандартный клиент) и службу Router Node в Windows 10, однако удалила её в Windows 11 начиная с версии 24H2[25], то есть поддержка будет прекращена в будущих выпусках.

В системе также была реализована технология потоковой передачи аудио на несколько целевых устройств (sinks) с синхронизацией[26].

AllJoyn предоставлял сервисы для интеграции с ядром платформы, среди которых — ввод в эксплуатацию (onboarding), конфигурирование, система уведомлений и панель управления[27]. Сервис Lighting Service Framework (LSF) был интегрирован в модель устройства общего назначения[28].

Примечания

Ссылки