ALGO RESTful API
Informasi Produk: RESTful API Guide
API Algo RESTful ngidini pangguna ngakses, ngapusi, lan micu tumindak ing Algo IP Endpoints ing jaringan liwat panjalukan HTTP/HTTPS. Dokumen iki nyedhiyakake set operasi stateless sing seragam lan wis ditemtokake sing bisa digunakake kanggo sesambungan karo piranti Algo. API ndhukung panjalukan HTTP/HTTPS GET, POST, lan PUT kanthi muatan JSON.
Authentication
Ana telung jinis otentikasi sing kasedhiya karo Algo RESTful API:
- Otentikasi standar (diaktifake kanthi gawan)
- Otentikasi dhasar (opsional)
- Ora ana cara otentikasi (ora dianjurake; mung kanggo tujuan tes)
Pandhuan Panggunaan Produk: RESTful API
Prasyarat
Sadurunge ngaktifake RESTful API, priksa manawa piranti duwe sambungan internet kanggo nggayuh server NTP sing wis dikonfigurasi. Yen ora ana sambungan internet, atur server NTP lokal lan ketik alamat IP.
Ngaktifake RESTful API
- Mlebu menyang piranti web antarmuka lan navigasi menyang tab Admin Setelan Lanjut.
- Gulung mudhun menyang bagean Dhukungan API lan aktifake API RESTful.
- Setel sandhi sing dikarepake (sandhi standar: algo). Elinga yen otentikasi standar diaktifake kanthi gawan.
Ngaktifake Otentikasi Dasar (Opsional)
- Ing web antarmuka, navigasi menyang tab System Maintenance lan download konfigurasi file.
- Bukak konfigurasi file karo editor teks lan tambahake baris ing ngisor iki: api.auth.basic = 1
- Simpen lan upload konfigurasi sing diowahi file bali menyang piranti nggunakake Konfigurasi Mulihake File fitur ing tab System Maintenance.
Ngaktifake Metode Ora Otentikasi (Opsional)
Kanggo ngaktifake metode tanpa otentikasi, kosongake kolom Sandi API RESTful. Cara iki ora dianjurake lan mung kudu digunakake kanggo tujuan testing amarga ora menehi keamanan.
Ngaktifake Antarmuka Kontrol Sederhana (Opsional)
- Ing web antarmuka, navigasi menyang tab System Maintenance lan download konfigurasi file.
- Bukak konfigurasi file nggunakake editor teks lan nambah rong baris. Ganti sandi kanggo kepinginan.
- Admin.web.sci = 1
- Sci.admin.pwd =
- Simpen lan upload konfigurasi sing diowahi file bali menyang piranti nggunakake Konfigurasi Mulihake File fitur ing tab System Maintenance.
Pengesahan Samplan Kode
Mangga email support@algosolutions.com yen sampeyan pengin otentikasi standar utawa dhasar sampkode.
Kanggo dhukungan tambahan, nelpon 604-454-3792 utawa email support@algosolutions.com
Kabar Informasi
Cathetan
Cathetan nuduhake nganyari migunani, informasi, lan instruksi sing kudu ditindakake
Penafian
Informasi sing ana ing dokumen iki dipercaya akurat ing kabeh babagan nanging ora dijamin dening Algo. Informasi kasebut bisa diganti tanpa kabar lan ora bisa dianggep minangka prasetya dening Algo utawa afiliasi utawa anak perusahaan. Algo lan afiliasi lan anak perusahaan ora tanggung jawab kanggo kesalahan utawa kekurangan ing dokumen iki. Revisi dokumen iki utawa edisi anyar bisa uga ditanggepi kanggo nggabungake owah-owahan kasebut. Algo ora tanggung jawab kanggo kerusakan utawa pratelan amarga nggunakake manual iki utawa produk, piranti lunak, perangkat kukuh, lan/utawa hardware. Ora ana bagean saka dokumen iki sing bisa diprodhuksi utawa ditularake kanthi cara apa wae - elektronik utawa mekanik - kanggo maksud apa wae tanpa idin tinulis saka Algo.
Kanggo informasi tambahan utawa pitulungan teknis ing Amerika Utara, hubungi tim dhukungan Algo:
Dhukungan Teknis Algo
1-604-454-3792
support@algosolutions.com
©2022 Algo minangka merek dagang kadhaptar saka Algo Communication Products Ltd.
Kabeh hak dilindhungi undhang-undhang. Kabeh merek dagang liyane minangka properti saka sing nduweni. Kabeh spek bisa diganti tanpa kabar.
UMUM
Pambuka
Dokumen iki nerangake carane Algo RESTful API bisa digunakake kanggo ngakses, ngapusi, lan micu tumindak ing Algo IP Endpoints ing jaringan liwat panjalukan HTTP/HTTPS, uga sawetara cara otentikasi sing beda-beda kanthi tingkat keamanan sing beda-beda. Sistem panjaluk bisa sesambungan karo piranti Algo liwat sakumpulan operasi stateless sing seragam lan wis ditemtokake ing dokumen iki. Panjaluk digawe menyang URI sumber kanthi muatan JSON lan entuk respon JSON. HTTP/HTTPS GET, POST, lan PUT request digawe kanggo sumber URI bebarengan karo payload JSON (ndeleng bagean printah kanggo dhaptar payloads).
Authentication
Ana telung jinis otentikasi:
- Standar (dianjurake)
- dhasar
- Ora ana (ora dianjurake)
Otentikasi standar nggunakake Kode Otentikasi Pesen adhedhasar Hash (HMAC) kanthi ringkesan sing dienkode SHA-256. Otentikasi dhasar nggunakake enkoding Base64 lan mung kudu digunakake liwat HTTPS. Ora ana otentikasi mung kudu digunakake kanthi ati-ati amarga ora menehi otentikasi. Waca bagean Authentication Requirements kanggo rincian liyane.
SETUP LAN KONFIGURASI
Prasyarat
- Dokumen iki nganggep titik pungkasan Algo mlaku versi firmware 3.3 utawa luwih dhuwur.
- Bentenipun wektu antarane panjaluk lan piranti Algo kudu kurang saka 30 detik kanggo nggunakake otentikasi standar.
- Priksa manawa NTP (Network Time Protocol) digunakake. Alamat server NTP khusus bisa dikonfigurasi ing Setelan Lanjut → tab Wektu.
Cathetan
Server NTP sing wis dikonfigurasi wis dadi host umum, mula sambungan internet dibutuhake kanggo nggayuh. Yen ora ana sambungan internet, atur server NTP lokal lan ketik alamat IP.
- Priksa manawa wektu sistem piranti Algo disetel menyang zona wektu sing bener. Iki bisa ditindakake kanthi navigasi menyang Setelan Lanjut → tab Wektu.
Ngaktifake RESTful API
- Mlebu menyang web antarmuka lan navigasi menyang Setelan Lanjut → tab Admin.
- Gulung mudhun menyang bagean Dhukungan API, aktifake RESTful API lan setel Sandi sing dikarepake (sandi default: algo)
Cathetan
Otentikasi standar diaktifake kanthi gawan.
Aktifake Otentikasi Dasar (Opsional)
- Ing web antarmuka, navigasi menyang tab System → Maintenance lan download konfigurasi file.
- Bukak konfigurasi file karo editor teks lan tambahake baris ing ngisor iki: api.auth.basic = 1
- Simpen lan upload konfigurasi sing diowahi file bali menyang piranti nggunakake Konfigurasi Mulihake File fitur ing tab System → Maintenance.
Ora Ana Metode Otentikasi (Opsional)
Kanggo ngaktifake metode tanpa otentikasi, kosongake kolom Sandi API RESTful. Cara iki ora dianjurake lan mung kudu digunakake kanggo tujuan testing amarga ora menehi keamanan.
Ngaktifake Antarmuka Kontrol Sederhana (Opsional)
- Ing web antarmuka, navigasi menyang tab System → Maintenance lan download konfigurasi file.
- Bukak konfigurasi file nggunakake editor teks lan nambah rong baris. Ngganti kanggo sandi kepinginan. Admin.web.sci = 1
Sci.admin.pwd = - Simpen lan upload konfigurasi sing diowahi file bali menyang piranti nggunakake Konfigurasi Mulihake File fitur ing tab System → Maintenance.
SYARAT AUTHENTICATION
Mangga email support@algosolutions.com yen sampeyan pengin otentikasi standar utawa dhasar sampkode.
Panjaluk Otentikasi Standar kanthi Payload JSON
Header sing dibutuhake ing panjalukan HTTP/HTTPS
> Tipe Konten: "aplikasi/json"
> Isi-MD5: [content_md5] Example
Content-MD5: 74362cc86588b2b3c5a4491baf80375b
Wewenang: admin hmac:[nonce]:[hmac_output]
Header wewenang kalebu:
- String 'hmac admin' diikuti titik dua ':'.
- Nonce - Nilai acak utawa ora bola-bali, diikuti titik titik ':'.
- Hmac_output - digawe dening Sandi API RESTful (kunci rahasia) sing dikonfigurasi ing piranti lan input HMAC, kaya ing ngisor iki:
[metode_request]:[request_uri]:[content_md5]:[content_type]:[timestamp]: [ora]
Input HMAC example: (nggunakake 'algo' minangka kunci rahasia)
POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936 Generate HMAC with password and HMAC input string as digest nggunakake SHA-256:
HMAC output example: 2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330
Tanggal: dina, tanggal sasi, taun jam: min: detik GMT
Example
Tanggal: Kamis, 22 September 2022 02:33:07 GMT
Otentikasi standar karo payload example:
Panjaluk Otentikasi Standar Tanpa Payload JSON
Identik karo 3.1 kanthi header sing gegandhengan karo konten / input hmac diilangi.
Input HMAC: [request_method]:[request_uri]:[timestamp]:[once] input HMAC example: (nggunakake 'algo' minangka kunci rahasia)
GET:/api/settings/audio.page.vol:1601312252:49936
Gawe HMAC nganggo sandhi lan string input HMAC nggunakake SHA-256:
HMAC output example: c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8
Otentikasi standar tanpa muatan example:
Panjaluk Otentikasi Dasar
Cara otentikasi iki kudu digunakake kanthi ati-ati amarga kurang aman tinimbang metode standar.
Wewenang: Dasar [base64]
Example:
Wewenang: Dasar YWRtaW46YWxnbwo=
Otentikasi dhasar example:
Prentah
Prentah API RESTful
Ing ngisor iki dhaptar kabeh printah API sing didhukung.
Cathetan
A request PUT ngganti utawa nggawe sumber permanen sing urip urip maneh, nalika request POST mung ngontrol piranti kanggo sesi saiki.
Katrangan | Metode | URI | Muatan Paramèter | wangsul Example | produk | FW |
Nompo nilai saka parameter tartamtu. | GET | /api/settings/[key-name] Ex./api/settings/audio.page.vol | N/A | {"audio.page.vol": "-18dB"} | Kabeh | > 3.3 |
Mbalikake tingkat gangguan lingkungan sing diukur ing desibel. Kompensasi Noise Ambient kudu diaktifake ing Setelan Dasar -> tab Fitur. | GET | /api/info/audio.noise.level | N/A | {"audio.noise.level": 72} | Speaker Tampilan Speakers | > 3.3 |
Extract status terminal input relay. | GET | /api/info/input.relay.status | N/A |
{“input.relay.status”: “idle”} utawa {“input.relay.status”: “active”} |
Kabeh produk karo input relay, kajaba 8063. Waca ngisor. | > 4.1 |
Ekstrak status terminal Input 1 utawa Input 2. | GET | /api/info/input.relay1.status utawa /api/info/input.relay2.status | N/A | {“input.relay1.status”: “idle”} utawa {“input.relay1.status”: “active”} | 8063 | > 4.1 |
Njupuk dhaptar nada files saiki diinstal. | GET | /api/info/tonelist |
N/A |
{"tonelist":["bell-na.wav","bell uk.wav","buzzer.wav",...]} | Kabeh | > 5.0 |
Njupuk informasi piranti sing ditampilake ing kaca Status. | GET | /api/info/status | N/A | Dhaptar lengkap informasi saka tab Status. | Kabeh | > 5.4 |
Njupuk informasi produk sing ditampilake ing kaca Babagan. | GET | /api/info/bab | N/A | Kabeh informasi sing ana ing tab Babagan. | Kabeh | > 5.4 |
Aktifake strobo kanthi paramèter warna lan pola sing dikarepake. | POST | /api/controls/strobe/start | pola: {0 – 15} color1: {biru, abang, amber, ijo} werna2: {biru, abang, amber, ijo} ledlvl: {1 – 255} nahan: {bener, salah} |
N/A | 8128 (G2) 8138 8190S |
> 3.3 |
Mungkasi strobo. | POST | /api/controls/strobe/stop | N/A | N/A | 8128 (G2) 8138 8190S |
> 3.3 |
Puter nada sapisan utawa daur ulang. | POST | /api/controls/tone/start | path: {nada} ie. lonceng.wav daur ulang: {bener, salah} utawa {0, 1} contone {"path":"chime.wav", "loop":true} |
N/A | Speaker 8301 8373 8028 (G2) 8201 8039 |
> 3.3 |
Mungkasi nada. | POST | /api/controls/tone/stop | N/A | N/A | Speaker 8301 8373 8028 (G2) 8201 8039 |
> 3.3 |
Telpon ekstensi telpon kanthi pesen sing wis direkam. | POST | /api/controls/call/start | {"ekstensi":"2099", “nada”:”gong.wav”, “interval”:”0″, “maxdur”:”10″} |
N/A | Speaker 8301 8410 8420 |
> 3.3 |
Mungkasi telpon. | POST | /api/controls/call/stop | N/A | N/A | Speaker 8301 8410 8420 |
> 3.3 |
Miwiti telpon kaca siji arah. Piranti bakal nampa stream audio saka extension target. | POST | /api/controls/call/page | {"ekstensi":" ”} | N/A | Speaker 8410 8420 |
> 5.3.4 |
Urip maneh titik pungkasan target. | POST | /api/controls/reboot | N/A | N/A | Kabeh | > 3.3 |
Mbukak kunci lawang. "lokal" ngontrol relay lokal "netdc1" ngontrol pengontrol lawang jaringan remot (8063) | POST | /api/controls/door/unlock | doorid: {lokal, netdc1} * Pilihan |
N/A | 8039 8028 (G2) 8201 8063 |
> 3.3 |
Ngunci lawang. | POST | /api/controls/door/lock | doorid: {lokal, netdc1} * Pilihan |
N/A | 8039 8028 (G2) 8201 8063 |
> 3.3 |
Aktifake relay aux metu 24v. | POST | api/controls/24v/enable | N/A | N/A | 8063 | > 5.0 |
Pateni relay aux out 24v. | POST | api/controls/24v/disable | N/A | N/A | 8063 | > 5.0 |
Aktifake relay output. | POST | /api/controls/relay/enable | N/A | N/A | 8063 | > 5.0 |
Pateni relay output. | POST | /api/controls/relay/disable | N/A | N/A | 8063 | > 5.0 |
Priksa server firmware Algo kanggo versi firmware paling anyar. | POST | /api/controls/upgrade/check | N/A | {"versi": "dianyari"} utawa {"versi": " ”} |
Kabeh | > 4.1 |
Priksa server perangkat kukuh Algo kanggo versi perangkat kukuh paling anyar lan upgrade menyang versi kasebut. | POST | /api/controls/upgrade/start | N/A | {"status": "dianyari"} utawa {"status": "nganyarke ”, “url”: url>} utawa {"status": " ”} |
Kabeh | > 4.1 |
Tampilake gambar utawa pola ing layar. | POST | /api/controls/screen/start | Delengen ngisor | N/A | 8410 8420 |
> 5.3.4 |
Mungkasi pola layar lan bali menyang layar gawan. | POST | /api/controls/screen/stop | N/A | N/A | 8410 8420 |
> 5.3.4 |
Wiwiti maneh aplikasi utama. | POST | /api/controls/reload | N/A | N/A | Kabeh | > 5.3.4 |
Mulai ngrungokake stream audio langsung. Ngatur nomer port sing dikirim stream. | POST | /api/controls/rx/start | {"port": } | N/A | Kabeh | > 5.3.4 |
Mungkasi ngrungokake stream audio langsung. | POST | /api/controls/rx/stop | N/A | N/A | Kabeh | > 5.3.4 |
Setel mode multicast. | PUT | /api/state/mcast/update/ | {"mode":"pengirim", "alamat": , "port": , “jinis”:”rtp”} utawa {“mode”:”pengirim”, “alamat”: , "port": , "jinis":"poli", "grup":1} **Cathetan**: Yen kontrol/nada/wiwitan digunakake sadurunge printah iki, nada bakal diputer nggunakake setelan saiki ing web UI. |
N/A | 8301 | > 5.0 |
Lebokake nilai menyang parameter tartamtu saka payload JSON. | PUT | /api/setting | parameter: {nilai} contone {"audio.page.vol": "-3dB"} |
N/A | 8180 (G2) 8186 8190 8190S 8301 8373 |
> 3.3 |
Prasaja Control Interface (SCI) printah
Kabeh printah SCI minangka panjaluk GET lan duwe parameter umum "usi" lan "admin" kanggo otentikasi.
Example:
Entuk http:// /sci/controls/door/unlock?usr=admin&pwd=algo&doorid=local
Katrangan | URI | Tambahan Muatan Paramèter | Produk | FW |
Mbukak kunci lawang. "lokal" ngontrol relay lokal "netdc1" ngontrol pengontrol lawang jaringan remot (8063) |
/ sci / kontrol / nindakake utawa / mbukak kunci | doorid: {lokal, netdc1} * Pilihan |
8039 8028 (G2) 8201 8063 |
> 3.3 |
Ngunci lawang. | / sci / kontrol / nindakake utawa / kunci | doorid: {lokal, netdc1} * Pilihan |
8039 8028 (G2) 8201 8063 |
> 3.3 |
Puter nada sapisan utawa daur ulang. | / sci / kontrol / kanggo ne / miwiti | path: {nada} ie. lonceng.wav daur ulang: {bener, salah} utawa {0, 1} |
Kabeh | > 3.3 |
Mungkasi nada. | / sci / kontrol / kanggo ne / mandeg | N/A | Kabeh | > 3.3 |
Aktifake strobo kanthi paramèter warna lan pola sing dikarepake. | / sci / kontrol / strobo / wiwitan | pola: {0 – 15} werna1: {biru, abang, amber, ijo} werna 2: {biru, abang, amber, ijo} ledlvl: {1 – 255} ditahan: {bener, salah} |
8128 (G2) 8138 8190S |
> 3.3 |
Mungkasi strobo. | /sci/kontrol/strobo/mandeg | N/A | 8128 (G2) 8138 8190S |
> 3.3 |
Dokumen / Sumber Daya
![]() |
ALGO RESTful API [pdf] Pandhuan pangguna AL061-GU-GF000API-001-R0, AL061-GU-CP00TEAM-001-R0, RESTful API, RESTful, API |
![]() |
ALGO RESTful API [pdf] Pandhuan pangguna AL061-GU-CP000API-230717, RESTful API, RESTful, API |