ALGO RESTful API logo

ALGO RESTful API

ALGO RESTful API chigadzirwa

Ruzivo rwechigadzirwa: RESTful API Guide

Iyo Algo RESTful API inobvumira vashandisi kuwana, kushandura, uye kukonzeresa zviito paAlgo IP Endpoints panetiweki yavo kuburikidza neHTTP/HTTPS zvikumbiro. Gwaro iri rinopa yunifomu uye yakafanotsanangurwa seti yezvisina hurongwa zvinogona kushandiswa kupindirana neAlgo zvishandiso. Iyo API inotsigira HTTP/HTTPS GET, POST, uye PUT zvikumbiro neJSON payloads.

Authentication

Kune marudzi matatu ehuchokwadi anowanikwa neAlgo RESTful API:

  • Standard authentication (inogoneswa neiyo default)
  • Huchokwadi hwechokwadi (sarudzo)
  • Hapana nzira yechokwadi (isina kukurudzirwa; chete yezvinangwa zvekuyedza)

Mirayiridzo Yekushandisa Chigadzirwa: RESTful API

Prerequisites

Usati wagonesa iyo RESTful API, ita shuwa kuti mudziyo une internet yekubatanidza kusvika kune yakafanogadzirirwa NTP maseva. Kana pasina internet yekubatanidza iripo, gadzira yemuno NTP server uye isa IP kero yayo.

Kugonesa iyo RESTful API
  1. Log kupinda mudziyo wacho web interface uye famba uchienda kune Yepamberi Settings Admin tab.
  2. Skira pasi kune API Tsigiro chikamu uye gonesa iyo RESTful API.
  3. Seta password yaunoda (default password: algo). Ziva kuti standard authentication inogoneswa nedefault.
Kugonesa Basic Authentication (Sarudzo)
  1. Mu web interface, famba uchienda kuSystem Maintenance tab uye dhawunirodha zvigadziriso file.
  2. Vhura iyo yekumisikidza file nechero mavara edhita uye wedzera mutsara unotevera: api.auth.basic = 1
  3. Sevha uye rodha iyo yakagadziridzwa gadziriso file dzokera kumudziyo uchishandisa Restore Configuration File ficha muSystem Maintenance tab.
Kugonesa Hapana Nzira Yekusimbisa (Sarudzo)

Kugonesa iyo isina nzira yechokwadi, siya iyo RESTful API Password munda isina chinhu. Iyi nzira haina kukurudzirwa uye inofanirwa kungoshandiswa pakuedza zvinangwa chete sezvo isingapi chengetedzo.

Kugonesa Nyore Kudzora Interface (Sarudzo)
  1. On the web interface, famba uchienda kuSystem Maintenance tab uye dhawunirodha zvigadziriso file.
  2. Vhura iyo yekumisikidza file uchishandisa text editor uye wedzera mitsara miviri. Shandura kune yako password password.
  3. Admin.web.sci = 1
  4. Sci.admin.pwd =
  5. Sevha uye rodha iyo yakagadziridzwa gadziriso file dzokera kumudziyo uchishandisa Restore Configuration File ficha muSystem Maintenance tab.

Kusimbisa Sampkodhi

Ndapota email support@maonero.ru kana iwe uchida chiyero kana chechokwadi chechokwadi sampkodhi.
Kuti uwane rumwe rubatsiro, fona 604-454-3792 kana email support@maonero.ru

Information Notices

Cherechedza
Chiziviso chinoratidza kuvandudzwa kunobatsira, ruzivo, uye mirairo inofanirwa kuteverwa

Disclaimer

Ruzivo rwuri mugwaro iri rwunotendwa kuti rwakarurama mune zvese asi harubvumidzwe naAlgo. Mashoko aya anogona kuchinja pasina chiziviso uye haafaniri kutorwa nenzira ipi zvayo sekuzvipira neAlgo kana chero ipi zvayo inobatana nayo kana vatsigiri. Algo nevaya vanobatana nayo uye vatsigiri havatore mutoro kune chero kukanganisa kana kusiiwa mugwaro iri. Ongororo yegwaro iri kana zvinyorwa zvitsva zvaro zvinogona kupihwa kuti zvibatanidze shanduko dzakadai. Algo haitore mhosva yekukuvadza kana zvirevo zvinobva mukushandiswa kwebhuku rino kana zvigadzirwa zvakadaro, software, firmware, uye/kana hardware. Hapana chikamu chegwaro iri chinogona kutsikisa kana kufambiswa mune chero nzira kana neimwe nzira - zvemagetsi kana zvemuchina - kune chero chinangwa pasina mvumo yakanyorwa kubva kuAlgo.
Kuti uwane rumwe ruzivo kana rubatsiro rwehunyanzvi muNorth America, ndapota taura neboka rekutsigira reAlgo:

Algo Technical Support
1-604-454-3792
support@maonero.ru

©2022 Algo ichiratidzo chakanyoreswa cheAlgo Communication Products Ltd.
All Rights Reserved. Zvimwe zviratidzo zvese zvinhu zvevaridzi vazvo. Ese ma specs anogona kuchinjwa pasina chiziviso.

 GENERAL

Nhanganyaya

Gwaro iri rinotsanangura kuti Algo RESTful API inogona kushandiswa sei kuwana, kushandura, uye kukonzeresa zviito paAlgo IP Endpoints panetiweki yako kuburikidza nezvikumbiro zveHTTP/HTTPS, pamwe nedzimwe nzira dzakasiyana dzechokwadi dzine mazinga akasiyana ekuchengetedza. Kukumbira masisitimu anogona kudyidzana neAlgo zvishandiso kuburikidza neyunifomu uye yakafanotsanangurwa seti yemaitiro asina chirevo anotsanangurwa mugwaro iri. Zvikumbiro zvinoitirwa kuURI yechishandiso ine JSON payload uye kuwana mhinduro yeJSON. HTTP/HTTPS GET, POST, uye PUT zvikumbiro zvinogadzirwa kuti zviwane URI pamwe chete neJSON payload (ona chikamu chemirairo cherondedzero yemiripo).

 Authentication

Kune marudzi matatu ehuchokwadi:

  •  Standard (inokurudzirwa)
  •  Basic
  •  Hapana (hazvikurudzirwe)

The Standard authentication inoshandisa Hash-based Message Authentication Code (HMAC) ine SHA-256 encoded digest. Basic authentication inoshandisa Base64 encoding uye inofanira kungoshandiswa pamusoro peHTTPS. Hapana humbowo hunofanira kungoshandiswa nekungwarira zvakanyanya sezvo husingapi humbowo. Ona chikamu cheAuthentication Requirements kuti uwane rumwe ruzivo.

KUGADZIRA UYE CONFIGURATION

Prerequisites
  •  Gwaro iri rinotora iyo Algo endpoint iri kuita firmware version 3.3 kana kupfuura.
  •  Musiyano wenguva pakati peanokumbira neAlgo zvishandiso zvinofanirwa kunge zvisingasviki masekonzi makumi matatu kushandisa chiyero chechokwadi.
  • Ita shuwa kuti NTP (Network Time Protocol) iri kushandiswa. Kero dzetsika dzeNTP maseva dzinogona kugadziridzwa muYepamberi Zvirongwa → Nguva tebhu.

Cherechedza
Iwo pre-akagadzirirwa NTP maseva anogarwa pachena, saka internet yekubatanidza inodiwa kuti usvike pairi. Kana pasina internet yekubatanidza iripo, gadzira yemuno NTP server uye isa IP kero yayo.

  • Ita shuwa kuti Algo mudziyo system nguva yakagadziridzwa kune chaiyo nguva zone. Izvi zvinogona kuitwa nekufamba uchienda kune Yepamberi Zvirongwa → Nguva tebhu.
 Kugonesa iyo RESTful API
  1. Log into the web interface uye famba uchienda kune Yepamberi Zvirongwa → Admin tab.
  2. Skira pasi kune API Tsigiro chikamu, gonesa iyo RESTful API uye isa iyo Password sezvaunoda (deafault password: algo)
    Cherechedza
    Standard authentication inogoneswa neiyo default.ALGO RESTful API 01
Gonesa Basic Authentication (Sarudzo)
  1. Mu web interface, famba uchienda kuSystem → Maintenance tab uye dhawunirodha gadziriso file.
  2. Vhura iyo yekumisikidza file nechero mavara edhita uye wedzera mutsara unotevera: api.auth.basic = 1
  3.  Sevha uye rodha iyo yakagadziridzwa gadziriso file dzokera kumudziyo uchishandisa Restore Configuration File chimiro muSystem → Maintenance tab.
Hapana nzira yekusimbisa (Isarudzo)

Kugonesa iyo isina nzira yechokwadi, siya iyo RESTful API Password munda isina chinhu. Iyi nzira haina kukurudzirwa uye inofanirwa kungoshandiswa pakuedza zvinangwa chete sezvo isingapi chengetedzo.

Kugonesa Nyore Kudzora Interface (Sarudzo)
  1. On the web interface, famba uchienda kuSystem → Maintenance tab uye dhawunirodha gadziriso file.
  2.  Vhura iyo yekumisikidza file uchishandisa text editor uye wedzera mitsara miviri. Change the kune password yako yaunoda. Admin.web.sci = 1
    Sci.admin.pwd =
  3.  Sevha uye rodha iyo yakagadziridzwa gadziriso file dzokera kumudziyo uchishandisa Restore Configuration File chimiro muSystem → Maintenance tab.

ZVINODIWA ZVINODIWA

Ndapota email support@maonero.ru kana iwe uchida chiyero kana chechokwadi chechokwadi sampkodhi.

Chikumbiro Chekusimbisa Chikumbiro neJSON Payload

Inodiwa misoro muchikumbiro cheHTTP/HTTPS
> Zvemukati-Type: "application/json"
> Zvemukati-MD5: [zvirimo_md5] Eksample
Content-MD5: 74362cc86588b2b3c5a4491baf80375b

Mvumo: hmac admin:[nonce]:[hmac_output]
Misoro yemvumo inosanganisira:

  1. Tambo 'hmac admin' inoteverwa nekoloni ':'.
  2. Nonce - Yakasarudzika kana isingadzokorore kukosha, inoteverwa nekoloni ':'.
  3. Hmac_output - inogadzirwa neRESTful API Password (chakavanzika-kiyi) yakagadziridzwa pane yako kifaa uye iyo HMAC yekuisa, sezviri pazasi:
    [request_method]:[request_uri]:[content_md5]:[content_type]:[nguvaamp]:[hapana]

HMAC yekuisa example: (uchishandisa 'algo' sekiyi yakavanzika)
POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936 Gadzira HMAC nepassword uye HMAC tambo yekupinza sekugaya uchishandisa SHA-256:
HMAC yakabuda example: 2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330

Date: zuva, zuva mwedzi, gore hr:min:sec GMT
Example
Date: China, 22 Sept, 2022 02:33:07 GMT
Standard authentication ine payload example:

ALGO RESTful API 02

 Chikumbiro Chekusimbisa Chikumbiro Pasina JSON Payload

Zvakafanana ne3.1 ine zvemukati zvine hukama misoro / hmac yekuisa yakasiiwa.
HMAC kuisa: [request_method]:[request_uri]:[nguvaamp]: [pasina] HMAC yekuisa example: (uchishandisa 'algo' sekiyi yakavanzika)
GET:/api/settings/audio.page.vol:1601312252:49936
Gadzira HMAC nepassword uye HMAC tambo yekupinda uchishandisa SHA-256:
HMAC yakabuda example: c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8
Standard authentication pasina payload example:

ALGO RESTful API 03

 Basic Authentication Chikumbiro

Iyi nzira yekusimbisa inofanira kushandiswa nekuchenjerera sezvo isina kuchengetedzwa zvishoma pane yakajairwa nzira.

Mvumo: Yekutanga [base64]
Example:
Mvumo: Yekutanga YWRtaW46YWxnbwo=
Basic authentication example:
ALGO RESTful API 04

COMMANDS

 RESTful API Mirairo

Pazasi pane rondedzero yeese anotsigirwa API mirairo.

Cherechedza
Chikumbiro chePUT chinochinja kana kugadzira chigadziriso chisingaperi chinopukunyuka kutangazve, nepo chikumbiro chePOST chinongotonga chishandiso chechikamu chazvino.

Tsanangudzo Nzira URI Payload Parameters Dzoka Example Product FW
Dzora kukosha kweimwe parameter.  GET /api/settings/[kiyi-zita] Ex./api/settings/audio.page.vol  N/A  {“audio.page.vol”: “-18dB”}  Zvose  > 3.3
Dzosera mwero weruzha rwakayerwa nemadecibel. Ambient Noise Compensation inofanira kugoneswa muBasic Settings -> Features tab. GET /api/info/audio.noise.level N/A {“audio.noise.level”: 72}  Vatauri Vanoratidza Vatauri > 3.3
 Bvisa chimiro cheiyo relay yekupinza terminal. GET /api/info/input.relay.status N/A  

{"input.relay.status": "isina basa"} kana {"input.relay.status": "active"}

Zvese zvigadzirwa zvine relay input, kunze kwe8063. Ona pazasi. > 4.1
 Bvisa chimiro cheInput 1 kana Input 2 materminal.  GET /api/info/input.relay1.status kana /api/info/input.relay2.status  N/A {“input.relay1.status”: “isina basa”} kana kuti {“input.relay1.status”: “active”}  8063  > 4.1
Dzora rondedzero yenzwi files parizvino yakaiswa.  GET  /api/info/tonelist  

N/A

{“tonelist”:[“bell-na.wav”,”bhero uk.wav”,”buzzer.wav”,…]}  Zvose  > 5.0
Dzora ruzivo rwemudziyo unoratidzwa paStatus peji.  GET  /api/info/status  N/A  Rondedzero yakazara yeruzivo kubva kuStatus tab.  Zvose  > 5.4
Dzora ruzivo rwechigadzirwa rwunoratidzwa pane About peji.  GET /api/info/about  N/A  Ruzivo rwese rwuripo pane About tab. Zvose > 5.4
Activate iyo strobe ine yaunoda ruvara uye pateni paramita. POST /api/controls/strobe/start muenzaniso: {0 - 15}
color1: {blue, red, amber, green} color2: {blue, red, amber, green} ledlvl: {1 – 255}
kuramba: {chokwadi, nhema}
N/A  8128(G2)
8138
8190S
> 3.3
 Misa strobe.  POST  /api/controls/strobe/stop  N/A  N/A 8128(G2)
8138
8190S
> 3.3
Ridza toni kamwe chete kana kuisunga. POST /api/controls/tone/start nzira: {tone} kureva. chime.wav
loop: {chokwadi, nhema} kana {0, 1}
eg {“nzira”:”chime.wav”, “loop”:true}
N/A Vatauri 8301
8373
8028(G2)
8201
8039
> 3.3
Misa inzwi. POST /api/controls/tone/stop N/A N/A Vatauri 8301
8373
8028(G2)
8201
8039
> 3.3
Fonera nharembozha ine meseji yakarekodhwa. POST /api/controls/call/start  {"kuwedzera":"2099″,
“tone”:”gong.wav”, “interval”:”0″, “maxdur”:”10″}
N/A Vatauri 8301
8410
8420
> 3.3
Pedzisa kufona. POST /api/controls/call/stop N/A N/A Vatauri 8301
8410
8420
> 3.3
Tanga kufona kwenzira imwe chete peji. Chishandiso chinogashira rwizi rweodhiyo kubva kune chinangwa chekuwedzera.  POST  /api/controls/call/page  {"kuwedzera": " ”}  N/A Vatauri 8410
8420
 > 5.3.4
Dzorerazve chinangwa chekupedzisira. POST /api/controls/reboot N/A N/A Zvose > 3.3
Kiinura gonhi. "yemunharaunda" inodzora yemuno relay "netdc1" inodzora kure network network gonhi controller (8063) POST /api/controls/door/unlock doorid: {local, netdc1}
* Zvingakudetsera
N/A 8039
8028(G2)
8201
8063
> 3.3
Kiya musuwo. POST /api/controls/door/lock  doorid: {local, netdc1}
* Zvingakudetsera
N/A 8039
8028(G2)
8201
8063
> 3.3
Gonesa iyo 24v aux kunze relay. POST api/controls/24v/enable N/A N/A 8063 > 5.0
Dzima iyo 24v aux kunze relay. POST api/controls/24v/dzima N/A N/A 8063 > 5.0
Gonesa iyo inoburitsa relay. POST /api/controls/relay/enable N/A N/A 8063 > 5.0
Dzima relay yekubuda. POST /api/controls/relay/disable N/A N/A 8063 > 5.0
Tarisa Algo's firmware server kune yazvino firmware version.  POST  /api/controls/upgrade/check  N/A {“version”: “updated”} kana
{"shanduro": " ”}
 Zvose  > 4.1
 Tarisa Algo's firmware server yeazvino firmware vhezheni uye simudzira kune iyo vhezheni. POST /api/controls/upgrade/start N/A {“status”: “updated”} kana
{"status": "kusimudzira ", "url”: url>} kana
{"chimiro": " ”}
Zvose > 4.1
Ratidza mufananidzo kana pateni pachiratidziri.  POST  /api/controls/screen/start  Maona pazasi  N/A 8410
8420
 > 5.3.4
Misa iyo skrini patani uye dzokera kune yakasarudzika skrini.  POST  /api/controls/screen/stop  N/A  N/A 8410
8420
 > 5.3.4
Tangazve iyo huru application. POST /api/controls/reload N/A N/A Zvose > 5.3.4
Tanga kuteerera kune yakananga audio stream. Gadzirisa nhamba yechiteshi iyo iri kutumirwa rwizi. POST /api/controls/rx/start {"chiteshi": } N/A Zvose   > 5.3.4
Rega kuteerera kune yakananga audio stream. POST  /api/controls/rx/stop  N/A  N/A  Zvose  > 5.3.4
Seta iyo multicast modhi. PUT /api/state/mcast/update/ {"modhi":"mutumi", "kero": , "chiteshi": , "type":"rtp"} kana {"modhi":"mutumi", "kero": , "chiteshi": , "type":"poly", "group":1}
**Cherechedza**: Kana zvidzoreso/ toni/kutanga zvichishandiswa pamberi pemurairo uyu, toni inotamba ichishandisa zvigadziriso zvazvino pa web UI.
N/A 8301 > 5.0
Isa kukosha kune yakatarwa parameter kubva kuJSON payload. PUT /api/settings parameter: {value}
semuenzaniso {“audio.page.vol”: “-3dB”}
N/A 8180(G2)
8186
8190
8190S
8301
8373
> 3.3
 Nyore Kudzora Interface (SCI) Mirairo

Yese mirairo yeSCI ndeye GET zvikumbiro uye ine zvakajairwa paramita "usi" uye "admin" yekusimbisa.
Example:
WANA http:// /sci/controls/door/unlock?usr=admin&pwd=algo&doorid=local

 Tsanangudzo  URI Kuwedzera Payload Parameters Products  FW
Kii mukova.
"yemunharaunda" inodzora yemuno relay "netdc1" inodzora kure network network gonhi controller (8063)
/sci/controls/do or/unlock doorid: {local, netdc1}
* Zvingakudetsera
8039
8028(G2)
8201
8063
> 3.3
Kiya musuwo. /sci/controls/do or/lock doorid: {local, netdc1}
* Zvingakudetsera
8039
8028(G2)
8201
8063
> 3.3
Ridza toni kamwe chete kana kuisunga.  /sci/controls/to ne/start nzira: {tone} kureva. chime.wav
loop: {chokwadi, nhema} kana {0, 1}
Zvose  > 3.3
Misa inzwi. /sci/controls/to ne/stop  N/A  Zvose  > 3.3
Activate iyo strobe ine yaunoda ruvara uye pateni paramita. /sci/controls/strobe/start patani: {0 – 15} ruvara1: {bhuruu, tsvuku, amber, girini}
ruvara2: {bhuruu, tsvuku, amber, girini}
ledlvl: {1 - 255} holdover: {chokwadi, nhema}
8128(G2)
8138
8190S
> 3.3
 Misa strobe.  /sci/controls/strobe/stop  N/A 8128(G2)
8138
8190S
 > 3.3

Zvinyorwa / Zvishandiso

ALGO RESTful API [pdf] Bhuku reMushandisi
AL061-GU-GF000API-001-R0, AL061-GU-CP00TEAM-001-R0, RESTful API, RESTful, API
ALGO RESTful API [pdf] Bhuku reMushandisi
AL061-GU-CP000API-230717, RESTful API, RESTful, API

References

Siya mhinduro

Yako email kero haizoburitswa. Nzvimbo dzinodiwa dzakamakwa *