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 иштетилүүдө
- Аппаратка кириңиз web интерфейсин жана Advanced Settings Admin өтмөгүнө өтүңүз.
- API Колдоо бөлүмүнө ылдый сыдырып, RESTful API иштетиңиз.
- Керектүү сырсөздү коюңуз (демейки сырсөз: algo). Стандарттык аутентификация демейки боюнча иштетилгенин эске алыңыз.
Негизги аутентификацияны иштетүү (кошумча)
- Ичинде web интерфейсинде, Системаны тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
- Конфигурацияны ачыңыз file каалаган текст редактору менен жана төмөнкү сапты кошуңуз: api.auth.basic = 1
- Сактоо жана өзгөртүлгөн конфигурацияны жүктөө file Калыбына келтирүү конфигурациясын колдонуу менен аппаратка кайтыңыз File тутумдук тейлөө өтмөгүндөгү өзгөчөлүк.
Аутентификация ыкмасын иштетүү (милдеттүү эмес)
Аутентификация жок ыкмасын иштетүү үчүн, RESTful API Сырсөз талаасын бош калтырыңыз. Бул ыкма сунушталбайт жана коопсуздукту камсыз кылбагандыктан, сыноо максатында гана колдонулушу керек.
Жөнөкөй башкаруу интерфейсин иштетүү (кошумча)
- боюнча web интерфейсинде, Системаны тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
- Конфигурацияны ачыңыз file текст редакторун колдонуп, эки сап кошуу. Сырсөзүңүздү каалаганыңызга өзгөртүңүз.
- Админ.web.sci = 1
- Sci.admin.pwd =
- Сактоо жана өзгөртүлгөн конфигурацияны жүктөө 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 иштетилүүдө
- Кирүү web интерфейсин тандап, Өркүндөтүлгөн орнотуулар → Администратор өтмөгүнө өтүңүз.
- API Колдоо бөлүмүнө ылдый жылдырып, RESTful API иштетиңиз жана Сырсөздү каалагандай коюңуз (демейки сырсөз: algo)
Эскертүү
Стандарттык аутентификация демейки боюнча иштетилген.
Негизги аутентификацияны иштетүү (кошумча)
- Ичинде web интерфейсинде, Система → Тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
- Конфигурацияны ачыңыз file каалаган текст редактору менен жана төмөнкү сапты кошуңуз: api.auth.basic = 1
- Сактоо жана өзгөртүлгөн конфигурацияны жүктөө file Калыбына келтирүү конфигурациясын колдонуу менен аппаратка кайтыңыз File Система → Тейлөө өтмөгүндөгү өзгөчөлүк.
Аутентификация ыкмасы жок (милдеттүү эмес)
Аутентификация жок ыкмасын иштетүү үчүн, RESTful API Сырсөз талаасын бош калтырыңыз. Бул ыкма сунушталбайт жана коопсуздукту камсыз кылбагандыктан, сыноо максатында гана колдонулушу керек.
Жөнөкөй башкаруу интерфейсин иштетүү (кошумча)
- боюнча web интерфейсинде, Система → Тейлөө өтмөгүнө өтүңүз жана конфигурацияны жүктөп алыңыз file.
- Конфигурацияны ачыңыз file текст редакторун колдонуп, эки сап кошуу. Өзгөртүү каалаган сырсөзүңүзгө. Админ.web.sci = 1
Sci.admin.pwd = - Сактоо жана өзгөртүлгөн конфигурацияны жүктөө file Калыбына келтирүү конфигурациясын колдонуу менен аппаратка кайтыңыз File Система → Тейлөө өтмөгүндөгү өзгөчөлүк.
АНЫКТАЛУУ ТАЛАПТАРЫ
Сураныч, электрондук кат жөнөтүңүз support@algosolutions.com стандарттуу же негизги аутентификацияны кааласаңызample код.
JSON жүктөмү менен стандарттык аутентификация сурамы
HTTP/HTTPS сурамында талап кылынган аталыштар
> Мазмун түрү: "приложения/json"
> Content-MD5: [content_md5] Мисample
Content-MD5: 74362cc86588b2b3c5a4491baf80375b
Авторизация: hmac admin:[nonce]:[hmac_output]
Авторизациянын аталыштары төмөнкүлөрдөн турат:
- 'hmac admin' сабынан кийин кош чекит ':'.
- Nonce – Кокус же кайталанбаган маани, андан кийин кош чекит ':'.
- 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ле:
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ле:
Негизги аутентификация сурамы
Аутентификациянын бул ыкмасы этияттык менен колдонулушу керек, анткени ал стандарттык ыкмага караганда коопсузураак.
Авторизация: Basic [base64]
Exampле:
Авторизация: Негизги YWRtaW46YWxnbwo=
Негизги аутентификация exampле:
БУЙРУКТАР
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 |