ALGO RESTful API
Informacije o izdelku: Vodnik za RESTful API
Algo RESTful API omogoča uporabnikom dostop, manipulacijo in sprožitev dejanj na končnih točkah Algo IP v njihovem omrežju prek zahtev HTTP/HTTPS. Ta dokument zagotavlja enoten in vnaprej določen nabor operacij brez stanja, ki jih je mogoče uporabiti za interakcijo z napravami Algo. API podpira zahteve HTTP/HTTPS GET, POST in PUT s koristnimi obremenitvami JSON.
Preverjanje pristnosti
Z API-jem Algo RESTful so na voljo tri vrste avtentikacij:
- Standardna avtentikacija (privzeto omogočena)
- Osnovna avtentikacija (neobvezno)
- Brez metode preverjanja pristnosti (ni priporočljivo; samo za namene testiranja)
Navodila za uporabo izdelka: RESTful API
Predpogoji
Preden omogočite RESTful API, zagotovite, da ima naprava internetno povezavo za dostop do vnaprej konfiguriranih strežnikov NTP. Če internetna povezava ni na voljo, konfigurirajte lokalni strežnik NTP in vnesite njegov naslov IP.
Omogočanje API-ja RESTful
- Prijavite se v napravo web in se pomaknite do zavihka Administrator naprednih nastavitev.
- Pomaknite se navzdol do razdelka Podpora za API in omogočite API RESTful.
- Nastavite želeno geslo (privzeto geslo: algo). Upoštevajte, da je standardna avtentikacija privzeto omogočena.
Omogočanje osnovne avtentikacije (izbirno)
- V web vmesnika, pojdite na zavihek Vzdrževanje sistema in prenesite konfiguracijo file.
- Odprite konfiguracijo file s katerim koli urejevalnikom besedil in dodajte naslednjo vrstico: api.auth.basic = 1
- Shranite in naložite spremenjeno konfiguracijo file nazaj v napravo z uporabo obnovitve konfiguracije File funkcijo v zavihku Vzdrževanje sistema.
Omogočanje brez metode preverjanja pristnosti (izbirno)
Če želite omogočiti metodo brez preverjanja pristnosti, pustite polje Geslo RESTful API prazno. Ta metoda ni priporočljiva in jo je treba uporabljati le za namene testiranja, saj ne zagotavlja varnosti.
Omogočanje preprostega nadzornega vmesnika (izbirno)
- Na web vmesnika, pojdite na zavihek Vzdrževanje sistema in prenesite konfiguracijo file.
- Odprite konfiguracijo file z urejevalnikom besedil in dodajte dve vrstici. Spremenite geslo na vaše želje.
- skrbnikweb.sci = 1
- Sci.admin.pwd =
- Shranite in naložite spremenjeno konfiguracijo file nazaj v napravo z uporabo obnovitve konfiguracije File funkcijo v zavihku Vzdrževanje sistema.
Preverjanje pristnosti Sample koda
Prosim po e-pošti support@algosolutions.com če želite standardno ali osnovno avtentikacijo sampkodo.
Za dodatno podporo pokličite 604-454-3792 ali e-pošto support@algosolutions.com
Informacijska obvestila
Opomba
Opomba označuje uporabne posodobitve, informacije in navodila, ki jih morate upoštevati
Zavrnitev odgovornosti
Informacije v tem dokumentu veljajo za točne v vseh pogledih, vendar Algo zanje ne jamči. Informacije se lahko spremenijo brez predhodnega obvestila in se jih na noben način ne sme razumeti kot zavezo družbe Algo ali katere koli njene podružnice ali podružnice. Algo in njegove pridružene in hčerinske družbe ne prevzemajo nobene odgovornosti za morebitne napake ali opustitve v tem dokumentu. Lahko se izdajo revizije tega dokumenta ali njegove nove izdaje, ki vključujejo takšne spremembe. Algo ne prevzema nobene odgovornosti za škodo ali zahtevke, ki izhajajo iz kakršne koli uporabe tega priročnika ali takšnih izdelkov, programske opreme, strojne in/ali strojne opreme. Nobenega dela tega dokumenta ni dovoljeno reproducirati ali prenašati v kakršni koli obliki ali na kakršen koli način – elektronski ali mehanski – za kateri koli namen brez pisnega dovoljenja družbe Algo.
Za dodatne informacije ali tehnično pomoč v Severni Ameriki se obrnite na ekipo za podporo družbe Algo:
Algo tehnična podpora
1-604-454-3792
support@algosolutions.com
©2022 Algo je registrirana blagovna znamka družbe Algo Communication Products Ltd.
Vse pravice pridržane. Vse druge blagovne znamke so last njihovih lastnikov. Vse specifikacije se lahko spremenijo brez predhodnega obvestila.
SPLOŠNO
Uvod
Ta dokument opisuje, kako je mogoče Algo RESTful API uporabiti za dostop, manipulacijo in sprožitev dejanj na končnih točkah Algo IP v vašem omrežju prek zahtev HTTP/HTTPS, kot tudi nekaj različnih metod preverjanja pristnosti z različnimi stopnjami varnosti. Sistemi, ki zahtevajo, lahko komunicirajo z napravami Algo prek enotnega in vnaprej določenega niza operacij brez stanja, opredeljenih v tem dokumentu. Zahteve so podane URI-ju vira s koristno vsebino JSON in izzovejo odgovor JSON. Zahteve HTTP/HTTPS GET, POST in PUT so vložene v URI vira skupaj s tovorom JSON (glejte razdelek z ukazi za seznam koristnih tovorov).
Preverjanje pristnosti
Obstajajo tri vrste avtentikacij:
- Standardno (priporočeno)
- Osnovno
- Brez (ni priporočljivo)
Standardna avtentikacija uporablja kodo za preverjanje pristnosti sporočila (HMAC), ki temelji na zgoščevanju, s kodiranim izvlečkom SHA-256. Osnovno preverjanje pristnosti uporablja kodiranje Base64 in se sme uporabljati samo prek HTTPS. Brez preverjanja pristnosti se sme uporabljati zelo previdno, saj ne omogoča preverjanja pristnosti. Za več podrobnosti glejte razdelek Zahteve za preverjanje pristnosti.
NASTAVITEV IN KONFIGURACIJA
Predpogoji
- Ta dokument predvideva, da končna točka Algo uporablja različico vdelane programske opreme 3.3 ali novejšo.
- Časovna razlika med vlagateljem zahteve in napravami Algo mora biti manjša od 30 sekund za uporabo standardne avtentikacije.
- Prepričajte se, da je v uporabi NTP (Network Time Protocol). Naslove strežnikov NTP po meri lahko konfigurirate v Naprednih nastavitvah → zavihek Čas.
Opomba
Vnaprej konfigurirani strežniki NTP gostujejo javno, zato je za dostop do njih potrebna internetna povezava. Če internetna povezava ni na voljo, konfigurirajte lokalni strežnik NTP in vnesite njegov naslov IP.
- Zagotovite, da je sistemski čas naprave Algo nastavljen na pravi časovni pas. To lahko storite tako, da se pomaknete na zavihek Napredne nastavitve → Čas.
Omogočanje API-ja RESTful
- Prijavite se v web vmesnik in se pomaknite do Napredne nastavitve → zavihek Skrbnik.
- Pomaknite se navzdol do razdelka Podpora za API, omogočite API RESTful in nastavite geslo po želji (privzeto geslo: algo)
Opomba
Standardna avtentikacija je privzeto omogočena.
Omogoči osnovno preverjanje pristnosti (izbirno)
- V web vmesnika, se pomaknite do zavihka Sistem → Vzdrževanje in prenesite konfiguracijo file.
- Odprite konfiguracijo file s katerim koli urejevalnikom besedil in dodajte naslednjo vrstico: api.auth.basic = 1
- Shranite in naložite spremenjeno konfiguracijo file nazaj v napravo z uporabo obnovitve konfiguracije File v zavihku Sistem → Vzdrževanje.
Brez metode preverjanja pristnosti (izbirno)
Če želite omogočiti metodo brez preverjanja pristnosti, pustite polje Geslo RESTful API prazno. Ta metoda ni priporočljiva in jo je treba uporabljati le za namene testiranja, saj ne zagotavlja varnosti.
Omogočanje preprostega nadzornega vmesnika (izbirno)
- Na web vmesnika, se pomaknite do zavihka Sistem → Vzdrževanje in prenesite konfiguracijo file.
- Odprite konfiguracijo file z urejevalnikom besedil in dodajte dve vrstici. Spremenite na vaše želeno geslo. skrbnikweb.sci = 1
Sci.admin.pwd = - Shranite in naložite spremenjeno konfiguracijo file nazaj v napravo z uporabo obnovitve konfiguracije File v zavihku Sistem → Vzdrževanje.
ZAHTEVE ZA AVTENTIKACIJO
Prosim po e-pošti support@algosolutions.com če želite standardno ali osnovno avtentikacijo sampkodo.
Standardna zahteva za preverjanje pristnosti z obremenitvijo JSON
Zahtevane glave v zahtevi HTTP/HTTPS
> Vrsta vsebine: “application/json”
> Vsebina-MD5: [content_md5] Nprample
Content-MD5: 74362cc86588b2b3c5a4491baf80375b
Avtorizacija: hmac admin:[nonce]:[hmac_output]
Glave avtorizacije so sestavljene iz:
- Niz 'hmac admin', ki mu sledi dvopičje ':'.
- Nonce – naključna ali neponavljajoča se vrednost, ki ji sledi dvopičje »:«.
- Hmac_output – ustvarjeno z geslom RESTful API (skrivni ključ), konfiguriranim v vaši napravi, in vhodom HMAC, kot je navedeno spodaj:
[request_method]:[request_uri]:[content_md5]:[content_type]:[časamp]:[enkrat]
HMAC vhod nprample: (z uporabo 'algo' kot skrivnega ključa)
POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936 Ustvari HMAC z geslom in vhodnim nizom HMAC kot povzetek z uporabo SHA-256:
HMAC izhod nprample: 2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330
Datum: dan, datum mesec, leto h:min:sek GMT
Example
Datum: četrtek, 22. september 2022 02:33:07 GMT
Standardna avtentikacija s koristno obremenitvijo nprample:
Standardna zahteva za preverjanje pristnosti brez obremenitve JSON
Identično kot 3.1 z izpuščenimi glavami, povezanimi z vsebino/vnosom hmac.
Vnos HMAC: [request_method]:[request_uri]:[timesamp]:[nonce] HMAC vnos nprample: (z uporabo 'algo' kot skrivnega ključa)
GET:/api/settings/audio.page.vol:1601312252:49936
Ustvarite HMAC z geslom in vnosnim nizom HMAC z uporabo SHA-256:
HMAC izhod nprample: c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8
Standardna avtentikacija brez obremenitve nprample:
Osnovna zahteva za preverjanje pristnosti
Ta način preverjanja pristnosti je treba uporabljati previdno, saj je manj varen kot standardni način.
Avtorizacija: Osnovna [base64]
Example:
Pooblastilo: Osnovno YWRtaW46YWxnbwo=
Osnovna avtentikacija nprample:
UKAZI
Ukazi RESTful API
Spodaj je seznam vseh podprtih ukazov API.
Opomba
Zahteva PUT spremeni ali ustvari trajni vir, ki preživi ponovni zagon, medtem ko zahteva POST nadzoruje napravo samo za trenutno sejo.
Opis | Metoda | URI | Tovor Parametri | Vrnitev Example | Izdelek | FW |
Pridobite vrednost določenega parametra. | DOBITI | /api/settings/[ime-ključa] Npr./api/settings/audio.page.vol | N/A | {“audio.page.vol”: “-18dB”} | Vse | > 3.3 |
Vrnite raven hrupa v okolju, izmerjeno v decibelih. Kompenzacija okoljskega hrupa mora biti omogočena v osnovnih nastavitvah -> zavihek Funkcije. | DOBITI | /api/info/audio.noise.level | N/A | {»avdio.noise.level«: 72} | Zvočniki Prikaz zvočnikov | > 3.3 |
Izvlecite status vhodnega terminala releja. | DOBITI | /api/info/input.relay.status | N/A |
{“input.relay.status”: “idle”} ali {“input.relay.status”: “active”} |
Vsi izdelki z relejnim vhodom, razen 8063. Glejte spodaj. | > 4.1 |
Izvlecite status terminala Input 1 ali Input 2. | DOBITI | /api/info/input.relay1.status ali /api/info/input.relay2.status | N/A | {“input.relay1.status”: “idle”} ali {“input.relay1.status”: “active”} | 8063 | > 4.1 |
Pridobite seznam tonov fileje trenutno nameščen. | DOBITI | /api/info/tonelist |
N/A |
{“tonelist”:[“bell-na.wav”,”bell uk.wav”,”buzzer.wav”,…]} | Vse | > 5.0 |
Pridobite informacije o napravi, ki so prikazane na strani Status. | DOBITI | /api/info/status | N/A | Celoten seznam informacij na zavihku Status. | Vse | > 5.4 |
Pridobite informacije o izdelku, ki so prikazane na strani O tem. | DOBITI | /api/info/about | N/A | Vse informacije so na zavihku Vizitka. | Vse | > 5.4 |
Aktivirajte stroboskop z želenimi parametri barve in vzorca. | OBJAVI | /api/controls/strobe/start | vzorec: {0 – 15} barva1: {modra, rdeča, jantarna, zelena} barva2: {modra, rdeča, jantarna, zelena} ledlvl: {1 – 255} zadržanje: {true, false} |
N/A | 8128(G2) 8138 8190S |
> 3.3 |
Ustavite stroboskop. | OBJAVI | /api/controls/strobe/stop | N/A | N/A | 8128(G2) 8138 8190S |
> 3.3 |
Enkrat predvajajte ton ali ga ponovite. | OBJAVI | /api/controls/tone/start | pot: {ton} tj. zvonec.wav zanka: {true, false} ali {0, 1} npr. {“path”:”chime.wav”, “loop”:true} |
N/A | Zvočniki 8301 8373 8028(G2) 8201 8039 |
> 3.3 |
Ustavite ton. | OBJAVI | /api/controls/tone/stop | N/A | N/A | Zvočniki 8301 8373 8028(G2) 8201 8039 |
> 3.3 |
Pokličite interni telefon z vnaprej posnetim sporočilom. | OBJAVI | /api/controls/call/start | {“razširitev”:”2099″, “ton”:”gong.wav”, “interval”:”0″, “maxdur”:”10″} |
N/A | Zvočniki 8301 8410 8420 |
> 3.3 |
Končaj klic. | OBJAVI | /api/controls/call/stop | N/A | N/A | Zvočniki 8301 8410 8420 |
> 3.3 |
Začnite enosmerni stranski klic. Naprava bo prejela zvočni tok iz ciljne razširitve. | OBJAVI | /api/controls/call/page | {“razširitev”:” ”} | N/A | Zvočniki 8410 8420 |
> 5.3.4 |
Znova zaženite ciljno končno točko. | OBJAVI | /api/controls/reboot | N/A | N/A | Vse | > 3.3 |
Odkleni vrata. “local” krmili lokalni rele “netdc1” krmili daljinski omrežni krmilnik vrat (8063) | OBJAVI | /api/controls/door/unlock | doorid: {lokalno, netdc1} *Neobvezno |
N/A | 8039 8028(G2) 8201 8063 |
> 3.3 |
Zakleni vrata. | OBJAVI | /api/controls/door/lock | doorid: {lokalno, netdc1} *Neobvezno |
N/A | 8039 8028(G2) 8201 8063 |
> 3.3 |
Omogočite 24v pomožni izhodni rele. | OBJAVI | api/controls/24v/enable | N/A | N/A | 8063 | > 5.0 |
Onemogočite 24v pomožni izhodni rele. | OBJAVI | api/controls/24v/onemogoči | N/A | N/A | 8063 | > 5.0 |
Omogočite izhodni rele. | OBJAVI | /api/controls/relay/enable | N/A | N/A | 8063 | > 5.0 |
Onemogočite izhodni rele. | OBJAVI | /api/controls/relay/disable | N/A | N/A | 8063 | > 5.0 |
Preverite strežnik vdelane programske opreme Algo za najnovejšo različico vdelane programske opreme. | OBJAVI | /api/controls/upgrade/check | N/A | {“version”: “updated”} ali {“različica”: “ ”} |
Vse | > 4.1 |
Preverite strežnik vdelane programske opreme Algo za najnovejšo različico vdelane programske opreme in nadgradite na to različico. | OBJAVI | /api/controls/upgrade/start | N/A | {“stanje”: “posodobljeno”} oz {“stanje”: “nadgradnja ”, “url”: url>} oz {"stanje": " ”} |
Vse | > 4.1 |
Prikažite sliko ali vzorec na zaslonu. | OBJAVI | /api/controls/screen/start | glej spodaj | N/A | 8410 8420 |
> 5.3.4 |
Ustavite zaslonski vzorec in se vrnite na privzeti zaslon. | OBJAVI | /api/controls/screen/stop | N/A | N/A | 8410 8420 |
> 5.3.4 |
Znova zaženite glavno aplikacijo. | OBJAVI | /api/controls/reload | N/A | N/A | Vse | > 5.3.4 |
Začnite poslušati neposredni zvočni tok. Konfigurirajte številko vrat, kamor se pošilja tok. | OBJAVI | /api/controls/rx/start | {"pristanišče": } | N/A | Vse | > 5.3.4 |
Prenehajte poslušati neposredni zvočni tok. | OBJAVI | /api/controls/rx/stop | N/A | N/A | Vse | > 5.3.4 |
Nastavite način multicast. | POSTAVITE | /api/state/mcast/update/ | {“mode”:”pošiljatelj”, “naslov”: , "pristanišče": , “type”:”rtp”} ali {“mode”:”sender”, “address”: , "pristanišče": , “vrsta”:”poli”, “skupina”:1} **Opomba**: Če je pred tem ukazom uporabljen kontrolnik/ton/začetek, se bo ton predvajal s trenutnimi nastavitvami na web Uporabniški vmesnik. |
N/A | 8301 | > 5.0 |
Vstavite vrednost v določen parameter iz nosilca JSON. | POSTAVITE | /api/nastavitve | parameter: {value} npr. {“audio.page.vol”: “-3dB”} |
N/A | 8180(G2) 8186 8190 8190S 8301 8373 |
> 3.3 |
Ukazi preprostega nadzornega vmesnika (SCI).
Vsi ukazi SCI so zahteve GET in imajo skupna parametra "usi" in "admin" za preverjanje pristnosti.
Example:
PRIDOBITE http:// /sci/controls/door/unlock?usr=admin&pwd=algo&doorid=local
Opis | URI | Dodatno Tovor Parametri | Izdelki | FW |
Odkleni vrata. “local” krmili lokalni rele “netdc1” krmili daljinski omrežni krmilnik vrat (8063) |
/sci/controls/do or/unlock | doorid: {lokalno, netdc1} *Neobvezno |
8039 8028(G2) 8201 8063 |
> 3.3 |
Zakleni vrata. | /sci/controls/do or/lock | doorid: {lokalno, netdc1} *Neobvezno |
8039 8028(G2) 8201 8063 |
> 3.3 |
Enkrat predvajajte ton ali ga ponovite. | /sci/controls/to ne/start | pot: {ton} tj. zvonec.wav zanka: {true, false} ali {0, 1} |
Vse | > 3.3 |
Ustavite ton. | /sci/controls/to ne/stop | N/A | Vse | > 3.3 |
Aktivirajte stroboskop z želenimi parametri barve in vzorca. | /sci/controls/strobe/start | vzorec: {0 – 15} barva1: {modra, rdeča, jantarna, zelena} barva2: {modra, rdeča, jantarna, zelena} ledlvl: {1 – 255} zadržek: {true, false} |
8128(G2) 8138 8190S |
> 3.3 |
Ustavite stroboskop. | /sci/controls/strobe/stop | N/A | 8128(G2) 8138 8190S |
> 3.3 |
Dokumenti / Viri
![]() |
ALGO RESTful API [pdf] Uporabniški priročnik AL061-GU-GF000API-001-R0, AL061-GU-CP00TEAM-001-R0, RESTful API, RESTful, API |
![]() |
ALGO RESTful API [pdf] Uporabniški priročnik AL061-GU-CP000API-230717, RESTful API, RESTful, API |