ALGO RESTful API logo

ALGO RESTful API

ALGO RESTful API pwodwi

Enfòmasyon sou pwodwi: RESTful API Gid

Algo RESTful API a pèmèt itilizatè yo jwenn aksè, manipile, ak deklanche aksyon sou Algo IP Endpoints sou rezo yo atravè demann HTTP/HTTPS. Dokiman sa a bay yon seri operasyon inifòm ak predefini ki ka itilize pou kominike avèk aparèy Algo. API a sipòte HTTP/HTTPS GET, POST, ak PUT demann ak chaj JSON.

Otantifikasyon

Gen twa kalite otantifikasyon ki disponib ak API Algo RESTful:

  • Otantifikasyon estanda (pèmèt pa default)
  • Otantifikasyon debaz (si ou vle)
  • Pa gen metòd otantifikasyon (pa rekòmande; sèlman pou rezon tès)

Pwodwi Itilizasyon Enstriksyon: RESTful API

Prekondisyon

Anvan ou pèmèt API RESTful la, asire ke aparèy la gen yon koneksyon entènèt pou rive nan sèvè NTP yo pre-konfiguré. Si pa gen okenn koneksyon entènèt ki disponib, konfigirasyon yon sèvè NTP lokal epi antre adrès IP li.

Pèmèt API RESTful la
  1. Konekte nan aparèy la web koòdone epi ale nan tab la Admin Anviwònman Avanse.
  2. Desann nan seksyon Sipò API a epi pèmèt API RESTful la.
  3. Mete modpas ou vle a (default modpas: algo). Remake byen ke otantifikasyon estanda aktive pa default.
Pèmèt Otantifikasyon debaz (Si ou vle)
  1. Nan la web koòdone, navige nan tab la Antretyen Sistèm epi telechaje konfigirasyon an file.
  2. Louvri konfigirasyon an file ak nenpòt editè tèks epi ajoute liy sa a: api.auth.basic = 1
  3. Sove epi telechaje konfigirasyon modifye a file tounen nan aparèy la lè l sèvi avèk Restore Konfigirasyon an File karakteristik nan tab la Antretyen Sistèm.
Pèmèt Pa gen Metòd Otantifikasyon (Si ou vle)

Pou pèmèt metòd otantifikasyon pa gen okenn, kite jaden Modpas API RESTful vid. Metòd sa a pa rekòmande epi yo ta dwe itilize sèlman pou rezon tès sèlman paske li pa bay okenn sekirite.

Pèmèt entèfas kontwòl senp (Si ou vle)
  1. Sou la web koòdone, navige nan tab la Antretyen Sistèm epi telechaje konfigirasyon an file.
  2. Louvri konfigirasyon an file lè l sèvi avèk yon editè tèks epi ajoute de liy. Chanje modpas ou vle.
  3. Admin.web.sci = 1
  4. Sci.admin.pwd =
  5. Sove epi telechaje konfigirasyon modifye a file tounen nan aparèy la lè l sèvi avèk Restore Konfigirasyon an File karakteristik nan tab la Antretyen Sistèm.

Otantifikasyon Sample Kòd

Tanpri imèl support@algosolutions.com si ou ta renmen yon otantifikasyon estanda oswa debaz sample kod.
Pou plis sipò, rele 604-454-3792 oswa imèl support@algosolutions.com

Avi Enfòmasyon

Remak
Nòt endike dènye enfòmasyon itil, ak enstriksyon yo ta dwe swiv

Limit responsabilite nou

Yo kwè enfòmasyon ki nan dokiman sa a yo egzat nan tout respè men Algo pa garanti. Enfòmasyon yo ka chanje san avètisman epi yo pa ta dwe entèprete nan okenn fason kòm yon angajman pa Algo oswa nenpòt nan afilye li yo oswa filiales. Algo ak afilye li yo ak filiales li yo pa pran okenn responsablite pou nenpòt erè oswa omisyon nan dokiman sa a. Yo ka pibliye revizyon dokiman sa a oswa nouvo edisyon li pou enkòpore chanjman sa yo. Algo pa sipoze okenn responsablite pou domaj oswa reklamasyon ki soti nan nenpòt itilizasyon manyèl sa a oswa pwodwi sa yo, lojisyèl, firmwèr, ak / oswa pyès ki nan konpitè. Pa gen okenn pati nan dokiman sa a ka repwodui oswa transmèt nan nenpòt fòm oswa nan nenpòt mwayen - elektwonik oswa mekanik - pou nenpòt ki rezon san pèmisyon ekri nan men Algo.
Pou plis enfòmasyon oswa asistans teknik nan Amerik di Nò, tanpri kontakte ekip sipò Algo a:

Algo sipò teknik
1-604-454-3792
support@algosolutions.com

©2022 Algo se yon mak ki anrejistre nan Algo Communication Products Ltd.
Tout dwa rezève. Tout lòt mak komèsyal yo se pwopriyete pwopriyetè respektif yo. Tout espesifikasyon yo sijè a chanje san avètisman.

 JENERAL

Entwodiksyon

Dokiman sa a dekri kijan Algo RESTful API ka itilize pou jwenn aksè, manipile, ak deklanche aksyon sou Algo IP Endpoints sou rezo ou atravè demann HTTP/HTTPS, ansanm ak yon koup diferan metòd otantifikasyon ak diferan nivo sekirite. Sistèm demann yo ka kominike avèk aparèy Algo atravè yon seri operasyon inifòm ak predefini ki defini nan dokiman sa a. Yo fè demann nan URI yon resous ki gen yon chaj JSON epi fè yon repons JSON. HTTP/HTTPS GET, POST, ak PUT demann yo fè nan URI resous ansanm ak chaj JSON (gade seksyon kòmandman pou yon lis chaj).

 Otantifikasyon

Gen twa kalite otantifikasyon:

  •  Estanda (rekòmande)
  •  Debaz
  •  Okenn (pa rekòmande)

Otantifikasyon Creole a sèvi ak yon Kòd Otantifikasyon Mesaj ki baze sou Hash (HMAC) ak yon digest kode SHA-256. Otantifikasyon debaz yo itilize kodaj Base64 epi yo ta dwe itilize sèlman sou HTTPS. Pa gen otantifikasyon sèlman dwe itilize ak anpil atansyon paske li pa bay otantifikasyon. Gade seksyon Kondisyon Otantifikasyon pou plis detay.

ENFÒMASYON AK KONFIGURASYON

Prekondisyon
  •  Dokiman sa a sipoze pwen final Algo a ap kouri firmwèr vèsyon 3.3 oswa pi wo.
  •  Diferans tan ant moun k ap fè demann lan ak aparèy Algo yo ta dwe mwens pase 30 segonn pou itilize otantifikasyon estanda.
  • Asire w ap itilize NTP (Network Time Protocol). Adrès sèvè NTP koutim yo ka configuré nan Anviwònman Avanse → Tab Tan.

Remak
Serveurs NTP ki te fèt avan configuré yo hébergé piblikman, se poutèt sa, koneksyon entènèt oblije rive jwenn li. Si pa gen okenn koneksyon entènèt ki disponib, konfigirasyon yon sèvè NTP lokal epi antre adrès IP li.

  • Asire w ke tan sistèm aparèy Algo a ajiste nan zòn ki kòrèk la. Sa a ka fè lè w navige nan Anviwònman Avanse → Tab Tan.
 Pèmèt API RESTful la
  1. Antre nan web koòdone epi ale nan Anviwònman Avanse → Admin tab la.
  2. Desann nan seksyon Sipò API a, aktive API RESTful la epi mete Modpas la jan ou vle (modpas par défaut: algo)
    Remak
    Otantifikasyon estanda aktive pa default.ALGO RESTful API 01
Pèmèt Otantifikasyon debaz (Si ou vle)
  1. Nan la web koòdone, ale nan Sistèm → onglet Antretyen epi telechaje konfigirasyon an file.
  2. Louvri konfigirasyon an file ak nenpòt editè tèks epi ajoute liy sa a: api.auth.basic = 1
  3.  Sove epi telechaje konfigirasyon modifye a file tounen nan aparèy la lè l sèvi avèk Restore Konfigirasyon an File karakteristik nan sistèm nan → Antretyen tab.
Pa gen Metòd Otantifikasyon (Si ou vle)

Pou pèmèt metòd otantifikasyon pa gen okenn, kite jaden Modpas API RESTful vid. Metòd sa a pa rekòmande epi yo ta dwe itilize sèlman pou rezon tès sèlman paske li pa bay okenn sekirite.

Pèmèt entèfas kontwòl senp (Si ou vle)
  1. Sou la web koòdone, ale nan Sistèm → onglet Antretyen epi telechaje konfigirasyon an file.
  2.  Louvri konfigirasyon an file lè l sèvi avèk yon editè tèks epi ajoute de liy. Chanje a nan modpas ou vle. Admin.web.sci = 1
    Sci.admin.pwd =
  3.  Sove epi telechaje konfigirasyon modifye a file tounen nan aparèy la lè l sèvi avèk Restore Konfigirasyon an File karakteristik nan sistèm nan → Antretyen tab.

KONDISYON ANTIKASYON

Tanpri imèl support@algosolutions.com si ou ta renmen yon otantifikasyon estanda oswa debaz sample kod.

Demann Otantifikasyon Creole ak yon chaj JSON

Tèt obligatwa nan demann HTTP/HTTPS
> Kalite kontni: "aplikasyon/json"
> Content-MD5: [content_md5] Egzample
Content-MD5: 74362cc86588b2b3c5a4491baf80375b

Otorizasyon: hmac admin:[nonce]:[hmac_output]
Tèt otorizasyon yo konpoze de:

  1. Chèn 'hmac admin' ki te swiv pa yon kolon ':'.
  2. Nonce – Yon valè owaza oswa ki pa repete, ki te swiv pa yon kolon ':'.
  3. Hmac_output - ki te pwodwi pa RESTful API Modpas (sekrè-kle) konfigirasyon sou aparèy ou an ak opinyon HMAC, jan pou pi ba a:
    [request_method]:[request_uri]:[content_md5]:[content_type]:[tanamp]:[nonce]

Antre HMAC ekzample: (itilize 'algo' kòm kle sekrè a)
POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936 Jenere HMAC ak modpas ak fisèl antre HMAC kòm digest lè l sèvi avèk SHA-256:
Pwodiksyon HMAC ekzample: 2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330

Dat: jou, dat mwa, ane hr:min:sec GMT
Example
Dat: Jedi, 22 septanm 2022 02:33:07 GMT
Otantifikasyon estanda ak payload example:

ALGO RESTful API 02

 Demann Otantifikasyon Creole san yo pa yon chaj JSON

Idantik ak 3.1 ak kontni ki gen rapò ak tèt/hmac opinyon omisyon.
Antre HMAC: [request_method]:[request_uri]:[timestamp]:[nonce] HMAC D' ekzample: (itilize 'algo' kòm kle sekrè a)
GET:/api/settings/audio.page.vol:1601312252:49936
Jenere HMAC ak modpas ak fisèl antre HMAC lè l sèvi avèk SHA-256:
Pwodiksyon HMAC ekzample: c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8
Otantifikasyon estanda san chaj pay example:

ALGO RESTful API 03

 Demann Otantifikasyon debaz

Metòd otantifikasyon sa a ta dwe itilize ak anpil atansyon paske li mwens an sekirite pase metòd estanda a.

Otorizasyon: Debaz [base64]
Example:
Otorizasyon: Debaz YWRtaW46YWxnbwo=
Otantifikasyon debaz eksample:
ALGO RESTful API 04

KÒMANDMAN

 Kòmandman API RESTful

Anba a se yon lis tout kòmandman API sipòte.

Remak
Yon demann PUT chanje oswa kreye yon resous pèmanan ki siviv yon rdemare, pandan y ap yon demann POST sèlman kontwole aparèy la pou sesyon aktyèl la.

Deskripsyon Metòd URI Chaj Paramèt Retounen Example Pwodwi FW
Rekipere valè yon paramèt espesifik.  JWENN /api/settings/[key-name] Egz./api/settings/audio.page.vol  N/A  {“audio.page.vol”: “-18dB”}  Tout  > 3.3
Retounen nivo bri anbyen mezire an desibèl. Konpansasyon bri anbyen dwe aktive nan Anviwònman Debaz -> Tab Karakteristik. JWENN /api/info/audio.noise.level N/A {“audio.noise.level”: 72}  Oratè Montre Oratè > 3.3
 Ekstrè estati tèminal opinyon relè a. JWENN /api/info/input.relay.status N/A  

{“input.relay.status”: “idle”} oswa {“input.relay.status”: “active”}

Tout pwodwi ki gen yon opinyon relè, eksepte 8063 la. Gade anba a. > 4.1
 Ekstrè estati tèminal Antre 1 oswa Antre 2.  JWENN /api/info/input.relay1.status oswa /api/info/input.relay2.status  N/A {“input.relay1.status”: “idle”} oswa {“input.relay1.status”: “active”}  8063  > 4.1
Rekipere lis la nan ton files kounye a enstale.  JWENN  /api/info/tonelist  

N/A

{“tonelist”:[“bell-na.wav”,”bell uk.wav”,”buzzer.wav”,…]}  Tout  > 5.0
Rekipere enfòmasyon aparèy ki parèt sou paj Estati a.  JWENN  /api/info/status  N/A  Lis konplè enfòmasyon ki soti nan tab la Estati.  Tout  > 5.4
Rekipere enfòmasyon sou pwodwi ki parèt sou paj Konsènan.  JWENN /api/info/sou  N/A  Tout enfòmasyon yo prezan sou tab Konsènan. Tout > 5.4
Aktive strobe a ak koulè vle ak paramèt modèl. POST /api/controls/strobe/start modèl: {0 – 15}
koulè1: {ble, wouj, jòn, vèt} koulè2: {ble, wouj, jòn, vèt} ledlvl: {1 – 255}
holdover: {vre, fo}
N/A  8128(G2)
8138
8190S
> 3.3
 Sispann strobe a.  POST  /api/controls/strobe/stop  N/A  N/A 8128(G2)
8138
8190S
> 3.3
Jwe yon ton yon fwa oswa bouk li. POST /api/controls/tone/start chemen: {ton} sa vle di. chime.wav
bouk: {vre, fo} oswa {0, 1}
egzanp {“chemen”:”chime.wav”, “bouk”:vre}
N/A Moun ki pale 8301
8373
8028(G2)
8201
8039
> 3.3
Sispann ton an. POST /api/controls/tone/stop N/A N/A Moun ki pale 8301
8373
8028(G2)
8201
8039
> 3.3
Rele yon ekstansyon telefòn ak yon mesaj pre-anrejistre. POST /api/controls/call/start  {“extension”:”2099”,
"tone":"gong.wav", "entèval":"0", "maxdur":"10"}
N/A Moun ki pale 8301
8410
8420
> 3.3
Fini apèl la. POST /api/controls/call/stop N/A N/A Moun ki pale 8301
8410
8420
> 3.3
Inisye yon apèl paj yon sèl-fason. Aparèy la pral resevwa kouran odyo soti nan ekstansyon sib.  POST  /api/controls/call/page  {"extension":" ”}  N/A Moun ki pale 8410
8420
 > 5.3.4
Rdemare pwen final la sib. POST /api/controls/reboot N/A N/A Tout > 3.3
Debloke pòt la. "lokal" kontwole relè lokal "netdc1" kontwole kontwolè pòt rezo aleka (8063) POST /api/controls/pòt/déblotché pòt: {lokal, netdc1}
* Si ou vle
N/A 8039
8028(G2)
8201
8063
> 3.3
Fèmen pòt la. POST /api/controls/pòt/fèmen  pòt: {lokal, netdc1}
* Si ou vle
N/A 8039
8028(G2)
8201
8063
> 3.3
Pèmèt relè 24v aux. POST api/controls/24v/enable N/A N/A 8063 > 5.0
Enfim relè 24v aux. POST api/kontwòl/24v/enfim N/A N/A 8063 > 5.0
Pèmèt relè pwodiksyon an. POST /api/controls/relè/pèmèt N/A N/A 8063 > 5.0
Enfim relè pwodiksyon an. POST /api/controls/relè/enfim N/A N/A 8063 > 5.0
Tcheke sèvè firmwèr Algo a pou dènye vèsyon firmwèr.  POST  /api/controls/upgrade/check  N/A {“vèsyon”: “mizajou”} oswa
{“version”: “ ”}
 Tout  > 4.1
 Tcheke sèvè firmwèr Algo a pou dènye vèsyon firmwèr ak ajou ak vèsyon sa a. POST /api/controls/upgrade/start N/A {"estati": "mizajou"} oswa
{“status”: “amelyorasyon ", "url”: url>> oswa
{“estati”: “ ”}
Tout > 4.1
Montre yon imaj oswa yon modèl sou ekran an.  POST  /api/controls/screen/start  Gade anba a  N/A 8410
8420
 > 5.3.4
Sispann modèl ekran an epi retounen nan ekran default la.  POST  /api/controls/screen/stop  N/A  N/A 8410
8420
 > 5.3.4
Rekòmanse aplikasyon prensipal la. POST /api/controls/reload N/A N/A Tout > 5.3.4
Kòmanse koute yon kouran odyo dirèk. Konfigure nimewo pò kote kouran an ap voye. POST /api/controls/rx/start {“pò”: } N/A Tout   > 5.3.4
Sispann koute yon kouran odyo dirèk. POST  /api/controls/rx/stop  N/A  N/A  Tout  > 5.3.4
Mete mòd multidiffusion la. METE /api/state/mcast/update/ {“mode”:”emetteur”, “adrès”: , "pò": , "type":"rtp"} oswa {"mode":"sender", "address": , "pò": , "tip":"poly", "gwoup":1}
**Remak**: Si yo itilize kontwòl/ton/kòmanse anvan kòmand sa a, ton an pral jwe lè l sèvi avèk paramèt aktyèl yo sou la. web UI.
N/A 8301 > 5.0
Mete yon valè nan yon paramèt espesifik nan chaj JSON. METE /api/settings paramèt: {valè}
egzanp {“audio.page.vol”: “-3dB”}
N/A 8180(G2)
8186
8190
8190S
8301
8373
> 3.3
 Senp kontwòl entèfas (SCI) kòmandman

Tout kòmandman SCI yo se demann GET epi yo gen paramèt komen "usi" ak "admin" pou otantifikasyon.
Example:
JWENN http:// /sci/controls/door/unlock?usr=admin&pwd=algo&doorid=local

 Deskripsyon  URI Lòt Chaj Paramèt Pwodwi yo  FW
Debloke pòt la.
"lokal" kontwole relè lokal "netdc1" kontwole kontwolè pòt rezo aleka (8063)
/sci/kontwole/fè oswa/debloke pòt: {lokal, netdc1}
* Si ou vle
8039
8028(G2)
8201
8063
> 3.3
Fèmen pòt la. /sci/kontwole/fè oswa/fèmen pòt: {lokal, netdc1}
* Si ou vle
8039
8028(G2)
8201
8063
> 3.3
Jwe yon ton yon fwa oswa bouk li.  /sci/controls/to ne/kòmanse chemen: {ton} sa vle di. chime.wav
bouk: {vre, fo} oswa {0, 1}
Tout  > 3.3
Sispann ton an. /sci/controls/to ne/sispann  N/A  Tout  > 3.3
Aktive strobe a ak koulè vle ak paramèt modèl. /sci/controls/strobe/start modèl: {0 – 15} koulè 1: {ble, wouj, jòn, vèt}
koulè 2: {ble, wouj, jòn, vèt}
ledlvl: {1 – 255} holdover: {vre, fo}
8128(G2)
8138
8190S
> 3.3
 Sispann strobe a.  /sci/controls/strobe/stop  N/A 8128(G2)
8138
8190S
 > 3.3

Dokiman / Resous

ALGO RESTful API [pdfGid Itilizatè
AL061-GU-GF000API-001-R0, AL061-GU-CP00TEAM-001-R0, RESTful API, RESTful, API
ALGO RESTful API [pdfGid Itilizatè
AL061-GU-CP000API-230717, RESTful API, RESTful, API

Referans

Kite yon kòmantè

Adrès imel ou p ap pibliye. Jaden obligatwa yo make *