Ayin - это платформа для создания сети исполнительных IoT устройств, сервисов, мобильных приложений
В платформе Ayin сейчас есть:
- Язык Ayin lang
- Инструментальные средства с генерацией кода в разные языки
- Java фреймворк
- Транспортный уровень
Ayin lang - язык для моделирования и сценарирования взаимодействий исполнительных узлов в сети Ayin. На данный момент имеется среда разработки на Ayin lang с кодогенерацией для разных языков и средствами отладки.
Разработана бинарная сериализация с логическим сжатием, позволяющая передавать данные компактно, что
подходит для
использования Ayin lang на микроконтроллерах, в том числе и в задачах реального времени.
Платформа позволяет строить как одноранговые сети исполнительных устройств, так и сети построенные по
модели клиент-сервер. Узлы сети имеют возможность удаленного вызова команд в любом направлении,
оповещения о
событиях, механизм обратных вызовов (для реализации асинхронных вычислений).
В Java-имплементации фреймворка Ayin-executor имеется собственная система плагинов, подобная OSGI. Она
служит для быстрой разработки и динамического обновления компонентов системы. Так как информация о
плагинах, их зависимостях и установках смоделирована в той же среде, что и runtime-структура, имеется
возможность
управления установкой и обновлением плагинов во время работы системы.
Ayin используется в вендинговой сети robo.cafe для управления аппаратами и для интеграции сайта с
системой электронной робокоммерции Vending Manager.
Ведется разработка PLC устройств под управлением Ayin.
Ayin появился как сайд-проект в рамках разработки вендинговой сети. Он был нужен чтобы объединить всю инфраструктуру вендинга в единую среду и дать инженерам возможность самостоятельно писать сценарии работы аппаратов, тестировать механизмы. Хотелось сделать язык с возможностью графического представления и обеспечить возможность пользоваться единой платформой и на серверах и на микроконтроллерах. За основу мы взяли EMF - свободное средство моделирования для Java. Для разработки языка воспользовались XText - фреймворком на базе EMF и ANTLR.
-
Никита Цымбал
CEO, Software Architect
Сооснователь проектов Ayin, okbuddha, balamarket.com. Предыдущий опыт - Java разработчик, архитектор и product manager группы проектов вендинговой сети. -
Антон Желонкин
CTO, Developer
Сооснователь проектов Ayin, okbuddha, balamarket.com.
Предыдущий опыт - Java разработчик, технический директор группы проектов вендинговой сети.
-
Рафаиль Делешев
R&D Lead, Developer
Сооснователь проекта Ayin.
Предыдущий опыт - разработчик языка и инструментальных средств для него, Java разработчик.
-
Антон Васильев
Lead Engineer, Embedded Developer
Сооснователь проектов Ayin, okbuddha.
Предыдущий опыт - разработчик редактора сценариев вендинговых аппаратов MyMachineDeveloper, прикладной программист вендинговых аппаратов.
-
Алексей Наборщиков
Java Developer, Embedded Developer
Сооснователь проектов Ayin, okbuddha.
Предыдущий опыт - прикладной программист вендинговых аппаратов, разработчик системы управления вендингом VendingManager.
-
Вячеслав Слаутин
R&D Developer
Сооснователь проекта Ayin.
Предыдущий опыт - Java разработчик, принимал участие в разработке архитектуры Ayin и сериализации.