ALGO RESTful API
Taarifa ya Bidhaa: Mwongozo wa API wa RESTful
API ya Algo RESTful huruhusu watumiaji kufikia, kudhibiti na kuanzisha vitendo kwenye Algo IP Endpoints kwenye mtandao wao kupitia maombi ya HTTP/HTTPS. Hati hii hutoa seti sare na iliyofafanuliwa awali ya shughuli zisizo na uraia ambazo zinaweza kutumika kuingiliana na vifaa vya Algo. API inaauni maombi ya HTTP/HTTPS GET, POST, na PUT yenye upakiaji wa JSON.
Uthibitishaji
Kuna aina tatu za uthibitishaji unaopatikana na API ya Algo RESTful:
- Uthibitishaji wa kawaida (umewezeshwa na chaguo-msingi)
- Uthibitishaji wa kimsingi (si lazima)
- Hakuna njia ya uthibitishaji (haipendekezwi; kwa madhumuni ya majaribio tu)
Maagizo ya Matumizi ya Bidhaa: API RESTful
Masharti
Kabla ya kuwezesha API ya RESTful, hakikisha kuwa kifaa kina muunganisho wa intaneti ili kufikia seva za NTP zilizosanidiwa awali. Ikiwa hakuna muunganisho wa intaneti unaopatikana, sanidi seva ya ndani ya NTP na uweke anwani yake ya IP.
Inawasha API ya RESTful
- Ingia kwenye kifaa web interface na uende kwenye kichupo cha Msimamizi wa Mipangilio ya Juu.
- Sogeza chini hadi sehemu ya Usaidizi wa API na uwashe API ya RESTful.
- Weka nenosiri unalotaka (nenosiri chaguo-msingi: algo). Kumbuka kuwa uthibitishaji wa kawaida umewezeshwa na chaguo-msingi.
Kuwasha Uthibitishaji Msingi (Si lazima)
- Katika web interface, nenda kwenye kichupo cha Matengenezo ya Mfumo na upakue usanidi file.
- Fungua usanidi file na kihariri chochote cha maandishi na ongeza safu ifuatayo: api.auth.basic = 1
- Hifadhi na upakie usanidi uliobadilishwa file kurudi kwenye kifaa kwa kutumia Usanidi wa Kurejesha File kipengele kwenye kichupo cha Matengenezo ya Mfumo.
Kuwasha Hakuna Mbinu ya Uthibitishaji (Si lazima)
Ili kuwezesha mbinu ya hakuna uthibitishaji, acha uga wa Nenosiri la API RESTful tupu. Njia hii haipendekezwi na inapaswa kutumika kwa madhumuni ya majaribio pekee kwani haitoi usalama.
Kuwasha Kiolesura Rahisi cha Kudhibiti (Si lazima)
- Juu ya web interface, nenda kwenye kichupo cha Matengenezo ya Mfumo na upakue usanidi file.
- Fungua usanidi file kwa kutumia mhariri wa maandishi na kuongeza mistari miwili. Badilisha kwa nywila unayotaka.
- Msimamizi.web.sci = 1
- Sci.admin.pwd =
- Hifadhi na upakie usanidi uliobadilishwa file kurudi kwenye kifaa kwa kutumia Usanidi wa Kurejesha File kipengele kwenye kichupo cha Matengenezo ya Mfumo.
Uthibitishaji SampKanuni
Tafadhali tuma barua pepe msaada@algosolutions.com ikiwa ungependa uthibitishaji wa kawaida au msingi sampnambari.
Kwa usaidizi wa ziada, piga simu 604-454-3792 au barua pepe msaada@algosolutions.com
Taarifa za Taarifa
Kumbuka
Kidokezo kinaonyesha masasisho muhimu, habari, na maagizo ambayo yanapaswa kufuatwa
Kanusho
Habari iliyomo katika waraka huu inaaminika kuwa sahihi katika mambo yote lakini haijathibitishwa na Algo. Taarifa inaweza kubadilika bila notisi na haipaswi kufasiriwa kwa njia yoyote kama ahadi ya Algo au washirika wake au kampuni tanzu. Algo na washirika wake na matawi yake hawawajibiki kwa hitilafu yoyote au kuachwa katika hati hii. Marekebisho ya hati hii au matoleo yake mapya yanaweza kutolewa ili kujumuisha mabadiliko hayo. Algo haichukui dhima ya uharibifu au madai yanayotokana na matumizi yoyote ya mwongozo huu au bidhaa kama hizo, programu, programu dhibiti, na/au maunzi. Hakuna sehemu ya hati hii inayoweza kunakilishwa au kutumwa kwa njia yoyote au kwa njia yoyote - kielektroniki au kiufundi - kwa madhumuni yoyote bila idhini ya maandishi kutoka kwa Algo.
Kwa maelezo zaidi au usaidizi wa kiufundi katika Amerika Kaskazini, tafadhali wasiliana na timu ya usaidizi ya Algo:
Msaada wa Kiufundi wa Algo
1-604-454-3792
msaada@algosolutions.com
©2022 Algo ni chapa ya biashara iliyosajiliwa ya Algo Communication Products Ltd.
Haki zote zimehifadhiwa. Alama nyingine zote za biashara ni mali ya wamiliki husika. Vipimo vyote vinaweza kubadilika bila taarifa.
JUMLA
Utangulizi
Hati hii inaeleza jinsi API ya Algo RESTful inaweza kutumika kufikia, kuendesha, na kuanzisha vitendo kwenye Mihimili ya Algo IP kwenye mtandao wako kupitia maombi ya HTTP/HTTPS, pamoja na mbinu kadhaa tofauti za uthibitishaji zenye viwango tofauti vya usalama. Mifumo inayoomba inaweza kuingiliana na vifaa vya Algo kupitia seti sare na iliyofafanuliwa awali ya utendakazi usio na uraia iliyofafanuliwa katika hati hii. Maombi yanatumwa kwa URI ya rasilimali na upakiaji wa JSON na kupata jibu la JSON. Maombi ya HTTP/HTTPS GET, POST, na PUT hufanywa kwa rasilimali ya URI pamoja na upakiaji wa JSON (angalia sehemu ya amri kwa orodha ya mizigo).
Uthibitishaji
Kuna aina tatu za uthibitishaji:
- Kawaida (inapendekezwa)
- Msingi
- Hakuna (haipendekezwi)
Uthibitishaji wa Kawaida hutumia Msimbo wa Uthibitishaji wa Ujumbe wa Hash (HMAC) wenye muhtasari uliosimbwa wa SHA-256. Uthibitishaji wa kimsingi hutumia usimbaji wa Base64 na unapaswa kutumiwa kupitia HTTPS pekee. Hakuna uthibitishaji unapaswa kutumiwa kwa uangalifu mkubwa tu kwani hautoi uthibitishaji. Tazama sehemu ya Mahitaji ya Uthibitishaji kwa maelezo zaidi.
WENGI NA UWEKEZAJI
Masharti
- Hati hii inachukulia kwamba sehemu ya mwisho ya Algo inaendesha toleo la programu 3.3 au la juu zaidi.
- Tofauti ya muda kati ya mwombaji na vifaa vya Algo inapaswa kuwa chini ya sekunde 30 ili kutumia uthibitishaji wa kawaida.
- Hakikisha NTP (Itifaki ya Muda wa Mtandao) inatumika. Anwani za seva maalum za NTP zinaweza kusanidiwa katika Mipangilio ya Kina → kichupo cha Wakati.
Kumbuka
Seva za NTP zilizosanidiwa awali zimepangishwa hadharani, kwa hivyo muunganisho wa intaneti unahitajika ili kuifikia. Ikiwa hakuna muunganisho wa intaneti unaopatikana, sanidi seva ya ndani ya NTP na uweke anwani yake ya IP.
- Hakikisha kuwa saa ya mfumo wa kifaa cha Algo imerekebishwa hadi eneo sahihi la saa. Hii inaweza kufanywa kwa kwenda kwenye kichupo cha Mipangilio ya Juu → Saa.
Inawasha API ya RESTful
- Ingia kwenye web interface na uende kwa Mipangilio ya Juu → kichupo cha Msimamizi.
- Sogeza chini hadi sehemu ya Usaidizi wa API, washa API ya RESTful na uweke Nenosiri unavyotaka (nenosiri msingi: algo)
Kumbuka
Uthibitishaji wa kawaida umewezeshwa kwa chaguo-msingi.
Washa Uthibitishaji Msingi (Si lazima)
- Katika web interface, nenda kwenye kichupo cha Mfumo → Matengenezo na upakue usanidi file.
- Fungua usanidi file na kihariri chochote cha maandishi na ongeza safu ifuatayo: api.auth.basic = 1
- Hifadhi na upakie usanidi uliobadilishwa file kurudi kwenye kifaa kwa kutumia Usanidi wa Kurejesha File kipengele kwenye kichupo cha Mfumo → Matengenezo.
Hakuna Mbinu ya Uthibitishaji (Si lazima)
Ili kuwezesha mbinu ya hakuna uthibitishaji, acha uga wa Nenosiri la API RESTful tupu. Njia hii haipendekezwi na inapaswa kutumika kwa madhumuni ya majaribio pekee kwani haitoi usalama.
Kuwasha Kiolesura Rahisi cha Kudhibiti (Si lazima)
- Juu ya web interface, nenda kwenye kichupo cha Mfumo → Matengenezo na upakue usanidi file.
- Fungua usanidi file kwa kutumia mhariri wa maandishi na kuongeza mistari miwili. Badilisha kwa nywila unayotaka. Msimamizi.web.sci = 1
Sci.admin.pwd = - Hifadhi na upakie usanidi uliobadilishwa file kurudi kwenye kifaa kwa kutumia Usanidi wa Kurejesha File kipengele kwenye kichupo cha Mfumo → Matengenezo.
MAHITAJI YA UTHIBITISHO
Tafadhali tuma barua pepe msaada@algosolutions.com ikiwa ungependa uthibitishaji wa kawaida au msingi sampnambari.
Ombi la Uthibitishaji wa Kawaida na Upakiaji wa JSON
Vijajuu vinavyohitajika katika ombi la HTTP/HTTPS
> Aina ya Yaliyomo: "programu/json"
> Content-MD5: [content_md5] Example
Content-MD5: 74362cc86588b2b3c5a4491baf80375b
Uidhinishaji: msimamizi wa hmac:[nonce]:[hmac_output]
Vichwa vya uidhinishaji vinajumuisha:
- Mfuatano wa 'hmac admin' ikifuatiwa na koloni ':'.
- Nonce – Thamani nasibu au isiyojirudia, ikifuatiwa na koloni ':'.
- Hmac_output - imetolewa na Nenosiri la RESTful API (ufunguo wa siri) uliosanidiwa kwenye kifaa chako na ingizo la HMAC, kama ilivyo hapa chini:
[request_method]:[request_uri]:[content_md5]:[content_type]:[timestamp]:[nonce]
Ingizo la HMAC example: (kwa kutumia 'algo' kama ufunguo wa siri)
POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936 Tengeneza HMAC na nenosiri na kamba ya kuingiza ya HMAC kama muhtasari kwa kutumia SHA-256:
HMAC pato example: 2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330
Tarehe: siku, tarehe mwezi, mwaka hr:min:sec GMT
Example
Tarehe: Alhamisi, 22 Septemba, 2022 02:33:07 GMT
Uthibitishaji wa kawaida na mzigo wa malipo wa zamaniample:
Ombi la Kawaida la Uthibitishaji Bila Upakiaji wa JSON
Sawa na 3.1 na vichwa vinavyohusiana na maudhui/ingizo lahmac limeachwa.
Ingizo la HMAC: [request_method]:[request_uri]:[timestamp]:[nonce] HMAC ingizo example: (kwa kutumia 'algo' kama ufunguo wa siri)
PATA:/api/settings/audio.page.vol:1601312252:49936
Tengeneza HMAC na nenosiri na kamba ya kuingiza ya HMAC kwa kutumia SHA-256:
HMAC pato example: c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8
Uthibitishaji wa kawaida bila mzigo wa malipo example:
Ombi la Msingi la Uthibitishaji
Njia hii ya uthibitishaji inapaswa kutumika kwa uangalifu kwani ni salama kidogo kuliko njia ya kawaida.
Uidhinishaji: Msingi [base64]
Example:
Uidhinishaji: Msingi YWRtaW46YWxnbwo=
Uthibitishaji wa msingi example:
AMRI
Amri za API zenye RESTful
Ifuatayo ni orodha ya amri zote za API zinazotumika.
Kumbuka
Ombi la PUT hubadilika au kuunda rasilimali ya kudumu ambayo itasalia kuwashwa tena, huku ombi la POST linadhibiti kifaa kwa kipindi cha sasa pekee.
Maelezo | Mbinu | URI | Upakiaji Vigezo | Rudi Example | Bidhaa | FW |
Rejesha thamani ya kigezo maalum. | PATA | /api/settings/[jina-msingi] Ex./api/settings/audio.page.vol | N/A | {“audio.page.vol”: “-18dB”} | Wote | > 3.3 |
Rudisha kiwango cha kelele iliyoko kilichopimwa kwa desibeli. Fidia ya Kelele Iliyotulia lazima iwashwe katika Mipangilio Msingi -> kichupo cha Vipengele. | PATA | /api/info/audio.noise.level | N/A | {“audio.noise.level”: 72} | Spika Zinaonyesha Spika | > 3.3 |
Toa hali ya terminal ya uingizaji wa relay. | PATA | /api/info/input.relay.status | N/A |
{“input.relay.status”: “idle”} au {“input.relay.status”: “active”} |
Bidhaa zote zilizo na pembejeo ya relay, isipokuwa 8063. Tazama hapa chini. | > 4.1 |
Chambua hali ya Ingizo 1 au vituo 2 vya Ingizo. | PATA | /api/info/input.relay1.status au /api/info/input.relay2.status | N/A | {“input.relay1.status”: “idle”} au {“input.relay1.status”: “active”} | 8063 | > 4.1 |
Rejesha orodha ya sauti fileimesakinishwa kwa sasa. | PATA | /api/info/tonelist |
N/A |
{“tonelist”:[“bell-na.wav”,”kengele uk.wav”,”buzzer.wav”,…]} | Wote | > 5.0 |
Rejesha maelezo ya kifaa ambayo yanaonyeshwa kwenye ukurasa wa Hali. | PATA | /api/info/status | N/A | Orodha kamili ya habari kutoka kwa kichupo cha Hali. | Wote | > 5.4 |
Rejesha maelezo ya bidhaa ambayo yanaonyeshwa kwenye ukurasa wa Kuhusu. | PATA | /api/info/kuhusu | N/A | Taarifa zote zilizopo kwenye kichupo cha Kuhusu. | Wote | > 5.4 |
Amilisha strobe na rangi inayotaka na vigezo vya muundo. | POST | /api/controls/strobe/start | muundo: {0 - 15} color1: {bluu, nyekundu, kahawia, kijani} rangi2: {bluu, nyekundu, kaharabu, kijani kibichi} ledlvl: {1 – 255} kushikilia: {kweli, uongo} |
N/A | 8128(G2) 8138 8190S |
> 3.3 |
Acha strobe. | POST | /api/controls/strobe/stop | N/A | N/A | 8128(G2) 8138 8190S |
> 3.3 |
Cheza sauti mara moja au izungushe. | POST | /api/controls/tone/start | njia: {tone} yaani. kengele.wav kitanzi: {kweli, uongo} au {0, 1} kwa mfano {“njia”:”chime.wav”, “kitanzi”:true} |
N/A | Wazungumzaji 8301 8373 8028(G2) 8201 8039 |
> 3.3 |
Acha sauti. | POST | /api/controls/tone/stop | N/A | N/A | Wazungumzaji 8301 8373 8028(G2) 8201 8039 |
> 3.3 |
Piga simu kwa kiendelezi cha simu na ujumbe uliorekodiwa mapema. | POST | /api/controls/call/start | {“kiendelezi”:”2099″, “tone”:”gong.wav”, “muda”:”0″, “maxdur”:”10″} |
N/A | Wazungumzaji 8301 8410 8420 |
> 3.3 |
Maliza simu. | POST | /api/controls/call/stop | N/A | N/A | Wazungumzaji 8301 8410 8420 |
> 3.3 |
Anzisha simu ya ukurasa mmoja. Kifaa kitapokea mtiririko wa sauti kutoka kwa kiendelezi kinacholengwa. | POST | /api/controls/call/page | {"kiendelezi":" ”} | N/A | Wazungumzaji 8410 8420 |
> 5.3.4 |
Washa upya ncha inayolengwa. | POST | /api/controls/reboot | N/A | N/A | Wote | > 3.3 |
Fungua mlango. "local" hudhibiti relay ya ndani "netdc1" hudhibiti kidhibiti cha mlango wa mtandao wa mbali (8063) | POST | /api/controls/door/unlock | mlango: {local, netdc1} * Hiari |
N/A | 8039 8028(G2) 8201 8063 |
> 3.3 |
Funga mlango. | POST | /api/controls/door/lock | mlango: {local, netdc1} * Hiari |
N/A | 8039 8028(G2) 8201 8063 |
> 3.3 |
Washa relay ya 24v aux out. | POST | api/controls/24v/wezesha | N/A | N/A | 8063 | > 5.0 |
Zima relay ya 24v aux out. | POST | api/controls/24v/lemaza | N/A | N/A | 8063 | > 5.0 |
Washa upeanaji wa pato. | POST | /api/controls/relay/wezesha | N/A | N/A | 8063 | > 5.0 |
Lemaza upeanaji wa pato. | POST | /api/controls/relay/lemaza | N/A | N/A | 8063 | > 5.0 |
Angalia seva ya programu dhibiti ya Algo kwa toleo la hivi punde la programu dhibiti. | POST | /api/controls/upgrade/check | N/A | {“version”: “updated”} au {"toleo": " ”} |
Wote | > 4.1 |
Angalia seva ya programu dhibiti ya Algo kwa toleo jipya zaidi la programu dhibiti na upate toleo hilo. | POST | /api/controls/upgrade/start | N/A | {“status”: “updated”} au {"status": "kuboresha ","url”: url>} au {"hali": " ”} |
Wote | > 4.1 |
Onyesha picha au mchoro kwenye skrini. | POST | /api/controls/screen/start | Tazama chini | N/A | 8410 8420 |
> 5.3.4 |
Acha mchoro wa skrini na urudi kwenye skrini chaguo-msingi. | POST | /api/controls/screen/stop | N/A | N/A | 8410 8420 |
> 5.3.4 |
Anzisha tena programu kuu. | POST | /api/controls/reload | N/A | N/A | Wote | > 5.3.4 |
Anza kusikiliza mtiririko wa sauti wa moja kwa moja. Sanidi nambari ya mlango ambako mtiririko unatumwa. | POST | /api/controls/rx/start | {"bandari": } | N/A | Wote | > 5.3.4 |
Acha kusikiliza mtiririko wa sauti wa moja kwa moja. | POST | /api/controls/rx/stop | N/A | N/A | Wote | > 5.3.4 |
Weka hali ya utangazaji anuwai. | WEKA | /api/state/mcast/sasisha/ | {"mode":"mtumaji", "anwani": , "bandari": , "type":"rtp"} au {"mode":"mtumaji", "anwani": , "bandari": , "aina":"poly", "kikundi":1} **Kumbuka**: Ikiwa vidhibiti/tone/anza vinatumika kabla ya amri hii, toni itacheza kwa kutumia mipangilio ya sasa kwenye web UI. |
N/A | 8301 | > 5.0 |
Weka thamani kwenye kigezo mahususi kutoka kwa upakiaji wa JSON. | WEKA | /api/mipangilio | kigezo: {value} kwa mfano {“audio.page.vol”: “-3dB”} |
N/A | 8180(G2) 8186 8190 8190S 8301 8373 |
> 3.3 |
Amri za Kiolesura Rahisi cha Kudhibiti (SCI).
Amri zote za SCI ni maombi ya GET na zina vigezo vya kawaida "usi" na "admin" kwa uthibitishaji.
Example:
PATA http:// /sci/controls/door/unlock?usr=admin&pwd=algo&doorid=local
Maelezo | URI | Ziada Upakiaji Vigezo | Bidhaa | FW |
Fungua mlango. "local" hudhibiti relay ya ndani "netdc1" hudhibiti kidhibiti cha mlango wa mtandao wa mbali (8063) |
/sci/controls/fanya au/fungua | mlango: {local, netdc1} * Hiari |
8039 8028(G2) 8201 8063 |
> 3.3 |
Funga mlango. | /sci/controls/do or/lock | mlango: {local, netdc1} * Hiari |
8039 8028(G2) 8201 8063 |
> 3.3 |
Cheza sauti mara moja au izungushe. | /sci/controls/to ne/start | njia: {tone} yaani. kengele.wav kitanzi: {kweli, uongo} au {0, 1} |
Wote | > 3.3 |
Acha sauti. | /sci/controls/to ne/stop | N/A | Wote | > 3.3 |
Amilisha strobe na rangi inayotaka na vigezo vya muundo. | /sci/controls/strobe/start | muundo: {0 – 15} rangi1: {bluu, nyekundu, kaharabu, kijani kibichi} rangi2: {bluu, nyekundu, kaharabu, kijani kibichi} ledlvl: {1 - 255} kushikilia: {kweli, uongo} |
8128(G2) 8138 8190S |
> 3.3 |
Acha strobe. | /sci/controls/strobe/stop | N/A | 8128(G2) 8138 8190S |
> 3.3 |
Nyaraka / Rasilimali
![]() |
ALGO RESTful API [pdf] Mwongozo wa Mtumiaji AL061-GU-GF000API-001-R0, AL061-GU-CP00TEAM-001-R0, RESTful API, RESTful, API |
![]() |
ALGO RESTful API [pdf] Mwongozo wa Mtumiaji AL061-GU-CP000API-230717, RESTful API, RESTful, API |