API інтеграція в U-Prox

Oct 11, 2024
0
37

Наша система U-Prox має інструментарій API-інтеграцій (SOAP, REST, JSON, XML), що може бути використаний для вашого завдання.

ПЗ U-Prox - є безкоштовним, інструментарій API - також.

Нижче відповідь по інтеграції, а також розширено про API онлайн керування.

ПЗ U-Prox має можливість API-інтеграцій зі стороннім ПЗ.
- необхідно встановлювати наше ПЗ U-Prox (компоненти - сервер, клієнт, веб-сервер).
- робота "обладнання U-Prox" <--> ПЗ "U-Prox" <==> "ваше ПЗ"


Можливі наступні варіанти:

двостороння інтеграція через веб-протоколи нашого ПЗ із будь-чим іншим (АРІ інтеграція)
експорт даних зі звітів ПЗ U-Prox стандартними засобами ПЗ та ОС, та імпорт/використання цих даних далі стороннім ПЗ
вибірка даних безпосередньо із баз даних способом SQL запитів (наприклад в SQL студії, 
  чи скриптами) мовою Transact-SQL (T-SQL) - якоїсь авторизації НЕ потребує

--------------------------------------------------------------------------------------------------------------------
ПЗ "U-Prox IP" (воно ж "U-Prox WEB") має 2 інтерфейси - класичний windows інтерфейс, та веб-інтерфейс:

- в класичному інтерфейсі експорт звітів може бути в текстовому форматі *.CSV (ручний та автоматичний експорт), 
  та в форматі Excel (тільки ручний експорт), за умови що Excel встановлено на ПК

- у веб-інтерфейсі - створення та експорт звітів вручну, у форматі *.PDF , або через API .


Рекомендована до використання актуальна версія ПЗ (v3.057.7283) - на сайті, сторінка "Завантаження":
https://access.u-prox.systems/uk/zavantazhennja/

- чи та що вказана нижче в описі API 

Оновлення сторінки в бравзері після переходу на новіші версії - "Ctrl+F5", щоб перевантажити із очисткою кешу.

І. - по API
**************************************************************************************
*

Перегляньте наявну інформацію на сторінці "API інтеграції", нашого сайту:
https://access.u-prox.systems/uk/api-integracii-2/

Перегляньте довідник по функціях (доступно після встановлення комплексу U-Prox) - http://127.0.0.1:40001/json/help (Eng)

Також на встановленій системі U-Prox, в браузері, за допомогою вікна розробника, можна переглядати взаємодію U-Prox WEB з API
--------------------------------------------------------------------------------------------------------------------
U-Prox WEB Server REST API

Останні версії прикладів і документації U-Prox WEB API містяться в хмарній папці:
https://drive.google.com/drive/folders/1QpNENLEwYwjy_uOeFmjNmlSlIoVTf33b

У зазначеній папці містяться такі файли:

U-Prox IP.v3.057.7573.iso - образ дистрибутивного диска. З цього образу необхідно встановити або оновити "U-Prox IP Сервер", "U-Prox IP Клієнт", "U-Prox Web Сервер" і "U-Prox Desktop Сервер".

Documentation\AcsWebService.doc - попередня версія опису Web-сервісу, яка містить опис операцій для підключення до сервісу, отримання повідомлень про події і створення співробітників та інших операцій

Documentation\html\*.html - приклади на мові JavaScript з використанням бібліотеки AngularJS

Documentation\html\Authenticate.html - приклад аутентифікації і підключення до сервера

Documentation\html\DoorControl.html - приклад управління дверима

Documentation\html\DoorUnlockAll.html - приклад пожежного розблокування всіх дверей системи

Documentation\html\AdditionalEventFields.html - приклад отримання та створення пристроїв (контролерів), додаткових полів подій та самих подій (записів про проходи)

Documentation\html\Employees.html - приклад отримання списку пристроїв (контролерів), дверей, рівнів доступу, відділів (департаментів), співробітників (користувачів), карток, їх створення, звільнення співробітників і видалення створених об'єктів

Documentation\html\EventGetList.html - приклад отримання подій і їх відображення в режимі реального часу "Soft Real-Time"

Documentation\html\EventsReport.html - приклад отримання звіту про події у вигляді PDF і у вигляді JSON

Documentation\html\TimeAttendanceReport.html - приклад отримання звіту про відпрацьований час у вигляді PDF і у вигляді JSON

Documentation\html\Visitors.html - приклад отримання списку пристроїв, дверей, тимчасових рівнів доступу, відвідувачів, створення карток і видалення створених об'єктів

Documentation\html\js\*.js - використані бібліотеки JavaScript

Для демонстрації роботи web-додатків DoorControl.html, Employees.html, Visitors.html та ін. необхідно виконати наступні дії:
1. Завантажити образ дистрибутивного диска U-Prox IP.v3.057.7573.iso з папки в хмарі:
   - 
https://drive.google.com/open?id=1QpNENLEwYwjy_uOeFmjNmlSlIoVTf33b
2. Встановити або оновити U-Prox IP Сервер.
3. Встановити або оновити U-Prox IP Клієнт.
4. Встановити або оновити U-Prox IP Web Сервер.
5. Встановити або оновити U-Prox IP Desktop Сервер.
6. Відкрити відповідний html-файл в браузері Chrome і переглянути перелік запитів та відповідей на запити.
--------------------------------------------------------------------------------------------------------------------

Онлайн режим. 

Підтримку режимів зовнішнього керування доступом контролера було додана в ПЗ "U-Prox IP" версії 3.052.6722. 
Необхідно, що б у Вас було встановлено таку версію чи більш пізню версію.

"Вхід дозволено":
POST http://localhost:40001/json/DoorAccessIn
{
     "UserSID": 1234567890123456,  // ідентифікатор сеансу, отриманий в результаті запиту Authenticate
     "Token": 12345,               // токен дверей чи токен напрямку проходу (Двері - вхід, Двері - вихід), для яких подається команда
     "CardCode: "1234567890"       // код картки, який буде збережено в журналі для події "Вхід дозволено".
}

"Вихід дозволено":
POST http://localhost:40001/json/DoorAccessOut
{
     "UserSID": 1234567890123456,  // ідентифікатор сеансу, отриманий в результаті запиту Authenticate
     "Token": 12345,               // токен дверей чи токен напрямку проходу (Двері - вхід, Двері - вихід), для яких подається команда
     "CardCode: "1234567890"       // код картки, який буде збережено в журналі для події "Вихід дозволено"
}

"Вхід заборонено":
POST http://localhost:40001/json/DoorDenyAccessIn
{
     "UserSID": 1234567890123456,  // ідентифікатор сеансу, отриманий в результаті запиту Authenticate
     "Token": 12345,               // токен дверей чи токен напрямку проходу (Двері - вхід, Двері - вихід), для яких подається команда
     "CardCode: "1234567890"       // код картки, який буде збережено в журналі для події "Вхід заборонено"
}

"Вихід заборонено":
POST http://localhost:40001/json/DoorDenyAccessOut
{
     "UserSID": 1234567890123456,  // ідентифікатор сеансу, отриманий в результаті запиту Authenticate
     "Token": 12345,               // токен дверей чи токен напрямку проходу (Двері - вхід, Двері - вихід), для яких подається команда
     "CardCode: "1234567890"       // код картки, який буде збережено в журналі для події "Вихід заборонено"
}
***************************************************************************************************************

Онлайн режим. 
*************************************************************************************************************** 

Далі наведено додаткові відомості про режим зовнішнього керування доступом контролера U-Prox IP400 та його підтримку у 
програмному забезпеченні "U-Prox IP".

  
Режим зовнішнього керування доступом, при якому рішення про надання доступу приймаються сервером за командою оператора або 
по запиту REST API, доступний у "U-Prox IP" з версії v.3.052.6833 і пізніших версіях.


Доступно два режими зовнішнього керування доступом:
1. Оператор забороняє та дозволяє доступ - у цьому режимі контролер передає інформацію про будь-яку піднесену картку на 
   сервер і надає доступ або видає заборонний сигнал тільки після відповіді сервера.

2. Оператор підтверджує надання доступу - у цьому режимі піднесення забороненої карти контролер обробляє самостійно, 
   видаючи сигнал заборони, а інформацію про піднесення дозволеної карти передає на сервер, і протягом кількох секунд чекає 
   від сервера команди на надання чи заборону доступу. У разі відсутності такої команди після закінчення встановленого часу 
   контролер надає доступ до піднесеної дозволеної карти.

Для коректної роботи другого режиму (оператор підтверджує надання доступу) необхідно наявність, чи оновлення, мікропрограми 
контролерів U-Prox IP400 версії не нижче 7.23/8.23.

Налаштування режиму зовнішнього керування доступу в ПЗ "U-Prox WEB Клієнт", що доступний за адресою http://localhost:40001/
після встановлення ПЗ "U-Prox IP Сервер" та ПЗ "U-Prox WEB Сервер", показано на скріншотах:


Після завантаження нової конфігурації в контролер, інформація про піднесення карти може бути отримана за REST API у вигляді 
події:

{
   "Event":[
      {
         "Device":{
            "Name":"Турнікет",
            "Token":23880
         },
         "Message":{
            "Code":65555,                // код події: 65554 - запит на вхід, 65555 - запит на вихід
            "Name":"Запит на вихід",
         },
         "Sender":{
            "Name":"Турнікет - вихід",
            "Token":23902
         },
         "User":{
            "EmployeeNumber":"",
            "Post":"",
            "AdditionalFields":[

            ],
            "Name":"Петренко",
            "Token":6580
         },
         "Department":{
            "Name":"Адміністрація",
            "Token":6566
         },
         "PhotoToken":23678,
         "IconToken":23679,
         "CardCode":"0B0016B189",
         "Issued":"\/Date(1591793191053)\/",
         "FaceMaskDetected":false,
         "Temperature":0,
         "AdditionalFields":[

         ],
         "Token":34106,
      }
   ]
}

З прикладом отримання подій у режимі Soft Real Time можна ознайомитись у файлах Documentation\html\EventGetList.html та
Documentation\html\Photoverification.html у хмарній папці з прикладами REST API:
https://drive.google.com/drive/u/0/folders/1yyYWg8pPimNbYoG1XeOhFfIOMLg6Y2ug


Для дозволу проходу необхідно надіслати запит:
POST http://localhost:40001/json/DoorAccessIn чи http://localhost:40001/json/DoorAccessOut
{
   "UserSID":"830730959685833",        // ідентифікатор сеансу підключення до сервера
   "Token":23902,                        // Event[i].Sender.Token - токен точки доступу, вказаний в події
   "CardCode":"0B00123456"                // код карти, якій надано доступ
}

Для заборони проходу необхідно надіслати запит:
POST http://localhost:40001/json/DoorDenyAccessIn чи http://localhost:40001/json/DoorDenyAccessOut
{
   "UserSID":"830730959685833",        // ідентифікатор сеансу підключення до сервера
   "Token":23902,                        // Event[i].Sender.Token - токен точки доступу, вказаний в події
   "CardCode":"0B00123456"                // код карти, якій надано доступ
}

 

Оцініть цю статтю

Будь ласка, увійдіть, щоб оцінити статтю.

Коментарі

Будь ласка, увійдіть, щоб залишати коментарі.

Коментарів ще немає.