Интеграция


Viinex 2.0 спроектирован и разработан как SDK. Это значит, что любой элемент функциональности, реализованный в Viinex 2.0, доступен через программный интерфейс, - и наоборот, - функциональность считается реализованной, только если она программно доступна для внешнего приложения.

Критерием для разработчиков программного интерфейса Viinex 2.0 была возможность использования каждого конкретного элемента функциональности в веб-приложениях, таких как SPA (single-page application). Мы подразумеваем, что если клиентский код на Javascript, работающий в браузере, может использовать некую функцию, то и нативный клиент (rich client) также сможет ее использовать.

Программный интерфейс Viinex 2.0 - это набор HTTP вызовов, которые принимают на вход и выдают на выходе либо JSON-документы, по возможности лаконичные и простые, - либо мультимедийные данные (видео). Viinex 2.0 придерживается принципов REST при реализации программного интерфейса. Удаленные вызовы Viineх не создают на сервере состояния, т.е. сервер создает и не запоминает контекст, связанный с каждым клиентом, осуществляющим вызовы.

Viinex 2.0 не требует от использующих его приложений, чтобы они линковали какие-либо нативные библиотеки, использовали какие-либо дополнительные транспортные протоколы (кроме HTTP) или форматы данных (кроме JSON). Программный интерфейс Viinex 2.0 подходит для использования не только из кода на Javascript, работающего в веб-браузере, то также легко может быть использован из Java, Objective C или Swift, PHP, node.js, C#, Python, а также из Delphi или C++. Viinex 2.0 является программным обеспечением связующего уровня (middleware), и может использоваться как пользовательскими, интерфейсными компонентами приложения, так и серверными его частями, - в зависимости от различных сценариев использования. Например, сетевой видеорегистратор может быть реализован с использованием одной только серверной функциональности, реализованной в Viinex 2.0, - так что разработка NVR на базе Viinex будет сосредоточена только на frontend-е. С другой стороны, отраслевые решения, такие как решения для пультов централизованного наблюдения или для контроля кассовых операций, которые обязательно имеют серверную часть логики, не связанную с видеонаблюдением, - легко могут интегрировать Viinex 2.0 в окружении своего сервера приложений, чтобы расширить его функциональность работой с видео.

Потоковое вещание видео осуществляется Viinex 2.0 в соответствии со спецификацией HLS, предложенной Apple. Как следствие, потоки видео, раздаваемые Viinex клиентам, могут быть проиграны на большинстве браузеров, - Chrome, Firefox, Edge, Safari, - включая мобильные устройства на платформе iOS. В простейшем сценарии для этого достаточно в адресной строке браузера ввести нужный URL, - и видеопоток от Viinex 2.0 будет отображен, даже на iPhone. Это работает не только в локальной сети, но и в Интернет. В нативных клиентских приложениях (rich clients) возможно несколько решений для отображения таких видеопотоков, наиболее простой из которых - внедрение в приложение компонента с браузером, умеющим проигрывать HLS поток. Это, впрочем, не единственный вариант, - обращайтесь, если вам потребуется наш совет на этот счет.

Как правило, Viinex 2.0 развертывается как отдельная служба в операционной системе (демон, в случае Linux), однако для приложений, использующих его, предусмотрена возможность полного котроля за его жизненным циклом экземпляра Viinex. Доступна также дополнительная информация о совместимости Viinex 2.0 и о его производительности.

Ознакомиться с документацией на Viinex 2.0 можно по ссылке: https://www.viinex.com/Viinex20Guide.pdf.