Содржини скриј

Лого на ALGO RESTful API

ALGO RESTful API

Производ на ALGO RESTful API

Информации за производот: RESTful API Водич

Algo RESTful API им овозможува на корисниците пристап, манипулирање и активирање дејства на крајните точки на Algo IP на нивната мрежа преку барања за HTTP/HTTPS. Овој документ обезбедува униформа и предефиниран сет на операции без државјанство што може да се користат за интеракција со уредите Algo. API поддржува HTTP/HTTPS GET, POST и PUT барања со носивост на JSON.

Автентикација

Постојат три типа на автентикации достапни со Algo RESTful API:

  • Стандардна автентикација (стандардно овозможена)
  • Основна автентикација (опционално)
  • Нема метод за автентикација (не се препорачува; само за цели на тестирање)

Упатства за употреба на производот: RESTful API

Предуслови

Пред да го вклучите RESTful API, проверете дали уредот има интернет конекција за да стигне до претходно конфигурираните NTP сервери. Ако не е достапна интернет конекција, конфигурирајте локален NTP сервер и внесете ја неговата IP адреса.

Овозможување на RESTful API
  1. Пријавете се во уредот web интерфејс и одете до табулаторот Admin Advanced Settings.
  2. Скролувајте надолу до делот за поддршка на API и овозможете го RESTful API.
  3. Поставете ја саканата лозинка (стандардна лозинка: algo). Имајте предвид дека стандардната автентикација е стандардно овозможена.
Овозможување основна автентикација (опционално)
  1. Во web интерфејс, одете до јазичето System Maintenance и преземете ја конфигурацијата file.
  2. Отворете ја конфигурацијата file со кој било уредувач на текст и додадете ја следната линија: api.auth.basic = 1
  3. Зачувајте ја и поставете ја изменетата конфигурација file назад на уредот со помош на обновување на конфигурацијата File функција во картичката System Maintenance.
Овозможување без метод за автентикација (опционално)

За да го овозможите методот без автентикација, оставете го полето RESTful API Password празно. Овој метод не се препорачува и треба да се користи само за цели на тестирање бидејќи не обезбедува сигурност.

Овозможување едноставен контролен интерфејс (опционално)
  1. На web интерфејс, одете до јазичето System Maintenance и преземете ја конфигурацијата file.
  2. Отворете ја конфигурацијата file користејќи уредувач на текст и додадете два реда. Променете ја лозинката на вашата желба.
  3. Админ.web.sci = 1
  4. Sci.admin.pwd =
  5. Зачувајте ја и поставете ја изменетата конфигурација file назад на уредот со помош на обновување на конфигурацијата File функција во картичката System Maintenance.

Автентикација Сample Код

Ве молиме е-пошта support@algosolutions.com ако сакате стандардна или основна автентикацијаampкодот.
За дополнителна поддршка, јавете се 604-454-3792 или е-пошта support@algosolutions.com

Информативни известувања

Забелешка
Белешката означува корисни ажурирања, информации и упатства што треба да се следат

Одрекување

Се верува дека информациите содржани во овој документ се точни во сите погледи, но не се гарантирани од Algo. Информациите се предмет на промена без претходна најава и не треба на било кој начин да се толкуваат како обврска на Алго или која било од нејзините филијали или подружници. Алго и неговите филијали и подружници не преземаат никаква одговорност за какви било грешки или пропусти во овој документ. Може да се издадат ревизии на овој документ или нови изданија на него за да се вклучат такви промени. Алго не презема никаква одговорност за штети или побарувања кои произлегуваат од каква било употреба на овој прирачник или такви производи, софтвер, фирмвер и/или хардвер. Ниту еден дел од овој документ не може да се репродуцира или пренесе во каква било форма или на кој било начин – електронски или механички – за каква било цел без писмена дозвола од Алго.
За дополнителни информации или техничка помош во Северна Америка, ве молиме контактирајте го тимот за поддршка на Algo:

Алго техничка поддршка
1-604-454-3792
support@algosolutions.com

©2022 Algo е регистрирана трговска марка на Algo Communication Products Ltd.
Сите права се задржани. Сите други трговски марки се сопственост на нивните соодветни сопственици. Сите спецификации се предмет на промена без претходна најава.

 ОПШТО

Вовед

Овој документ опишува како Algo RESTful API може да се користи за пристап, манипулирање и активирање дејства на крајните точки на Algo IP на вашата мрежа преку барања за HTTP/HTTPS, како и неколку различни методи за автентикација со различни нивоа на безбедност. Системите кои бараат може да комуницираат со уредите Algo преку униформа и предефиниран сет на операции без државјанство дефинирани во овој документ. Барањата се упатуваат до URI на ресурсот со товар на JSON и предизвикуваат JSON одговор. Барањата за HTTP/HTTPS GET, POST и PUT се направени за URI ресурси заедно со товарот на JSON (видете го делот за команди за список со носивост).

 Автентикација

Постојат три типа на автентикации:

  •  Стандарден (препорачано)
  •  Основни
  •  Нема (не се препорачува)

Стандардна автентикација користи хаш-базиран код за автентикација на пораки (HMAC) со SHA-256 кодиран дигест. Основната автентикација користи кодирање 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 RESTful API 01
Овозможи основна автентикација (опционално)
  1. Во web интерфејс, одете до картичката Систем → Одржување и преземете ја конфигурацијата file.
  2. Отворете ја конфигурацијата file со кој било уредувач на текст и додадете ја следната линија: api.auth.basic = 1
  3.  Зачувајте ја и поставете ја изменетата конфигурација file назад на уредот со помош на обновување на конфигурацијата File функција во картичката Систем → Одржување.
Нема метод за автентикација (опционално)

За да го овозможите методот без автентикација, оставете го полето RESTful API Password празно. Овој метод не се препорачува и треба да се користи само за цели на тестирање бидејќи не обезбедува сигурност.

Овозможување едноставен контролен интерфејс (опционално)
  1. На web интерфејс, одете до картичката Систем → Одржување и преземете ја конфигурацијата file.
  2.  Отворете ја конфигурацијата file користејќи уредувач на текст и додадете два реда. Променете го на вашата желба лозинка. Админ.web.sci = 1
    Sci.admin.pwd =
  3.  Зачувајте ја и поставете ја изменетата конфигурација file назад на уредот со помош на обновување на конфигурацијата File функција во картичката Систем → Одржување.

БАРАЊА ЗА АВТЕНТИКАЦИЈА

Ве молиме е-пошта support@algosolutions.com ако сакате стандардна или основна автентикацијаampкодот.

Стандардно барање за автентикација со JSON Payload

Задолжителни заглавија во барањето HTTP/HTTPS
> Тип на содржина: „апликација/json“
> Содржина-MD5: [content_md5] Прample
Content-MD5: 74362cc86588b2b3c5a4491baf80375b

Овластување: hmac admin:[nonce]:[hmac_output]
Насловите за овластување се состојат од:

  1. Низата „hmac admin“ проследена со две точки „:“.
  2. Nonce – Случајна или неповторлива вредност, проследена со две точки „:“.
  3. Hmac_output – генериран од RESTful API лозинката (таен клуч) конфигурирана на вашиот уред и влезот HMAC, како што е наведено подолу:
    [молба_метод]:[молба_ури]:[содржина_мд5]:[тип_содржина]:[временскиamp]:[никогаш]

Влез HMAC прample: (користејќи „алго“ како таен клуч)
POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936 Генерирајте HMAC со лозинка и HMAC влезна низа како дигестија користејќи SHA-256:
HMAC излез прample: 2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330

Датум: ден, датум месец, година ч:мин:сек GMT
Example
Датум: четврток, 22 септември 2022 година 02:33:07 GMT
Стандардна автентикација со носивост на прampле:

ALGO RESTful API 02

 Стандардно барање за автентикација без товар на JSON

Идентично на 3.1 со испуштени заглавија поврзани со содржина/влез hmac.
Влез за HMAC: [молк_метод]:[молк_ури]:[времеamp]:[nonce] HMAC влез прample: (користејќи „алго“ како таен клуч)
GET:/api/settings/audio.page.vol:1601312252:49936
Генерирајте HMAC со лозинка и HMAC влезна низа користејќи SHA-256:
HMAC излез прample: c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8
Стандардна автентикација без носивост на прampле:

ALGO RESTful API 03

 Основно барање за автентикација

Овој метод на автентикација треба да се користи внимателно бидејќи е помалку безбеден од стандардниот метод.

Овластување: Основно [base64]
Exampле:
Овластување: Основен YWRtaW46YWxnbwo=
Основна автентикација прampле:
ALGO RESTful API 04

КОМЕНДИ

 RESTful API команди

Подолу е листа на сите поддржани API команди.

Забелешка
Барањето PUT го менува или создава постојан ресурс кој преживува при рестартирање, додека барањето POST го контролира уредот само за тековната сесија.

Опис Метод URI Оптоварување Параметри Врати се Example Производ FW
Враќање на вредноста на одреден параметар.  ДОБИЈ /api/settings/[key-name] Пр./api/settings/audio.page.vol  N/A  {„audio.page.vol“: „-18dB“}  Сите  > 3.3
Вратете го нивото на амбиентална бучава измерено во децибели. Компензацијата за амбиентален шум мора да биде овозможена во Основни поставки -> картичката Карактеристики. ДОБИЈ /api/info/audio.noise.level N/A {„audio.noise.level“: 72}  Звучници Прикажуваат звучници > 3.3
 Извлечете го статусот на влезниот терминал на релето. ДОБИЈ /api/info/input.relay.status N/A  

{„input.relay.status“: „неактивен“} или {„input.relay.status“: „активен“}

Сите производи со влез на реле, освен 8063. Видете подолу. > 4.1
 Извлечете го статусот на терминалите Влез 1 или Влез 2.  ДОБИЈ /api/info/input.relay1.status или /api/info/input.relay2.status  N/A {„input.relay1.status“: „неактивен“} или {„input.relay1.status“: „активен“}  8063  > 4.1
Враќање на списокот со тонови fileе моментално инсталиран.  ДОБИЈ  /api/info/tonelist  

N/A

{„тонелист“:[„ѕвонче-на.вав“, „ѕвонче uk.wav“, „звук.wav“,…]}  Сите  > 5.0
Вратете ги информациите за уредот што се прикажани на страницата Статус.  ДОБИЈ  /api/info/status  N/A  Целосна листа на информации од јазичето Статус.  Сите  > 5.4
Вратете ги информациите за производот што се прикажани на страницата За.  ДОБИЈ /api/info/about  N/A  Сите информации се присутни на картичката За. Сите > 5.4
Активирајте го стробот со саканите параметри на боја и шема. ПОСТАВЕТЕ /api/controls/strobe/start шема: {0 - 15}
боја1: {сина, црвена, килибарна, зелена} боја2: {сина, црвена, килибарна, зелена} ledlvl: {1 - 255}
задржување: {точно, неточно}
N/A  8128 (G2)
8138
8190S
> 3.3
 Запрете го стробот.  ПОСТАВЕТЕ  /api/controls/strobe/stop  N/A  N/A 8128 (G2)
8138
8190S
> 3.3
Пуштете тон еднаш или завртете го. ПОСТАВЕТЕ /api/controls/tone/start патека: {тон} т.е. ѕвонење.wav
јамка: {точно, неточно} или {0, 1}
на пр. {“path”:”chime.wav”, “loop”:true}
N/A Звучници 8301
8373
8028 (G2)
8201
8039
> 3.3
Запрете го тонот. ПОСТАВЕТЕ /api/контроли/тон/стоп N/A N/A Звучници 8301
8373
8028 (G2)
8201
8039
> 3.3
Повикајте екстензија на телефонот со претходно снимена порака. ПОСТАВЕТЕ /api/controls/call/start  {“продолжување”:”2099″,
„тон“: „gong.wav“, „интервал“: „0″, „maxdur“:“10″}
N/A Звучници 8301
8410
8420
> 3.3
Завршете го повикот. ПОСТАВЕТЕ /api/controls/повик/стоп N/A N/A Звучници 8301
8410
8420
> 3.3
Започнете еднонасочен повик на страница. Уредот ќе го прими аудио преносот од целната екстензија.  ПОСТАВЕТЕ  /api/controls/повик/страница  {„продолжување“:“ ”}  N/A Звучници 8410
8420
 > 5.3.4
Рестартирајте ја целната крајна точка. ПОСТАВЕТЕ /api/контроли/рестартирање N/A N/A Сите > 3.3
Отклучете ја вратата. „локално“ го контролира локалното реле „netdc1“ го контролира далечинскиот мрежен контролер за врата (8063) ПОСТАВЕТЕ /api/контроли/врата/отклучување врата: {local, netdc1}
*Изборен
N/A 8039
8028 (G2)
8201
8063
> 3.3
Заклучи ја вратата. ПОСТАВЕТЕ /api/контроли/врата/брава  врата: {local, netdc1}
*Изборен
N/A 8039
8028 (G2)
8201
8063
> 3.3
Овозможете го релето за излез од 24v. ПОСТАВЕТЕ api/controls/24v/овозможи N/A N/A 8063 > 5.0
Исклучете го релето за излез од 24v. ПОСТАВЕТЕ api/controls/24v/disable N/A N/A 8063 > 5.0
Овозможете го излезното реле. ПОСТАВЕТЕ /api/контроли/релеј/овозможи N/A N/A 8063 > 5.0
Исклучете го излезното реле. ПОСТАВЕТЕ /api/контроли/реле/оневозможи N/A N/A 8063 > 5.0
Проверете го серверот на фирмверот на Algo за најновата верзија на фирмверот.  ПОСТАВЕТЕ  /api/controls/надградба/проверка  N/A {„верзија“: „ажурирана“} или
{„верзија“: „ ”}
 Сите  > 4.1
 Проверете го серверот на фирмверот на Algo за најновата верзија на фирмверот и надградете го на таа верзија. ПОСТАВЕТЕ /api/controls/надградба/старт N/A {„статус“: „ажурирано“} или
{„статус“: „надградба “, “url”: url>} или
{„статус“: „ ”}
Сите > 4.1
Прикажете слика или шема на екранот.  ПОСТАВЕТЕ  /api/controls/екран/старт  Види подолу  N/A 8410
8420
 > 5.3.4
Запрете ја шемата на екранот и вратете се на стандардниот екран.  ПОСТАВЕТЕ  /api/контроли/екран/стоп  N/A  N/A 8410
8420
 > 5.3.4
Рестартирајте ја главната апликација. ПОСТАВЕТЕ /api/controls/reload N/A N/A Сите > 5.3.4
Почнете да слушате директен аудио пренос. Конфигурирајте го бројот на портата до која се испраќа преносот. ПОСТАВЕТЕ /api/controls/rx/start {„порта“: } N/A Сите   > 5.3.4
Престанете да слушате директен аудио пренос. ПОСТАВЕТЕ  /api/controls/rx/stop  N/A  N/A  Сите  > 5.3.4
Поставете го режимот за повеќекратно емитување. СТАВИ /api/state/mcast/update/ {„режим“: „испраќач“, „адреса“: , „порта“: , “type”:”rtp”} или {“mode”:”sender”, “address”: , „порта“: , “type”:”poly”, “group”:1}
**Забелешка**: ако се користат контроли/тон/почеток пред оваа команда, тонот ќе се репродуцира со помош на тековните поставки на web UI.
N/A 8301 > 5.0
Вметнете вредност на одреден параметар од товарот на JSON. СТАВИ /api/поставки параметар: {вредност}
на пр. {„audio.page.vol“: „-3dB“}
N/A 8180 (G2)
8186
8190
8190S
8301
8373
> 3.3
 Наредби за едноставен контролен интерфејс (SCI).

Сите SCI команди се GET барања и ги имаат заедничките параметри „usi“ и „admin“ за автентикација.
Exampле:
ДОБИЈ http:// /sci/controls/door/unlock?usr=admin&pwd=algo&doorid=local

 Опис  URI Дополнителни Оптоварување Параметри Производи  FW
Отклучете ја вратата.
„локално“ го контролира локалното реле „netdc1“ го контролира далечинскиот мрежен контролер за врата (8063)
/sci/controls/направи или/отклучи врата: {local, netdc1}
*Изборен
8039
8028 (G2)
8201
8063
> 3.3
Заклучи ја вратата. /sci/controls/do или/lock врата: {local, netdc1}
*Изборен
8039
8028 (G2)
8201
8063
> 3.3
Пуштете тон еднаш или завртете го.  /sci/controls/to ne/start патека: {тон} т.е. ѕвонење.wav
јамка: {точно, неточно} или {0, 1}
Сите  > 3.3
Запрете го тонот. /sci/controls/to ne/stop  N/A  Сите  > 3.3
Активирајте го стробот со саканите параметри на боја и шема. /sci/controls/strobe/start шема: {0 – 15} боја1: {сина, црвена, килибар, зелена}
боја 2: {сина, црвена, килибарна, зелена}
ledlvl: {1 - 255} задржување: {точно, неточно}
8128 (G2)
8138
8190S
> 3.3
 Запрете го стробот.  /sci/controls/strobe/stop  N/A 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

Референци

Оставете коментар

Вашата адреса за е-пошта нема да биде објавена. Задолжителните полиња се означени *