Мазмуну жашыруу

ALGO RESTful API логотиби

ALGO RESTful API

ALGO RESTful API продукт

Продукт маалыматы: RESTful API колдонмосу

Algo RESTful API колдонуучуларга HTTP/HTTPS суроо-талаптары аркылуу өз тармагындагы Algo IP акыркы чекиттерине кирүүгө, башкарууга жана аракеттерди баштоого мүмкүндүк берет. Бул документ Algo түзмөктөрү менен иштешүү үчүн колдонулушу мүмкүн болгон жарандыгы жок операциялардын бирдиктүү жана алдын ала аныкталган топтомун камсыз кылат. API HTTP/HTTPS GET, POST жана PUT сурамдарын JSON пайдалуу жүктөрү менен колдойт.

Аутентификация

Algo RESTful API менен аутентификациянын үч түрү бар:

  • Стандарттык аутентификация (демейки боюнча иштетилген)
  • Негизги аутентификация (милдеттүү эмес)
  • Аутентификация ыкмасы жок (сунушталбайт; сыноо максатында гана)

Продукт колдонуу нускамалары: RESTful API

Пререквизиттер

RESTful API иштетүүдөн мурун, түзмөктүн алдын ала конфигурацияланган NTP серверлерине жетүү үчүн интернет байланышы бар экенин текшериңиз. Интернет байланышы жок болсо, жергиликтүү NTP серверин конфигурациялаңыз жана анын IP дарегин киргизиңиз.

RESTful API иштетилүүдө
  1. Аппаратка кириңиз web интерфейсин жана Advanced Settings Admin өтмөгүнө өтүңүз.
  2. API Колдоо бөлүмүнө ылдый сыдырып, RESTful API иштетиңиз.
  3. Керектүү сырсөздү коюңуз (демейки сырсөз: algo). Стандарттык аутентификация демейки боюнча иштетилгенин эске алыңыз.
Негизги аутентификацияны иштетүү (кошумча)
  1. Ичинде web интерфейсинде, Системаны тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
  2. Конфигурацияны ачыңыз file каалаган текст редактору менен жана төмөнкү сапты кошуңуз: api.auth.basic = 1
  3. Сактоо жана өзгөртүлгөн конфигурацияны жүктөө file Калыбына келтирүү конфигурациясын колдонуу менен аппаратка кайтыңыз File тутумдук тейлөө өтмөгүндөгү өзгөчөлүк.
Аутентификация ыкмасын иштетүү (милдеттүү эмес)

Аутентификация жок ыкмасын иштетүү үчүн, RESTful API Сырсөз талаасын бош калтырыңыз. Бул ыкма сунушталбайт жана коопсуздукту камсыз кылбагандыктан, сыноо максатында гана колдонулушу керек.

Жөнөкөй башкаруу интерфейсин иштетүү (кошумча)
  1. боюнча web интерфейсинде, Системаны тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
  2. Конфигурацияны ачыңыз file текст редакторун колдонуп, эки сап кошуу. Сырсөзүңүздү каалаганыңызга өзгөртүңүз.
  3. Админ.web.sci = 1
  4. Sci.admin.pwd =
  5. Сактоо жана өзгөртүлгөн конфигурацияны жүктөө file Калыбына келтирүү конфигурациясын колдонуу менен аппаратка кайтыңыз File тутумдук тейлөө өтмөгүндөгү өзгөчөлүк.

Аутентификация Сampкод

Сураныч, электрондук кат жөнөтүңүз support@algosolutions.com стандарттуу же негизги аутентификацияны кааласаңызample код.
Кошумча колдоо үчүн чалыңыз 604-454-3792 же электрондук почта support@algosolutions.com

Маалыматтык билдирүүлөр

Эскертүү
Эскертүү пайдалуу жаңыртууларды, маалыматты жана аткарылышы керек болгон нускамаларды көрсөтөт

Жоопкерчиликтен баш тартуу

Бул документте камтылган маалымат бардык жагынан так деп эсептелет, бирок Algo тарабынан кепилдик жок. Маалымат эскертүүсүз өзгөртүлүшү мүмкүн жана Algo же анын филиалдары же туунду компаниялары тарабынан милдеттенме катары чечмеленбеши керек. Algo жана анын филиалдары жана туунду компаниялары бул документтеги каталар же кемчиликтер үчүн эч кандай жоопкерчиликти албайт. Мындай өзгөртүүлөрдү киргизүү үчүн бул документтин оңдоп-түзөөлөрү же анын жаңы редакциялары чыгарылышы мүмкүн. Algo бул колдонмону же ушундай өнүмдөрдү, программалык камсыздоону, микропрограмманы жана/же жабдыктарды колдонуудан келип чыккан зыян же дооматтар үчүн эч кандай жоопкерчилик тартпайт. Бул документтин эч бир бөлүгү Algo жазуу жүзүндөгү уруксатысыз эч кандай максатта - электрондук же механикалык түрдө же кандайдыр бир ыкма менен кайра чыгарууга же берилиши мүмкүн эмес.
Түндүк Америкада кошумча маалымат же техникалык жардам алуу үчүн Algo колдоо тобуна кайрылыңыз:

Algo техникалык колдоо
1-604-454-3792
support@algosolutions.com

©2022 Algo Algo Communication Products Ltd компаниясынын катталган соода белгиси.
Бардык укуктар корголгон. Бардык башка соода белгилери тиешелүү ээлеринин менчиги болуп саналат. Бардык өзгөчөлүктөр эскертүүсүз өзгөртүлүшү мүмкүн.

 ГЕНЕРАЛ

Introduction

Бул документ Algo RESTful API'и HTTP/HTTPS сурамдары аркылуу тармагыңыздагы Algo IP Endpoints'ке кирүү, манипуляциялоо жана аракеттерди баштоо үчүн, ошондой эле коопсуздуктун ар кандай деңгээлдери менен бир нече ар кандай аутентификация ыкмаларын сүрөттөйт. Сурам берүүчү системалар Algo түзмөктөрү менен бул документте аныкталган жарандыгы жок операциялардын бирдиктүү жана алдын ала аныкталган топтому аркылуу өз ара аракеттене алат. Сурамдар JSON пайдалуу жүгү бар ресурстун URI дарегине жасалат жана JSON жообун чыгарат. HTTP/HTTPS GET, POST жана PUT сурамдары JSON пайдалуу жүгү менен бирге URI ресурсуна жасалат (пайдалуу жүктөрдүн тизмеси үчүн буйруктар бөлүмүн караңыз).

 Аутентификация

Аутентификациянын үч түрү бар:

  •  Стандарттык (сунушталат)
  •  Негизги
  •  Эч ким (сунушталбайт)

Стандарттык аутентификация SHA-256 коддолгон дайджест менен хэш негизиндеги Кабардын аныктыгын текшерүү кодун (HMAC) колдонот. Негизги аутентификация Base64 коддоосун колдонот жана HTTPS аркылуу гана колдонулушу керек. Эч кандай аутентификация өтө кылдаттык менен колдонулушу керек, анткени ал аутентификацияны бербейт. Көбүрөөк маалымат алуу үчүн Аутентификация талаптары бөлүмүн караңыз.

ОРНАТУ ЖАНА КОНФИГУРАЦИЯ

Пререквизиттер
  •  Бул документ Algo акыркы чекити микропрограмманын 3.3 же андан жогору версиясында иштеп жатат деп болжолдойт.
  •  Стандарттык аутентификацияны колдонуу үчүн сурамчы менен Algo түзмөктөрүнүн ортосундагы убакыт айырмасы 30 секунддан аз болушу керек.
  • NTP (Network Time Protocol) колдонулуп жатканын текшериңиз. Ыңгайлаштырылган NTP серверлеринин даректери Өркүндөтүлгөн орнотуулар → Убакыт өтмөгүндө конфигурацияланышы мүмкүн.

Эскертүү
Алдын ала конфигурацияланган NTP серверлери жалпыга ачык жайгаштырылган, андыктан ага жетүү үчүн интернет байланышы талап кылынат. Интернет байланышы жок болсо, жергиликтүү NTP серверин конфигурациялаңыз жана анын IP дарегин киргизиңиз.

  • Algo түзмөгүнүн тутумунун убактысы туура убакыт алкагына туураланганын текшериңиз. Муну Өркүндөтүлгөн Орнотуулар → Убакыт өтмөгүнө өтүү аркылуу кылса болот.
 RESTful API иштетилүүдө
  1. Кирүү web интерфейсин тандап, Өркүндөтүлгөн орнотуулар → Администратор өтмөгүнө өтүңүз.
  2. API Колдоо бөлүмүнө ылдый жылдырып, RESTful API иштетиңиз жана Сырсөздү каалагандай коюңуз (демейки сырсөз: algo)
    Эскертүү
    Стандарттык аутентификация демейки боюнча иштетилген.ALGO RESTful API 01
Негизги аутентификацияны иштетүү (кошумча)
  1. Ичинде web интерфейсинде, Система → Тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
  2. Конфигурацияны ачыңыз file каалаган текст редактору менен жана төмөнкү сапты кошуңуз: api.auth.basic = 1
  3.  Сактоо жана өзгөртүлгөн конфигурацияны жүктөө file Калыбына келтирүү конфигурациясын колдонуу менен аппаратка кайтыңыз File Система → Тейлөө өтмөгүндөгү өзгөчөлүк.
Аутентификация ыкмасы жок (милдеттүү эмес)

Аутентификация жок ыкмасын иштетүү үчүн, RESTful API Сырсөз талаасын бош калтырыңыз. Бул ыкма сунушталбайт жана коопсуздукту камсыз кылбагандыктан, сыноо максатында гана колдонулушу керек.

Жөнөкөй башкаруу интерфейсин иштетүү (кошумча)
  1. боюнча web интерфейсинде, Система → Тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
  2.  Конфигурацияны ачыңыз file текст редакторун колдонуп, эки сап кошуу. Өзгөртүү каалаган сырсөзүңүзгө. Админ.web.sci = 1
    Sci.admin.pwd =
  3.  Сактоо жана өзгөртүлгөн конфигурацияны жүктөө file Калыбына келтирүү конфигурациясын колдонуу менен аппаратка кайтыңыз File Система → Тейлөө өтмөгүндөгү өзгөчөлүк.

АНЫКТАЛУУ ТАЛАПТАРЫ

Сураныч, электрондук кат жөнөтүңүз support@algosolutions.com стандарттуу же негизги аутентификацияны кааласаңызample код.

JSON жүктөмү менен стандарттык аутентификация сурамы

HTTP/HTTPS сурамында талап кылынган аталыштар
> Мазмун түрү: "приложения/json"
> Content-MD5: [content_md5] Мисample
Content-MD5: 74362cc86588b2b3c5a4491baf80375b

Авторизация: hmac admin:[nonce]:[hmac_output]
Авторизациянын аталыштары төмөнкүлөрдөн турат:

  1. 'hmac admin' сабынан кийин кош чекит ':'.
  2. Nonce – Кокус же кайталанбаган маани, андан кийин кош чекит ':'.
  3. Hmac_output – түзмөгүңүздө конфигурацияланган RESTful API сырсөзү (жашыруун ачкыч) жана төмөндөгүдөй HMAC киргизүү аркылуу түзүлгөн:
    [request_method]:[request_uri]:[content_md5]:[content_type]:[убакытamp]:[бир жолу]

HMAC киргизүү, мисалыample: (жашыруун ачкыч катары "algo" колдонуу)
POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936 SHA-256 аркылуу дайджест катары сырсөз жана HMAC киргизүү саптары менен HMAC түзүңүз:
HMAC чыгаруу, мисалыample: 2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330

Дата: күн, дата ай, жыл са:мин:сек GMT
Example
Дата: Бейшемби, 22 Сентябрь, 2022 02:33:07 GMT
Пайдалуу жүгү менен стандарттуу аутентификацияampле:

ALGO RESTful API 02

 JSON жүктөмү жок стандарттык аутентификация сурамы

3.1ге окшош, мазмунга байланыштуу аталыштар/hmac киргизүү калтырылган.
HMAC киргизүү: [request_method]:[request_uri]:[убакытamp]:[бир жолу] HMAC киргизүү эксample: (жашыруун ачкыч катары "algo" колдонуу)
GET:/api/settings/audio.page.vol:1601312252:49936
SHA-256 аркылуу сырсөз жана HMAC киргизүү сабы менен HMAC түзүңүз:
HMAC чыгаруу, мисалыample: c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8
Пайдалуу жүгү жок стандарттуу аутентификацияampле:

ALGO RESTful API 03

 Негизги аутентификация сурамы

Аутентификациянын бул ыкмасы этияттык менен колдонулушу керек, анткени ал стандарттык ыкмага караганда коопсузураак.

Авторизация: Basic [base64]
Exampле:
Авторизация: Негизги YWRtaW46YWxnbwo=
Негизги аутентификация exampле:
ALGO RESTful API 04

БУЙРУКТАР

 RESTful API буйруктары

Төмөндө бардык колдоого алынган API буйруктарынын тизмеси.

Эскертүү
PUT өтүнүчү өзгөртөт же кайра жүктөөдөн аман калган туруктуу ресурсту түзөт, ал эми POST сурамы учурдагы сеанс үчүн түзмөктү гана көзөмөлдөйт.

Description Метод URI Пайдалуу жүк Параметрлер Кайтуу Example Продукт FW
Белгилүү бир параметрдин маанисин алуу.  GET /api/settings/[ачкыч аты] Мис./api/settings/audio.page.vol  Жок  {“audio.page.vol”: “-18дБ”}  Баары  > 3.3
Децибел менен өлчөнгөн айланадагы ызы-чуунун деңгээлин кайтарыңыз. Айланадагы ызы-чууну компенсациялоо Негизги Орнотуулар -> Функциялар өтмөгүндө иштетилиши керек. GET /api/info/audio.noise.level Жок {“audio.noise.level”: 72}  Динамиктер Динамиктерди көрсөтөт > 3.3
 Релелик киргизүү терминалынын абалын чыгарып алыңыз. GET /api/info/input.relay.status Жок  

{“input.relay.status”: “idle”} же {“input.relay.status”: “active”}

8063тен башка релелик киргизүү менен бардык продуктулар. Төмөндө караңыз. > 4.1
 Киргизүү 1 же Киргизүү 2 терминалдарынын абалын чыгарып алыңыз.  GET /api/info/input.relay1.status же /api/info/input.relay2.status  Жок {“input.relay1.status”: “бос”} же {“input.relay1.status”: “активдүү”}  8063  > 4.1
Үндөрдүн тизмесин алуу fileс учурда орнотулган.  GET  /api/info/tonelist  

Жок

{“tonelist”:[“bell-na.wav”,”bell uk.wav”,”buzzer.wav”,…]}  Баары  > 5.0
Статус бетинде көрсөтүлгөн түзмөк маалыматын чыгарып алыңыз.  GET  /api/info/status  Жок  Статус өтмөгүнөн маалыматтардын толук тизмеси.  Баары  > 5.4
Жөнүндө бетинде көрсөтүлгөн продукт маалымат алуу.  GET /api/info/about  Жок  Бардык маалымат жөнүндө кошумча барагында. Баары > 5.4
Каалаган түс жана үлгү параметрлери менен стробду иштетиңиз. POST /api/controls/strobe/start үлгү: {0 – 15}
түс1: {көк, кызыл, сары, жашыл} түс2: {көк, кызыл, сары, жашыл} ledlvl: {1 – 255}
кармап калуу: {чын, жалган}
Жок  8128(G2)
8138
8190S
> 3.3
 Стробду токтотуңуз.  POST  /api/controls/strobe/stop  Жок  Жок 8128(G2)
8138
8190S
> 3.3
Обонду бир жолу ойнотуңуз же аны укурук кылыңыз. POST /api/controls/tone/start жол: {тон} б.а. chime.wav
цикл: {чын, жалган} же {0, 1}
мис. {“path”:”chime.wav”, “loop”:true}
Жок Баяндамачылар 8301
8373
8028(G2)
8201
8039
> 3.3
Тонду токтот. POST /api/controls/tone/stop Жок Жок Баяндамачылар 8301
8373
8028(G2)
8201
8039
> 3.3
Алдын ала жазылган билдирүү менен телефон кошумчасына чалыңыз. POST /api/controls/call/start  {“кеңейтүү”:”2099″,
“tone”:”gong.wav”, “interval”:”0″, “maxdur”:”10″}
Жок Баяндамачылар 8301
8410
8420
> 3.3
Чалууну бүтүрүңүз. POST /api/controls/call/stop Жок Жок Баяндамачылар 8301
8410
8420
> 3.3
Бир тараптуу бет чалуу. Түзмөк максаттуу кеңейтүүдөн аудио агымын алат.  POST  /api/controls/call/page  {"кеңейтүү":" ”}  Жок Баяндамачылар 8410
8420
 > 5.3.4
Максаттуу акыркы чекитти кайра жүктөө. POST /api/controls/reboot Жок Жок Баары > 3.3
эшикти ач. "жергиликтүү" локалдык релесин башкарат "netdc1" алыскы тармактык эшик контроллерин башкарат (8063) POST /api/controls/door/lock doorid: {local, netdc1}
* Милдеттүү эмес
Жок 8039
8028(G2)
8201
8063
> 3.3
Эшикти бекит. POST /api/controls/door/lock  doorid: {local, netdc1}
* Милдеттүү эмес
Жок 8039
8028(G2)
8201
8063
> 3.3
24v жардамчы чыгуу релесин иштетүү. POST api/controls/24v/enable Жок Жок 8063 > 5.0
24v жардамчы чыгуу релесин өчүрүңүз. POST api/controls/24v/disable Жок Жок 8063 > 5.0
Чыгуу релесин иштетүү. POST /api/controls/relay/enable Жок Жок 8063 > 5.0
Чыгуу релесин өчүрүңүз. POST /api/controls/relay/disable Жок Жок 8063 > 5.0
Алгонун микропрограмма серверинен эң акыркы микропрограмма версиясын текшериңиз.  POST  /api/controls/upgrade/check  Жок {“версия”: “жаңыртылган”} же
{"версия": " ”}
 Баары  > 4.1
 Algo'нун микропрограмма серверинен эң акыркы микропрограмма версиясын текшерип, ошол версияга жаңыртыңыз. POST /api/controls/upgrade/start Жок {“статус”: “жаңыртылган”} же
{"статус": "жакшыртуу ”, “url”: url>} же
{“статус”: “ ”}
Баары > 4.1
Экранда сүрөт же үлгү көрсөтүү.  POST  /api/controls/screen/start  Караңыз төмөндө  Жок 8410
8420
 > 5.3.4
Экран үлгүсүн токтотуп, демейки экранга кайтыңыз.  POST  /api/controls/screen/stop  Жок  Жок 8410
8420
 > 5.3.4
Негизги колдонмону кайра иштетиңиз. POST /api/controls/reload Жок Жок Баары > 5.3.4
Түздөн-түз аудио агымын уга баштаңыз. Агым жөнөтүлүп жаткан порт номерин конфигурациялаңыз. POST /api/controls/rx/start {"порт": } Жок Баары   > 5.3.4
Түз аудио агымын угууну токтотуңуз. POST  /api/controls/rx/stop  Жок  Жок  Баары  > 5.3.4
Multicast режимин орнотуңуз. PUT /api/state/mcast/update/ {"режим":"жөнөтүүчү", "дареги": , "порт": , "тип":"rtp"} же {"режим":"жөнөтүүчү", "дареги": , "порт": , “тип”:”поли”, “группа”:1}
**Эскертүү**: Бул буйруктун алдында башкаруу элементтери/тон/старт колдонулса, обон учурдагы орнотуулар аркылуу ойнотулат. web UI.
Жок 8301 > 5.0
JSON пайдалуу жүктөн белгилүү бир параметрге маани киргизиңиз. PUT /api/settings параметр: {value}
мис. {“audio.page.vol”: “-3dB”}
Жок 8180(G2)
8186
8190
8190S
8301
8373
> 3.3
 Simple Control Interface (SCI) буйруктары

Бардык SCI буйруктары GET суроо-талаптары болуп саналат жана аутентификация үчүн жалпы “usi” жана “admin” параметрлерине ээ.
Exampле:
АЛУУ http:// /sci/controls/door/unlock?usr=admin&pwd=algo&doorid=local

 Description  URI Кошумча Пайдалуу жүк Параметрлер Продукциялар  FW
эшикти ач.
"жергиликтүү" локалдык релесин башкарат "netdc1" алыскы тармактык эшик контроллерин башкарат (8063)
/sci/controls/do or/lock doorid: {local, netdc1}
* Милдеттүү эмес
8039
8028(G2)
8201
8063
> 3.3
Эшикти бекит. /sci/controls/do or/lock doorid: {local, netdc1}
* Милдеттүү эмес
8039
8028(G2)
8201
8063
> 3.3
Обонду бир жолу ойнотуңуз же аны укурук кылыңыз.  /sci/controls/to ne/start жол: {тон} б.а. chime.wav
цикл: {чын, жалган} же {0, 1}
Баары  > 3.3
Тонду токтот. /sci/controls/to ne/stop  Жок  Баары  > 3.3
Каалаган түс жана үлгү параметрлери менен стробду иштетиңиз. /sci/controls/strobe/start үлгү: {0 – 15} түс1: {көк, кызыл, сары, жашыл}
түс2: {көк, кызыл, сары, жашыл}
ledlvl: {1 – 255} кармап калуу: {чын, жалган}
8128(G2)
8138
8190S
> 3.3
 Стробду токтотуңуз.  /sci/controls/strobe/stop  Жок 8128(G2)
8138
8190S
 > 3.3

Документтер / Ресурстар

ALGO RESTful API [pdf] Колдонуучунун колдонмосу
AL061-GU-GF000API-001-R0, AL061-GU-CP00TEAM-001-R0, RESTful API, RESTful, API
ALGO RESTful API [pdf] Колдонуучунун колдонмосу
AL061-GU-CP000API-230717, RESTful API, RESTful, API

Шилтемелер

Комментарий калтырыңыз

Сиздин электрондук почта дарегиңиз жарыяланбайт. Талап кылынган талаалар белгиленген *