Custom na Integration API
T 778 Custom Integration API
Ang impormasyong nakapaloob sa manwal na ito ay pag-aari ng Lenbrook Industries.
Ito ay inilaan lamang para sa propesyonal na paggamit. Walang pananagutan ang Lenbrook Industries para sa katumpakan ng protocol. Ang protocol ay ibinigay "as-is", kasama ang lahat ng mga pagkakamali at walang anumang uri ng warranty, ipinahayag man o ipinahiwatig.
Patakaran sa Paggamit ng API
Sa pamamagitan ng pag-access sa mga API, sumasang-ayon ka sa Patakaran sa Paggamit ng API na ito (ang “Patakaran”) at sa aming Mga Tuntunin. Ibinibigay namin ang mga API na ito upang payagan ang mga kumpanya at tao na bumuo at makinabang mula sa aming Serbisyo sa pamamagitan ng paglikha ng software, mga serbisyo, o mga module na kumokonekta sa aming platform o may access sa data sa loob ng aming platform sa pamamagitan ng aming mga API (isang "Pagsasama"). Ang Patakaran na ito ay at ituturing bilang bahagi ng aming Mga Tuntunin.
Ang software ay ibinibigay "AS IS", nang walang anumang uri ng warranty, ipinahayag o ipinahiwatig, kabilang ngunit hindi limitado sa mga warranty ng kakayahang maikalakal, kaangkupan para sa isang partikular na layunin at hindi paglabag. Sa anumang pagkakataon ay mananagot ang mga may-akda o may hawak ng copyright para sa anumang paghahabol, pinsala, o iba pang pananagutan, maging sa isang aksyon ng kontrata, Tort o kung hindi man, na nagmumula sa, mula sa o may kaugnayan sa software o sa paggamit o iba pang mga deal sa software.
Pinahihintulutang Paggamit
Hindi mo maaaring gamitin ang API upang magpadala ng spam o gumawa ng anumang pagkilos na lumalabag sa aming Patakaran sa Katanggap-tanggap na Paggamit at aming Mga Karaniwang Tuntunin ng Paggamit. Susunod ka sa lahat ng naaangkop na batas (kabilang ang mga batas sa privacy at mga batas sa pagkontrol sa pag-export ng United States, European GPR at mga regulasyon at mga batas at regulasyon sa pang-ekonomiyang parusa). Susundan mo ang lahat ng dokumentasyong ibibigay namin para sa mga API. Hindi mo tatangkaing i-hack o baguhin ang paraan ng paggana ng Serbisyo. Maaari naming subaybayan ang iyong paggamit ng mga API para sa pagsunod sa mga panuntunang ito, at maaari naming tanggihan ang iyong access sa API kung lalabag ka sa Patakarang ito.
Pagkapribado
Iyong Dapat magpakita ang Integration ng patakaran sa privacy para sa mga user na nagdedetalye ng impormasyong kokolektahin mo mula sa kanila kapag ginamit nila ang Integration. Maa-access mo lang ang data ng user sa lawak na pinahihintulutan ng user at ipinaliwanag sa iyong patakaran sa privacy. Dapat mong agad na tanggalin ang data ng user kung hihilingin ng user na tanggalin o wakasan ang kanilang account sa iyo.
Seguridad
Ipapatupad at pananatilihin mo ang naaangkop na teknikal at pang-organisasyong mga hakbang sa seguridad upang maprotektahan at mapangalagaan ang seguridad, integridad, at pagiging kumpidensyal ng data. Dapat pigilan ng mga hakbang na ito sa seguridad ang hindi awtorisadong pag-access o pagsisiwalat ng personal o kumpidensyal na data na iyong pinoproseso.
Pagmamay-ari
Pagmamay-ari namin ang lahat ng karapatan, titulo, at interes sa Serbisyo at sa mga API, kabilang ang lahat ng karapatan sa intelektwal na ari-arian, marka, code, at feature. Hindi mo lalabagin, i-reverse engineer, o kokopyahin ang aming code, disenyo, o nilalaman. Hindi mo maa-access ang aming mga API upang makipagkumpitensya sa aming Serbisyo. Ang anumang mga karapatan na hindi hayagang ipinagkaloob ng Patakarang ito ay pinipigilan, kaya kung hindi mo ito makikita rito, hindi ito isang karapatan na pinahihintulutan namin sa iyo.
Paggamit ng mga Marka
Hindi mo maaaring gamitin ang aming pangalan at mga marka (ibig sabihin ang aming mga logo, tatak, at naka-copyright na larawan) sa anumang paraan. Hindi mo maaaring baguhin o alisin ang anumang pagmamay-ari na abiso sa aming mga marka. Hindi mo gagamitin ang aming pangalan o mga marka sa iyong pangalan o logo ng Integration, o sa anumang paraan na nagpapahiwatig ng pag-endorso namin.
Praktikal na Paggamit ng mga Marka
Ipinapaliwanag ng mga alituntuning ito kung paano mo dapat gamitin ang aming pangalan, mga marka, at mga asset ng brand sa lahat ng oras. Ang iyong paggamit ay nagpapahiwatig ng iyong pagtanggap sa mga alituntuning ito, at nauunawaan mo na ang iyong paggamit sa paglabag sa mga alituntuning ito ay magreresulta sa awtomatikong pagwawakas ng iyong pahintulot na gamitin ang aming pangalan, mga marka, at mga asset ng brand.
- Ang paggamit ng aming pangalan, mga marka at mga asset ng brand ay dapat na malinaw na pinahintulutan sa pamamagitan ng pagsulat.
- Huwag baguhin, baguhin, baluktutin, kopyahin, o gayahin ang aming Mga Brand Asset sa anumang paraan, kabilang ang pagpapalit ng kulay, pag-ikot at/o pag-uunat. Sa madaling salita, ang aming Mga Brand Asset ay dapat panatilihin sa kanilang orihinal na anyo.
- Huwag bigyan ng hindi nararapat na katanyagan ang aming pangalan, mga marka at mga asset ng brand kumpara sa iyong pangalan at logo.
- Huwag ipakita ang aming pangalan, mga marka, at mga asset ng brand sa tabi, o sa anumang anyo ng mapagkumpitensyang marketing, nang wala ang aming malinaw na pahintulot.
- Ang iyong paggamit ay hindi dapat makalinlang sa mga mamimili tungkol sa aming pag-sponsor ng, kaugnayan sa o pag-endorso ng iyong kumpanya o ng iyong mga produkto o serbisyo.
- Ang aming pangalan, mga marka at mga asset ng brand ay aming eksklusibong pag-aari. Ang lahat ng kabutihang loob na nagreresulta mula sa iyong paggamit ay para lamang sa aming kapakinabangan. Hindi ka gagawa ng anumang aksyon na salungat sa aming mga karapatan o pagmamay-ari.
- Ang aming pangalan, mga marka, at mga asset ng brand ay dapat gamitin sa isang magalang na paraan at hindi maaaring gamitin sa paraang makapipinsala sa amin, sa aming mga produkto, o serbisyo, o sa paraang, sa aming opinyon, ay nakakabawas o nakakasira sa aming reputasyon o sa mabuting kalooban sa aming pangalan, mga marka at mga asset ng brand. Sa madaling salita, mangyaring huwag iugnay ang aming mga asset sa anumang mga ipinagbabawal o ilegal na aktibidad o gamitin ang mga ito sa paraang mapanlinlang o nakakapinsala.
Exampmga katanggap-tanggap na paggamit:
“[YOUR PRODUCT NAME] (compatible with / works with BluOS)”
Exampmga hindi katanggap-tanggap na paggamit
“[YOUR PRODUCT NAME] – BluOS”
“BluOS – [IYONG PANGALAN NG PRODUKTO]”
“[YOUR PRODUCT NAME] – Powered with BluOS”
Marketing at Press Releases
Matapos maaprubahan ang iyong aplikasyon, maaari itong mailista sa aming web ari-arian. Sa pangkalahatan, hindi kami mag-co-publish ng mga press release o mag-aambag sa co-marketing ng iyong aplikasyon.
Bago ka magpamahagi ng press release tungkol sa iyong app, siguraduhing makipag-ugnayan ka sa amin sa [EMAIL]. Kung babanggitin mo ang BluOS, kakailanganin naming mulingview ang paglabas. Inirerekomenda naming makipag-ugnayan sa iyong huling press release sa lalong madaling panahon.
Disclaimer
Sa maximum na saklaw na pinahihintulutan ng batas, ibinibigay namin ang mga API kung saan. Nangangahulugan iyon na hindi kami nagbibigay ng anumang uri ng mga warranty, ipinahayag man o ipinahiwatig, kabilang ngunit hindi limitado sa kakayahang maikalakal at pagiging angkop para sa isang partikular na layunin.
Mga update
Maaari naming i-update o baguhin ang mga API at ang Patakarang ito paminsan-minsan sa pamamagitan ng pag-post ng mga pagbabago sa site na ito o pag-abiso sa iyo sa pamamagitan ng email. Maaaring makaapekto ang mga pagbabagong ito sa iyong paggamit ng mga API o sa paraan ng pakikipag-ugnayan ng iyong Integration sa API. Kung gumawa kami ng pagbabago na hindi katanggap-tanggap sa iyo, dapat mong ihinto ang paggamit ng mga API.
Pagiging kompidensyal
Maaari kang magkaroon ng access sa kumpidensyal, pagmamay-ari, at hindi pampublikong impormasyon na partikular sa mga API ("Kumpidensyal na Impormasyon"). Maaari mo lamang gamitin ang impormasyong ito upang bumuo gamit ang mga API. Hindi mo ibubunyag ang Kumpidensyal na Impormasyon sa sinuman nang wala ang aming nakasulat na pahintulot, at poprotektahan mo ang Kumpidensyal na Impormasyon mula sa hindi awtorisadong paggamit at pagsisiwalat sa parehong paraan kung paano mo mapoprotektahan ang sarili mong kumpidensyal na impormasyon.
Indemnification
Babayaran mo ang danyos at gagawin mong hindi nakakapinsala sa amin at sa aming Koponan mula sa anumang pagkalugi (kabilang ang mga bayad sa abogado) na magreresulta mula sa mga claim ng third-party na nauugnay sa iyong paggamit ng API.
Ang natitira
Ang Patakarang ito ay hindi gumagawa o nagpapahiwatig ng anumang pakikipagsosyo, ahensya, o joint venture. Malalapat ang Patakaran na ito hangga't ginagamit mo ang mga API o hanggang sa wakasan alinsunod sa aming Mga Tuntunin. Kung sakaling magkaroon ng salungatan sa pagitan ng Patakaran na ito at ng Mga Karaniwang Tuntunin ng Paggamit, ang Mga Karaniwang Tuntunin ng Paggamit ang magkokontrol.
©2025 LENBROOK INDUSTRIES LIMITED
633 Granite Court, Pickering, Ontario, Canada L1W 3K1
Lahat ng karapatan ay nakalaan
Walang bahagi ng publikasyong ito ang maaaring kopyahin, iimbak o ipadala sa anumang anyo nang walang nakasulat na pahintulot ng Lenbrook Industries Limited. Habang ang bawat pagsusumikap ay ginawa upang matiyak na ang mga nilalaman ay tumpak sa oras ng paglalathala, ang mga tampok at mga detalye ay maaaring magbago nang walang abiso.
| Kasaysayan ng Pagbabago | ||
| Bersyon | Petsa | Paglalarawan |
| 1.0 | 6/17/2019 | Unang release |
| 1.2 | 01/12/2022 | Nagdagdag ng soft reboot, doorbell chime, volume up/down, move track in queue, at direct input commands. Nagdagdag ng tala sa Appendix LSDP. |
| 1.4 | 04/26/2022 | Nagdagdag ng mute command; binagong direktang input command para sa HUB; na-update ang Play command para i-play ang naka-stream na custom na audio. |
| 1.5 | 07/18/2022 | Nagdagdag ng utos ng Bluetooth; Na-update ang LSDP upang magdagdag ng klase 5 hanggang 8; Idinagdag ang "Praktikal na Paggamit ng mga Marka" sa Patakaran sa Paggamit ng API. |
| 1.6 | 03/13/2024 | Nagdagdag ng tala para sa /Status para sa mga nakagrupong manlalaro sa sect 2; Idinagdag /Play?seek=seconds is=tracked sa sect 4.1; |
| 1.7 | 04/09/2025 | Na-update ang seksyon 8.3 halample; Nagdagdag ng kahilingan sa pagba-browse ng inline na menu ng konteksto halample sa seksyon 7.1; Nagdagdag ng bagong command sa pagpili ng direktang input sa seksyon 11.2; Na-update ang seksyon 6.1 upang magdagdag ng "larawan" na katangian para sa mga preset; Nagdagdag ng komentong “followRedirects=1” para sa lahat ng katangian ng larawan; Na-update ang paliwanag ng paglalaro ng mga katangianURL at idagdag-ngayon sa seksyon 7.1 |
Panimula
Ang BluOS™ ay isang advanced na operating system at software sa pamamahala ng musika na nagbibigay-daan sa iyong mag-access at mag-stream ng walang pagkawalang musika hanggang sa 24-bit/192kHz sa bawat kuwarto gamit ang iyong home network. Ang BluOS ay matatagpuan sa mga produkto mula sa Bluesound, NAD Electronics, DALI Loudspeakers at iba pa.
Ang dokumentong ito ay ginawa upang tulungan ang mga developer at system integrator na nagtatrabaho sa custom na integration (CI) marketplace. Naglalaman ito ng subset ng mga kahilingan sa API na nakadokumento sa buong BluOS API Control Protocol.
Ang lahat ng mga kahilingang inilarawan sa dokumentong ito ay ipinapadala bilang mga kahilingan sa HTTP GET. Ang mga parameter ay isang pamantayan URL naka-encode na pangalan/pares ng halaga. Natatanggap ng mga manlalaro ng BluOS ang mga utos na ito at pagkatapos ay tumugon gamit ang UTF-8 na naka-encode na XML data.
Ang lahat ng mga kahilingan ay nasa anyo ng http:// : / saan:
- player_ip ay ang IP address ng BluOS player (hal., 192.168.1.100)
- port ay ang TC port na ginagamit para sa mga komunikasyon. Ginagamit ang Port 11000 para sa lahat ng manlalaro ng BluOS, maliban sa CI580. Ang CI580 ay may apat na streamer node sa isang chassis, kung saan ang node 1 ay gumagamit ng port 11000, ang node 2 ay gumagamit ng port 11010, ang node 3 ay gumagamit ng port 11020, at ang node 4 ay gumagamit ng port 11030. Ang aktwal na port na gagamitin ay dapat na matuklasan sa pamamagitan ng paggamit ng MDNS protocol gamit ang mga serbisyong musc.tccp.
- Ang kahilingan ay ang aktwal na utos o query ng BluOS (hal., Play)
Tandaan: Gagamitin ang dokumentong ito http://192.168.1.100:11000 bilang player IP at port sa lahat ng examples.
Mga Tanong sa Katayuan
Ginagamit ang mga query sa status para mag-query ng isang BluOS player.
Nagbibigay ang BluOS ng dalawang mekanismo para sa paggawa ng mga query sa status; regular na botohan at mahabang botohan. Ibinabalik kaagad ng regular na botohan ang resulta ng query. Ang mahabang botohan ay nagpapanatili ng isang koneksyon para sa isang tinukoy na oras, at nagbabalik lamang ng isang resulta ng query kapag ang impormasyon ay nagbago o nag-timeout. Ang mahabang botohan ay lubos na makakabawas sa bilang ng mga tawag sa isang manlalaro.
Kapag hindi ginagamit ang mahabang botohan, dapat limitahan ng mga kliyente ang kanilang rate ng botohan sa hindi hihigit sa isang kahilingan kada 30 segundo. Kapag ginagamit ang mahabang botohan, hindi dapat gumawa ng dalawang magkasunod na kahilingan ang isang kliyente para sa parehong mapagkukunan na wala pang isang segundo sa pagitan, kahit na ang unang kahilingan ay bumalik nang wala pang isang segundo.
Ang mga kahilingan sa mahabang botohan ay tumatagal ng dalawang parameter: timeout at etag. ang timeout ay ang tagal ng kahilingan sa mahabang botohan at etag ay kinuha mula sa nakaraang tugon (isang katangian sa root elemento ng tugon).
Sa pangkalahatan, kinakailangan lamang na magkaroon ng matagal na poll na aktibo para sa isa sa /Status o /SyncStatus. Kasama sa tugon ng /Status ang isang elemento ( ) na nagpapahiwatig kung nagbago ang /SyncStatus. Dapat i-poll ang /SyncStatus kung ang pangalan, volume at status ng pagpapangkat ng isang manlalaro lamang ang interesado. /Katayuan ay dapat na polled kung ang kasalukuyang playback status ay kinakailangan.
Kapag pinagsama-sama ang mga manlalaro, ang pangunahing manlalaro ang pangunahing manlalaro sa grupo. Ang mga pangalawang manlalaro ay nakakabit sa pangunahing manlalaro. /Ang tugon sa katayuan ng mga pangalawang manlalaro ay mga kopya ng sa pangunahing manlalaro. Ang /SyncStatus mahabang botohan ay kinakailangan pagkatapos upang subaybayan ang dami ng bawat pangalawang manlalaro.
2.1 Katayuan ng Pag-playback
Paglalarawan
Ang dami ng mga query sa /Status endpoint at impormasyon sa pag-playback. Ang query na ito ay nagbabalik ng maraming mga katangian ng tugon,
ang ilan sa mga ito ay hindi naaangkop sa dokumentong ito. Ang mga hindi dokumentadong tugon ay dapat balewalain.
Kahilingan
/Status?timeout=segundo&etag=etag-halaga
| Mga Parameter | Paglalarawan |
| timeout | Opsyonal na parameter na ginagamit sa mahabang botohan. Ang inirerekomendang agwat ng botohan ay 100 segundo at dapat na limitado sa rate na 60 segundo o higit pa at hindi hihigit sa 10 segundo. |
| etag | Opsyonal na parameter na ginagamit sa mahabang botohan. Ito ang etag katangian mula sa |
| Mga Parameter | Paglalarawan |
| nakaraang /Katayuan na tugon ng tawag. |
Tugon
<status etag=”4e266c9fbfba6d13d1a4d6ff4bd2e1e6″>
÷ (Deluxe)
Ed Sheeran
totoo
1
159
Deezer:142986206
/Artwork?service=Deezer&songid=Deezer%3A142986206
0
187
1
Perpekto
1054
0
320000
2
Deezer
/Sources/images/DeezerIcon.png
0
8
19
huminto
MP3 320 kb/s
5
Perpekto
Ed Sheeran
÷ (Deluxe)
263
4
35
TANDAAN: hindi lahat ng katangian ng tugon ay nakalista sa sumusunod na tsart. Ang iba pang mga elemento ay maaaring naroroon at dapat na huwag pansinin.
| Mga Katangian ng Tugon | Paglalarawan |
| etag | Katangian ng elemento ng ugat ng tugon. Opaque na value na ginagamit sa matagal na botohan para makita ang mga pagbabago sa tugon. Kung ang halaga ay hindi nagbago mula noong nakaraang tugon, ang tugon ay garantisadong hindi nagbago (ngunit tingnan din ang mga segundo sa ibaba) |
| alarm segundo ang natitira | Kung ang pag-playback ay resulta ng isang alarma, ito ay kung ilang segundo bago ito huminto. |
| aksyon | Tingnan ang seksyong Mga Pagkilos para sa Pag-stream ng Mga Istasyon ng Radyo para sa paglalarawan. |
| album | Pangalan ng album ng kasalukuyang aktibong track. Tingnan din ang title1 attribute. |
| artista | Pangalan ng artist ng kasalukuyang aktibong track. Tingnan din ang title1 attribute. |
| baterya | Ipinapakita kung may battery pack ang player. May kasamang mga katangian: · antas – estado ng singil, porsyento · nagcha-charge – 1 kung kasalukuyang nagcha-charge · icon – URL ng larawan ng player na nagsasaad ng kasalukuyang estado ng pagsingil |
|
canMovePlayback |
Totoo kung posible na ilipat ang kasalukuyang nagpe-play o naka-pause na nilalaman sa ibang player. |
|
canSeek |
Kung 1, posible na mag-scrub sa kasalukuyang track, sa hanay na 0..totlen, sa pamamagitan ng paggamit ng seek parameter sa /Play. Para kay example: /Play?seek=34. |
| db | Antas ng volume sa dB. |
| Pangalan ng pangkat | Pangalan ng grupo. Ang manlalaro ay dapat ang pangunahing manlalaro sa grupo. |
| Dami ng pangkat | Antas ng volume ng grupo. Ang manlalaro ay dapat ang pangunahing manlalaro sa grupo. |
| larawan | URL ng larawang nauugnay sa kasalukuyang audio (album, istasyon, input, atbp.). Kung |
| Mga Katangian ng Tugon | Paglalarawan |
| ang URL nagsisimula sa /Artwork maaari itong magresulta sa pag-redirect. Pagdaragdag ng parameter/key followRedirects=1 kapag ang pagkuha ng larawan ay maaaring maiwasan ang pag-redirect. | |
| pipi | I-mute ang estado. Itakda sa 1 kung naka-mute ang volume. |
| muteDb | kung naka-mute ang player, naglalaman ito ng hindi naka-mute na volume sa dB. |
| muteVolume | Kung may naka-mute, naglalaman ito ng hindi naka-mute na antas ng volume. Ang mga halaga ay mula 0 hanggang 100. |
| pangalan | Ang pamagat ng kasalukuyang nagpe-play na audio track. Tingnan din ang title1 attribute. |
| ipagbigay-alamurl | URL para sa isang pop up notification. |
| id | Ang natatanging play queue id. Ito ay tumutugma sa id attribute ng /Playlist na tugon. Kung ang play queue ay binago ang numerong ito ay magbabago. |
| palayasin | Ang natatanging preset na id. Tumutugma ito sa prid attribute sa /Presets na tugon. Kung ang isang preset ay binago, ang numerong ito ay magbabago na nagpapahiwatig na ang anumang naka-cache na tugon sa /Preset ay dapat i-purged. |
| kalidad | Kalidad ng nagpe-play na pinagmulang audio: · cd – walang nawawalang audio sa kalidad ng CD · hd – lossless na audio na may mas mataas na resolution na kalidad ng CD o sample- rate ng 88200 sampmas mababa o higit pa · dolbyAudio – DolbyDigital o AC3 · mqa – wastong MQA audio na na-decode · mqaAuthored – wastong MQA-Authored na audio na na-decode Ang numeric na halaga ay ang tinatayang bitrate ng kalidad ng naka-compress na audio source ng file. |
|
ulitin |
0, 1, o 2. Ang ibig sabihin ng 0 ay paulit-ulit na pag-play ng pila, 1 ay nangangahulugang ulitin ang isang track, at 2 ay nangangahulugang paulit-ulit na patayin |
| sec | Bilang ng mga segundo na-play ang kasalukuyang audio track. Ang halagang ito ay hindi ginagamit sa pagkalkula ng etag at ang pag-unlad ay hindi mismo magdudulot ng pagbabalik mula sa isang mahabang tawag sa botohan. Kinakailangan ng mga kliyente na dagdagan ang posisyon ng pag-playback, kapag ang estado ay play o stream, batay sa agwat mula noong tugon. |
| serbisyo | Ang service id ng kasalukuyang audio. Ito ay hindi isang halaga para sa pagpapakita sa isang UI, bilang ang |
| Mga Katangian ng Tugon | Paglalarawan |
| ang aktwal na string ay maaaring iba sa opisyal na pangalan ng serbisyo. | |
| serviceIcon | URL ng kasalukuyang icon ng serbisyo. |
| shuffle | 0 o 1. Ang ibig sabihin ng 0 ay shuffle off at ang 1 ay nangangahulugang shuffle on. |
| matulog | Ang natitira pang minuto bago mag-activate ang sleep timer. |
| kanta | Ang posisyon ng kasalukuyang track sa play queue. Tingnan din ang streamUrl. |
| estado | Ang kasalukuyang estado ng manlalaro. Maaaring ito ay play, pause, stop, stream, connecting, atbp. Ang /Play ay maaaring gamitin upang ipagpatuloy kapag nasa isang pause state ngunit hindi kapag nasa stop state. play at stream ay dapat isaalang-alang na may parehong kahulugan. Tingnan din ang streamUrl. |
|
stationImage |
URL para sa larawan ng isang istasyon ng radyo, kung ang kasalukuyang audio ay isang istasyon ng radyo, hal., Deezer radio. Maaaring ito ay kapareho ng larawan. |
| streamFormat | Format ng audio. |
| streamUrl | Ang presensya ng elementong ito ay dapat ituring bilang isang watawat at ang mga nilalaman nito bilang isang opaque na halaga. Kung naroroon ito ay nagpapahiwatig ng: · ang play queue ay hindi ang pinagmulan ng kasalukuyang audio (kanta ay hindi nauugnay) · shuffle at ulitin ay hindi nauugnay at dapat na alisin sa anumang UI kung maaari · Ang susunod at nakaraan ay hindi magagamit (ngunit tingnan din ang mga aksyon) |
| syncStat | Ang natatanging id upang ipahiwatig ang anumang pagbabago sa /SyncStatus na tugon. Tumutugma ito sa katangian ng syncStat ng tugon na /SyncStatus. Nagbabago ito tuwing may pagbabago sa Katayuan ng Pag-sync. |
| pamagat1 | Ang unang linya ng impormasyon na naglalarawan sa kasalukuyang audio. pamagat1, pamagat2 at pamagat3 DAPAT gamitin bilang text ng anumang UI na nagpapakita ng tatlong linya ng metadata na nagpe-play na ngayon. Huwag gumamit ng mga halaga tulad ng album, artist at pangalan. |
| pamagat2 | Ang pangalawang linya ng impormasyon na naglalarawan sa kasalukuyang audio. |
| pamagat3 | Ang ikatlong linya ng impormasyon na naglalarawan sa kasalukuyang audio. |
| totlen | Kabuuang haba ng kasalukuyang track, sa mga segundo. |
| twoline_title1 | Ang una sa dalawang linya na naglalarawan sa kasalukuyang audio. twoline_title1 at twoline_title2, kung mayroon, DAPAT gamitin bilang text ng anumang UI na nagpapakita ng dalawa |
| Mga Katangian ng Tugon | Paglalarawan |
| mga linya ng metadata na naglalaro ngayon. | |
| twoline_title2 | Ang pangalawa sa dalawang linya na naglalarawan sa kasalukuyang audio. |
| dami | Ang antas ng dami ng manlalaro sa porsyentotage; -1 ay nangangahulugan na ang dami ng manlalaro ay naayos. |
| sec | Ang bilang ng mga segundo na na-play ang kasalukuyang audio track. |
Example
http://192.168.1.100:11000/Status
Nakukuha ang status ng playback ng player.
http://192.168.1.100:11000/Status?timeout=100&etag=4e266c9fbfba6d13d1a4d6ff4bd2e1e6
Nakukuha ang katayuan ng pag-playback ng manlalaro gamit ang mahabang botohan. Ang isang resulta ay ibabalik lamang bago ang timeout ng 100 segundo kung ang katayuan ng manlalaro ay nagbago. Kung hindi, ibabalik ang resulta pagkatapos ng 100 segundo.
2.2 Katayuan ng Pag-sync ng Manlalaro at Grupo
Paglalarawan
Ang SyncStatus query ay nagbabalik ng impormasyon ng player at impormasyon ng pagpapangkat ng player. Nagbabalik ang query na ito ng maraming katangian ng pagtugon, ang ilan sa mga ito ay hindi naaangkop sa dokumentong ito. Ang mga hindi dokumentadong tugon ay dapat balewalain.
Kahilingan
/SyncStatus?timeout=segundo&etag=etag-halaga
| Mga Parameter | Paglalarawan |
| timeout | Opsyonal na parameter na ginagamit sa mahabang botohan. Ito ang pagitan ng botohan sa mga segundo. Ang inirerekomendang pagitan ng botohan ay 180 segundo. |
| etag | Opsyonal na parameter na ginagamit sa mahabang botohan. Ito ang etag attribute mula sa nakaraang /SyncStatus na tugon sa tawag. |
Tugon
<SyncStatus icon=”/images/players/P300_nt.png” volume=”4″ modelName=”PULSE” name=”PULSE0278″ model=”P300″ brand=”Bluesound” etag=”23″ outlevel=”-62.9″ schemaVersion=”25″ initialized=”true” group=”PULSE-0278 + 2″ syncStat=”23″ id=”192.168.1.100:11000″:FULSE-90 + 56″ syncStat=”82″ id=”9:02″:78:11000″:192.168.1.100:XNUMX″:XNUMX:XNUMX″ XNUMX
…..
TANDAAN: hindi lahat ng katangian ng tugon ay nakalista sa sumusunod na tsart. Ang iba pang mga elemento ay maaaring naroroon at dapat na huwag pansinin.
| Mga Katangian ng Tugon | Paglalarawan |
| baterya | Ipinapakita kung may battery pack ang player. May kasamang mga katangian: · antas – estado ng singil, porsyento · nagcha-charge – 1 kung kasalukuyang nagcha-charge · icon – URL ng larawan ng player na nagsasaad ng kasalukuyang estado ng pagsingil |
| tatak | Pangalan ng tatak ng manlalaro. |
| db | Antas ng volume sa dB. |
| etag | Tag ng tugon ng /SyncStatus, na ginagamit para sa mahabang botohan. |
| pangkat | Ang pangalan ng grupo. |
| icon | URL na naglalaman ng larawan ng icon ng player. |
| id | Player IP at port. |
| pinasimulan | True ay nangangahulugan na ang player ay naka-setup na, ang mali ay nangangahulugan na ang player ay nangangailangan ng setup. Dapat ay naka-setup ang player sa BluOS Controller app. |
| mac | Ang natatanging id ng manlalaro para sa interface ng network. Maaaring isang MAC address. |
| master | Master IP address ng manlalaro. Dumalo lamang kung ang isang manlalaro ay pangalawang manlalaro sa isang grupo. Mga Katangian: · port – numero ng port. · muling pagkonekta – totoo kung sinusubukang kumonekta muli sa pangunahing manlalaro |
| modelo | Player model id. |
| ModelName | Pangalan ng modelo ng manlalaro. |
| pipi | Itakda sa 1 kung naka-mute ang volume. |
| muteDb | Kung naka-mute ang player, ito ang unmute na volume level sa dB. |
| Mga Katangian ng Tugon | Paglalarawan |
| muteVolume | Kung naka-mute ang player, ito ang unmute na volume level (0..100). |
| pangalan | Pangalan ng manlalaro. |
| schemaVersion | Bersyon ng schema ng software. |
| alipin | Pangalawang (mga) manlalaro ng IP address. Dumalo lamang kung ang manlalaro ang pangunahing manlalaro ng isang grupo. Maaaring mayroong maraming pangalawang manlalaro. Mga Katangian: · id – IP address · port – numero ng port |
|
syncStat |
id ng katayuan ng pag-sync. Nagbabago ito sa tuwing mababago ang anumang item sa /SyncStatus na tugon. Itugma sa elemento sa /Katayuan na tugon. |
| dami | Antas ng volume sa isang 0..100 na sukat. -1 ay nangangahulugan ng fixed volume. |
| zone | Pangalan ng nakapirming pangkat. |
| zoneMaster | Kung ang manlalaro ang pangunahing manlalaro sa isang nakapirming grupo, ito ay nakatakda sa true. |
| zoneSlave | Kung ang manlalaro ay pangalawang manlalaro sa isang nakapirming grupo, ito ay nakatakda sa true. |
Example
http://192.168.1.100:11000/SyncStatus
Nakukuha ang katayuan ng manlalaro at pangkat ng manlalaro.
http://192.168.1.100:11000/SyncStatus?timeout=100&etag=4e266c9fbfba6d13d1a4d6ff4bd2e1e6
Nakukuha ang katayuan ng manlalaro at pangkat ng manlalaro gamit ang mahabang botohan. Ang isang resulta ay ibabalik lamang bago ang timeout ng 100 segundo kung ang katayuan ng manlalaro ay nagbago. Kung hindi, ibabalik ang resulta sa 100 segundo.
Kontrol ng Dami
Inaayos ang volume level ng isang player. Ginagamit din para i-mute ang isang player.
3.1 Itakda ang Dami
Paglalarawan
Ang kahilingang ito ay nagtatanong o nagtatakda ng dami ng manlalaro.
Lahat ng mga variant ng command, gumagamit man ng 0..100 level, absolute dB o relative dB na parameter, ay napipilitan sa mga value na nagreresulta sa isang level sa loob ng naka-configure na available na hanay ng volume, na karaniwang -80..0. Maaaring isaayos ang hanay ng volume gamit ang BluOS Controller app, sa pahina ng Mga Setting -> Player -> Audio.
Sinusuportahan ng query ang mahabang botohan (hindi nakalarawan sa ibaba).
Kahilingan
/Dami
/Volume?level=level&tell_slaves=on_off
/Volume?mute=on_off&tell_slaves=on_off
/Volume?abs_db=db&tell_slaves=on_off
/Volume?db=delta-db&tell_slaves=on_off
| Mga Parameter | Paglalarawan |
| antas | Itakda ang absolute volume level ng player. Ito ay isang integer mula 0 -100. |
| tell_slaves | Nalalapat sa mga nakagrupong manlalaro. Kung nakatakda sa 0, tanging ang kasalukuyang napiling player lang ang nagbabago ng volume. Kung nakatakda sa 1, ang lahat ng manlalaro sa grupo ay magbabago ng volume. |
| pipi | Kung nakatakda sa 0, ang player ay naka-mute. Kung itatakda sa 1, ang player ay hindi naka-mute. |
| abs_db | Itakda ang volume gamit ang dB scale. |
| db | Gumawa ng relatibong pagbabago ng volume gamit ang sukat ng volume ng dB. Ang db ay maaaring positibo o negatibong numero. |
Tugon
<volume db=”-49.9″ mute=”0″ offsetDb=”0″ etag=”6213593a6132887e23fe0476b9ab2cba”>15</volume>
| Mga Katangian ng Tugon | Paglalarawan |
| Mga Katangian ng Tugon | Paglalarawan |
| db | Antas ng volume sa dB. |
| pipi | 1 kung naka-mute ang player, 0 kung naka-unmute ang player. |
| muteDb | Kung naka-mute ang player, ito ang unmute na volume level sa dB. |
| muteVolume | Kung naka-mute ang player, ito ang unmute na volume level (0..100). |
| dami | Ang kasalukuyang antas ng volume: 0..100 o -1 para sa nakapirming volume. |
Example
http://192.168.1.100:11000/Volume?level=15
Itinatakda ang antas ng volume ng player sa 15 (sa 100).
http://192.168.1.100:11000/Volume? tell_slaves=1&db=2
Pinapataas ang volume ng master player na 192.168.1.100, at lahat ng pangalawang manlalaro sa pangkat na iyon, ng 2 dB.
http://192.168.1.100:11000/Volume?mute=1
Ni-mute ang player.
3.2 Pagtaas ng Dami
Paglalarawan
Ang kahilingang ito ay nagpapataas ng volume ng ilang partikular na dB (karaniwang halaga ay 2dB).
Kahilingan
/Volume?db=db_value
| Mga Parameter | Paglalarawan |
| db | Mga hakbang sa pagtaas ng volume sa dB (karaniwang halaga 2dB) |
Tugon
<volume db=”-25″ mute=”0″ offsetDb=”6″ etag=”a071a168fac1c879b1de291720c8a4b8″>27</volume>
| Mga Katangian ng Tugon | Paglalarawan |
| db | Antas ng volume sa dB. |
| pipi | 1 kung naka-mute ang player, 0 kung hindi naka-mute ang player |
| Mga Katangian ng Tugon | Paglalarawan |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?db=2
Dagdagan ang volume ng 2dB.
3.3 Pagbaba ng Dami
Paglalarawan
Binabawasan ng kahilingang ito ang volume ng ilang partikular na dB (karaniwang halaga ay -2dB).
Kahilingan
/Volume?db=-db_value
| Mga Parameter | Paglalarawan |
| db | Mga hakbang sa pagtaas ng volume sa dB (karaniwang halaga -2dB) |
Tugon
<volume db=”-25″ mute=”0″ offsetDb=”6″ etag=”a071a168fac1c879b1de291720c8a4b8″>27</volume>
| Mga Katangian ng Tugon | Paglalarawan |
| db | Antas ng volume sa dB |
| pipi | 1 kung naka-mute ang player, 0 kung hindi naka-mute ang player |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?db=-2
Bawasan ang volume ng 2dB.
3.4 I-mute ang Naka-on
Paglalarawan
Kahilingan
/Volume?mute=1
| Mga Parameter | Paglalarawan |
| pipi | Itakda sa 1 para i-mute ang player |
Tugon
<volume muteDb=”-43.1″ db=”100″
muteVolume=”11″
mute=”1″
offsetDb="0″
etag=”2105bed56563d9da46942a696cfadd63″>0</volume
>
| Mga Katangian ng Tugon | Paglalarawan |
| muteDb | Antas ng volume sa dB bago i-mute |
| db | Antas ng volume sa dB |
| muteVolume | Antas ng volume sa porsyento bago i-mute |
| pipi | 1 ay nangangahulugan na ang player ay naka-mute |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?mute=1
3.5 I-mute Off
Paglalarawan
Itinatakda ng kahilingang ito na i-unmute ang player.
Kahilingan
/Volume?mute=0
| Mga Parameter | Paglalarawan |
| pipi | Itakda sa 0 para i-unmute ang player |
Tugon
<volume db=”-43.1″ mute=”0″ offsetDb=”0″ etag=”e72d53db17baa526ebb5ee9c26060b1f”>11</volume>
| Mga Katangian ng Tugon | Paglalarawan |
| db | Antas ng volume sa dB |
| pipi | 0 ay nangangahulugan na ang player ay hindi naka-mute |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?mute=0
Kontrol sa Pag-playback
Ang mga utos na ito ay ginagamit para sa pangunahing kontrol sa pag-playback. Kasama sa mga utos ang play, pause, stop, skip, back, shuffle, at repeat.
4.1 Maglaro
Paglalarawan
Simulan ang pag-playback ng kasalukuyang pinagmumulan ng audio. Ang mga opsyonal na parameter ay nagbibigay-daan sa pagtalon sa mga audio track, at isang input na mapili, bago simulan ang pag-playback ng audio.
Kahilingan
/Maglaro
/Play?seek=seconds
/Play?seek=seconds&id=trackid
/Maglaro?url=encodedStreamURL
| Mga Parameter | Paglalarawan |
| hanapin | Tumalon sa tinukoy na posisyon sa kasalukuyang track. Valid lamang kung kasama ang tugon ng /Status . Hindi magagamit sa inputType at mga parameter ng index. |
| naka-encode naStreamURL | URL ng naka-stream na custom na audio. Ito ay dapat na URL naka-encode. |
Tugon
maglaro
stream
| Mga Katangian ng Tugon | Paglalarawan |
|
estado |
Ang estado pagkatapos isagawa ang utos. Tingnan ang katangian ng /Status response state para sa higit pang mga detalye. |
Example
http://192.168.1.100:11000/Play
Simulan ang audio playback ng kasalukuyang track.
http://192.168.1.100:11000/Play?seek=55
Simulan ang pag-playback ng audio sa 55 segundo sa kasalukuyang track.
http://192.168.1.100:11000/Play?seek=55&id=4
Simulan ang pag-playback ng audio sa 55 segundo sa track number 5 sa queue.
192.168.1.125:11000/Play?url=https%3A%2F%2Fwww%2Esoundhelix%2Ecom%2Fexamples%2Fmp3%
2FSoundHelix-Song-1%2Emp3
Simulan ang audio playback ng isang online na mp3 audio.
4.2 I-pause
Paglalarawan
I-pause ang kasalukuyang nagpe-play na audio.
Kung tumutugtog ang isang alarm, at mayroon itong timeout, kakanselahin ang timeout ng alarm.
Kahilingan
/Pause
/Pause?toggle=1
| Mga Parameter | Paglalarawan |
| magpalipat-lipat | Kung nakatakda sa 1, ang kasalukuyang estado ng pag-pause ay i-toggle. |
Tugon
huminto
| Katangian ng Tugon | Paglalarawan |
| estado | Ang estado pagkatapos isagawa ang utos. Tingnan ang katangian ng /Status response state para sa higit pang mga detalye. |
Example
http://192.168.1.100:11000/Pause
Pino-pause ang kasalukuyang nagpe-play na audio.
4.3 Itigil
Paglalarawan
Ihinto ang kasalukuyang nagpe-play na audio. Kung tumutugtog ang isang alarma, at mayroon itong timeout, kinansela ang timeout ng alarma Hiling
/Tumigil ka
| Mga Parameter | Paglalarawan |
| wala |
Tugon
huminto
| Mga Katangian ng Tugon | Paglalarawan |
| estado | Ang ibig sabihin ng "stop" ay huminto ang kasalukuyang audio. |
Example
http://192.168.1.100:11000/Stop
Ihihinto ang kasalukuyang nagpe-play na audio.
4.4 Laktawan
Paglalarawan
Lumaktaw sa susunod na audio track sa play queue
Kapag nagpe-play mula sa play queue, lalaktawan ito sa susunod na track sa queue. Kung ang kasalukuyang track ang huli sa pila, ang pagtawag sa /Skip ay mapupunta sa unang track sa queue. . Lalaktawan ito sa susunod o unang track sa pila anuman ang estado ng paulit-ulit na setting.
Para matukoy kung ginagamit mo ang play queue, i-verify na walaUrl> entry sa sagot na /Status.
Pagkatapos ay maaari mong gamitin ang /Skip command.
Maaari mo ring laktawan ang mga track para sa ilang streaming na istasyon ng radyo. Ang mga ito ay hinahawakan gamit ang /Action command.
Ang ilang mga mapagkukunan tulad ng TuneIn at Optical Input ay hindi sumusuporta sa isang opsyon sa paglaktaw. Ang mga mapagkukunang ito ay magkakaroon ng aURL> entry ngunit walang laktawan ang pangalan ng aksyon sa tugon ng /Status.
Kahilingan
/ Laktawan
| Mga Parameter | Paglalarawan |
| wala |
Tugon
21
| Mga Katangian ng Tugon | Paglalarawan |
| id | Ang track id pagkatapos isagawa ang skip command. Sumangguni sa katangian ng /Status response song para sa mga detalye. |
Example
http://192.168.1.100:11000/Skip
Lumaktaw sa susunod na track.
4.5 Bumalik
Paglalarawan
Kung nagpe-play ang isang track at nagpe-play nang higit sa apat na segundo pagkatapos ay babalik sa simula ng track.
Kung hindi, mapupunta ang back command sa nakaraang kanta sa kasalukuyang playlist. Kung sa unang kanta sa playlist ang pagtawag pabalik ay mapupunta sa huling kanta. Mapupunta ito sa nauna o unang track sa queue anuman ang estado ng repeat setting.
Para matukoy kung ginagamit mo ang play queue, i-verify na walaUrl> elemento sa tugon ng /Status.
Pagkatapos ay maaari mong gamitin ang /Back command.
Maaari ka ring bumalik sa mga track para sa ilang streaming na istasyon ng radyo. Ang mga ito ay hinahawakan gamit ang /Action command.
Ang ilang mga mapagkukunan tulad ng TuneIn at Optical Input ay hindi sumusuporta sa isang pabalik na opsyon. Ang mga mapagkukunang ito ay magkakaroon ng aUrl> elemento ngunit walang laktawan ang pangalan ng aksyon sa tugon na /Status.
Kahilingan
/Bumalik
| Mga Parameter | Paglalarawan |
| wala |
Tugon
19
| Mga Katangian ng Tugon | Paglalarawan |
| id | Ang track id pagkatapos isagawa ang back command. Sumangguni sa katangian ng /Status response song para sa mga detalye. |
4.6 Balasahin
Paglalarawan
Ang shuffle command ay lumilikha ng bagong queue sa pamamagitan ng pag-shuffle sa kasalukuyang queue. Ang orihinal (hindi na-shuffle) na pila ay pananatilihin para sa pagpapanumbalik kapag ang shuffle ay hindi pinagana.
Kahilingan
/Shuffle?state=0|1
| Mga Parameter | Paglalarawan |
| estado | · 0 upang hindi paganahin ang shuffle · 1 upang paganahin ang shuffle. Walang epekto kung ang queue ay nasa shuffled na estado. Tingnan ang /Tugon sa katayuan elemento. |
Tugon
| Mga Katangian ng Tugon | Paglalarawan |
| binago | 1 ay nangangahulugan na ang pila ay nabago mula noong na-load. 0 ay nangangahulugang hindi. |
| haba | Kabuuang bilang ng mga track sa kasalukuyang queue. |
| shuffle | Ang estado ng shuffle. 1 ay nangangahulugan na ang kasalukuyang queue ay shuffled. 0 ay nangangahulugan na ang kasalukuyang pila ay hindi na-shuffle. |
| id | Ang kasalukuyang queue id. Nagbabago ito tuwing binago ang pila ng paglalaro. |
Example
http://192.168.1.100:11000/Shuffle?state=1
Sina-shuffle ang kasalukuyang queue ng play.
4.7 Ulitin
Paglalarawan
Nagtatakda ng mga pagpipilian sa pag-uulit. Ang pag-uulit ay may tatlong estado; Ang ibig sabihin ng 0 ay ulitin ang kasalukuyang pila, ang ibig sabihin ng 1 ay ulitin ang kasalukuyang track at ang ibig sabihin ng 2 ay huwag ulitin. Ang lahat ng mga pag-uulit ay hindi tiyak, iyon ay, hindi sila tumitigil.
Kahilingan
/Repeat?state=0|1|2
| Mga Parameter | Paglalarawan |
| estado | · 0 upang ulitin ang buong pila ng play · 1 upang ulitin ang kasalukuyang track · 2 upang i-off ang repeat |
Tugon
| Mga Katangian ng Tugon | Paglalarawan |
| haba | Ang kabuuang bilang ng mga track sa kasalukuyang pila ng paglalaro. |
| id | Ang kasalukuyang queue id. Nagbabago ito tuwing binago ang pila ng paglalaro. |
| ulitin | Ang kasalukuyang estado ng pag-uulit. |
Example
http://192.168.1.100:11000/Repeat?state=1
Inuulit ang kasalukuyang nagpe-play na track.
4.8 Mga Pagkilos para sa Pag-stream ng mga Istasyon ng Radyo
Paglalarawan
Binibigyang-daan ka ng mga aksyon na lumaktaw pasulong, bumalik, mahalin at i-ban ang mga track sa mga piling streaming na istasyon ng radyo, gaya ng Slacker o Radio Paradise o Amazon Music Prime Stations. Ang mga streaming na istasyon ng radyo ay hindi naglo-load ng mga track sa play queue. Sa halip, nagbibigay sila ng a URL na magagamit mo para magawa ang ninanais na function.
Ang skip ay mapupunta sa susunod na track. Balik ay mapupunta sa nakaraang track. I-flag ng Love ang track bilang nagustuhan sa loob ng serbisyo ng musika. Lalaktawan ang pagbabawal sa susunod na track at i-flag ang track bilang hindi nagustuhan sa loob ng serbisyo ng musika.
Kung mayroong aUrl> entry sa sagot na /Status, at isang naaangkop na aksyon, maaari mong gawin ang mga function na ito. Ang aksyon ay maglalaman ng URL na ginagamit upang maisagawa ang aksyon.
Narito ang isang exampmula sa /Katayuan na tugon ng isang player na naglalaro ng Slacker radio:
<action name=”skip” url=”/Action?service=Slacker&skip=4799148″/>
<action icon=”/images/loveban/love.png” name=”love” notification=”Track marked as favorite” state=”1″ text=”Love” url=”/Action?service=Slacker&love=4799148″/>
<action icon=”/images/loveban/ban.png” name=”ban” notification=”Track banned from this
station” state=”-1″ text=”Ban” url=”/Action?service=Slacker&ban=4799148″/>
Sa ex na itoample, back is not available, but skip, love and ban are possible.
Kahilingan
/Action?service=service-name&action=action-URL
Tandaan: Ang mga partikular na detalye ng kahilingan (endpoint at mga parameter) ay ibinibigay ng kani-kanilang elemento. Ang mga utos sa HalampAng seksyon sa ibaba ay gumagamit ng /Action ngunit posible ang anumang URI.
| Mga Parameter | Paglalarawan |
| Ibinigay sa elemento. |
Tugon
Para sa tugon, makakatanggap ka ng pagkilala sa pagkilos. Para sa paglaktaw at pagbabalik, makakatanggap ka ng:
Para sa pag-ibig na iyong natanggap:
1
Para sa pagbabawal na natatanggap mo:
1
| Mga Katangian ng Tugon | Paglalarawan |
| tugon | Kung ang ugat na elemento ng tugon ay pagkatapos ang text node ay isang notification na ipapakita sa user. Kung ang isang alternatibong elemento ng ugat ay ibinalik at ang may kasamang attribute ng notification kung gayon dapat ipakita ang notification na iyon. |
Example
http://192.168.1.100:11000/Action?service=Slacker&skip=10965139
Lumaktaw sa susunod na track ng radyo ng Slacker.
http://192.168.1.100:11000/Action?service=Slacker&ban=33332284
Pinagbawalan ang kasalukuyang nagpe-play na track ng radyo ng Slacker at lumaktaw sa susunod na track.
Maglaro ng Queue Management
Ang isang mode ng pagpapatakbo ng isang player ay ang pag-load ng mga track sa isang play queue, at pagkatapos ay i-play ang mga track mula sa play queue na iyon. Ang mga utos na ito ay nagpapahintulot sa iyo na view at pamahalaan ang play queue.
5.1 Listahan ng mga Track
Paglalarawan
Ibalik ang status ng play queue, o ibalik ang impormasyon sa lahat ng track sa play queue.
Hindi inirerekumenda na gamitin ang query na ito nang wala ang haba o simula at pagtatapos na mga parameter, dahil kung hindi ay maaaring makabuo ng napakahabang tugon.
Kahilingan
/Playlist
/Playlist?length=1
/Playlist?start=first&end=last (kunin ang bahagi ng queue, para sa pagination kadalasan)
| Mga Parameter | Paglalarawan |
| haba=1 | Ibalik lamang ang mga katangian sa pinakamataas na antas at walang mga detalye ng track. |
| simulan | Unang entry sa queue na isasama sa tugon, simula sa 0. |
| wakas | Huling entry sa pila na isasama sa tugon. |
Tugon
Para sa status ng play queue:
13
243
1
Para sa listahan ng play queue:
2002
Anne-Marie
2002
Deezer:487381362
| Mga Katangian ng Tugon | Paglalarawan |
| pangalan | Ang kasalukuyang pangalan ng play queue. |
| binago | 0 ay nangangahulugan na ang queue ay hindi pa nabago mula noong ito ay na-load. 1 ay nangangahulugan na ang pila ay nabago mula noong ito ay na-load. |
| haba | kabuuang bilang ng mga track sa kasalukuyang pila |
| id | natatanging id para sa kasalukuyang estado ng pila (hal., 1054). Ito ay kapareho ng sa /Katayuan na tugon. |
| kanta | Ang kanta ay binubuo ng ilang mga sub-elemento: · albumid = id ng album kung nasaan ang track · serbisyo = serbisyo ng musika ng track · artistid = id ng track artist · songid = song id · id = posisyon ng track sa kasalukuyang pila. Kung kasalukuyang napili ang track, ang track id ay kapareho ng sa /Katayuan na tugon. · pamagat = pangalan ng track · sining = pangalan ng artista · alb = pangalan ng album |
Example
http://192.168.1.100:11000/Playlist
Inililista ang lahat ng track sa queue ng play.
http://192.168.1.100:11000/Playlist?length=1
5.2 Tanggalin ang Isang Track
Paglalarawan
Mag-alis ng track mula sa kasalukuyang queue ng play.
Kahilingan
/Delete?id=position
| Mga Parameter | Paglalarawan |
| id | Ang track id ng track na tatanggalin mula sa kasalukuyang play queue. |
Tugon
9
| Mga Katangian ng Tugon | Paglalarawan |
| tinanggal | Ang posisyon sa pila ng track na aalisin. |
Example
http://192.168.1.100:11000/Delete?id=9
Inaalis ang track sa posisyon 9 sa play queue.
5.3 Ilipat ang Isang Track
Paglalarawan
Maglipat ng track sa loob ng kasalukuyang queue ng play.
Kahilingan
/Move?new=destination&old=origin
| Mga Parameter | Paglalarawan |
| bago | Bagong posisyon sa track na inililipat. |
| luma | Lumang posisyon ng track na inililipat. |
Tugon
inilipat
| Mga Katangian ng Tugon | Paglalarawan |
| inilipat | Isinasaad na ang track ay inilipat. |
Example
http://192.168.1.100:11000/Move?new=8&old=2
Ilipat ang track sa posisyon 2 sa posisyon 8 sa play queue.
5.4 I-clear ang Pila
Paglalarawan
I-clear ang lahat ng track mula sa kasalukuyang queue ng play
Kahilingan
/Malinaw
| Mga Parameter | Paglalarawan |
| wala |
Tugon
| Mga Katangian ng Tugon | Paglalarawan |
| binago | 0 ay nangangahulugan na ang pila ay hindi nabago mula noong na-load, ang 1 ay nangangahulugan na ang pila ay nabago mula noong na-load. |
| haba | Ang kabuuang bilang ng mga track sa kasalukuyang queue. |
| id | Ang natatanging id para sa kasalukuyang pila. |
Example
http://192.168.1.100:11000/Clear
Aalisin nito ang lahat ng track mula sa play queue.
5.5 I-save ang Queue
Paglalarawan
I-save ang play queue bilang isang pinangalanang BluOS playlist.
Kahilingan
/Save?name=playlist_name
| Mga Parameter | Paglalarawan |
| pangalan | Ang naka-save na pangalan ng queue ng play. |
Tugon
126
| Mga Katangian ng Tugon | Paglalarawan |
| mga entry | Ang kabuuang bilang ng mga track sa naka-save na pila ng play. |
Example
http://192.168.1.100:11000/Save?name=Dinner+Music
Ise-save nito ang play queue bilang “Dinner Music”.
Preset
Nagbibigay-daan sa iyo ang mga preset na kahilingan na ilista ang lahat ng preset ng isang player, mag-load ng preset, at step up/down preset. Dapat idagdag at tanggalin ang mga preset gamit ang BluOS Controller app. Ang mga preset ay maaaring magsama ng mga istasyon ng radyo, playlist at input (hal
Bluetooth, analog, optical, HDMI ARC).
6.1 Listahan ng mga Preset
Paglalarawan
Ilista ang lahat ng preset sa kasalukuyang BluOS player.
Kahilingan
/Preset
| Mga Parameter | Paglalarawan |
| wala |
Tugon
<preset id=”6″ name=”Serenity” url=”RadioParadise:/42:4/Serenity”
image=”https://img.radioparadise.com/channels/0/42/cover_512x512/0.jpg”/>
<preset id=”7″ name=”1980s Alternative Rock Classics” url=”/Load?service=Tidal&id=fd3f797e-
a3e9-4de9-a1e2-b5adb6a57cc7″ image=”/Artwork?service=Tidal&playlistimage=afacfc12-24034caf-a5c5-a2af28d811c8″/> </presets>
| Mga Katangian ng Tugon | Paglalarawan |
| pagmamalaki | Isang natatanging id ng mga preset ng player. Ito ay kapareho ng sa /Katayuan na tugon. |
| pangalan | Ang preset na pangalan. |
| id | Ang preset na id. |
| url | Ang preset URL. Ito ang preset na pinagmulan URL ginamit upang i-load ang preset. |
| larawan | Imahe URL ng preset. Kung ang URL nagsisimula sa /Artwork maaari itong magresulta sa pag-redirect. Pagdaragdag ng parameter/key followRedirects=1 kapag ang pagkuha ng larawan ay maaaring maiwasan ang pag-redirect. |
Example
http://192.168.1.100:11000/Presets
Ilista ang lahat ng mga preset sa player.
6.2 Mag-load ng Preset
Paglalarawan
Nagsisimulang maglaro ng preset. Maaari kang pumili ng isang partikular na preset na numero, pati na rin ang susunod o nakaraang preset. Ang mga preset na numero ay hindi kailangang sunud-sunod, ibig sabihin, maaari kang magkaroon ng mga preset na 1,2,3 5, 7 at 8. Ang mga preset ay umiikot mula sa itaas hanggang sa ibaba at sa ibaba hanggang sa itaas.
Kahilingan
/Preset?id=presetId|-1|+1
| Mga Parameter | Paglalarawan |
| id | Ang id number ng preset na ilo-load. Ang listahan ng mga magagamit na preset na id ay matatagpuan sa utos ng Show Preset. Kung ang preset na id ay +1, ilo-load nito ang susunod na preset. Kung ang preset id ay -1, ilo-load nito ang nakaraang preset. |
Tugon
Kung ang preset ay isang listahan ng mga track ibinabalik nito ang bilang ng mga track ng preset na na-load.
60
Kung ang preset ay isang radyo ibinabalik nito ang estado ng stream.
stream
| Mga Katangian ng Tugon | Paglalarawan |
| serbisyo | pangalan ng serbisyo ng na-load na preset |
| mga entry | ang bilang ng mga track ng preset na na-load |
Example
http://192.168.1.100:11000/Preset?id=4
I-load ang preset na may preset id 4.
http://192.168.1.100:11000/Preset?id=+1
Pagba-browse at Paghahanap ng Nilalaman
Inilalarawan ng seksyong ito ang mga utos para sa pagba-browse at paghahanap ng nilalaman ng serbisyo ng musika.
7.1 Pagba-browse sa Nilalaman ng Musika
Paglalarawan
Mag-navigate sa mga available na mapagkukunan ng musika, pati na rin ang mga input at playlist.
Ang ugat na elemento para sa mga tugon ay maliban kung mayroong tugon ng error. Karamihan sa mga resulta ay isang pagkakasunod-sunod ng . Sa ilang mga kaso ang resulta ay isang pagkakasunod-sunod ng , ang bawat isa ay naglalaman ng pagkakasunod-sunod kung . Ang lahat ng mga halaga ay ibinigay gamit ang mga katangian. Walang mga text node.
Ang resulta ng isang /Browse na tawag ay maaaring isang error na nakapaloob sa isang elemento ng ugat. Ang detalye ng error ay ibinigay sa isa at zero o higit pa mga node ng teksto.
Kahilingan
/Browse?key=key-value
/Browse?key=key-value&withContextMenuItems=1
| Mga Parameter | Paglalarawan |
| susi | Opsyonal na parameter. Ang kawalan ng parameter na ito ay magreresulta sa isang top-level na pag-browse. Ibinabalik ang impormasyon para sa mga antas maliban sa pinakamataas na antas /Browse. Ginagamit ang value na kinuha mula sa isang value ng attribute na "browseKey", "nextKey", "parentKey", o "contextMenuKey" mula sa isang naunang tugon. Tandaan: dapat na ang key-value URL naka-encode |
| mayContextMenuItems | Opsyonal na parameter. Ang halaga ay palaging 1. Ginagamit ang parameter na ito upang makakuha ng inline na menu ng konteksto kapag nakakakuha ng resulta ng pag-browse ng mga playlist, album, track, istasyon, artist, atbp. |
Tugon
Tugon sa tuktok na antas ng pag-browse:
<item image=”/images/InputIcon.png” text=”Optical Input”
maglaroURL=”/Maglaro?url=Capture%3Ahw%3A1%2C0%2F1%2F25%2F2%2Finput1″ inputType=”spdif”
type="audio"/>
Iba pang antas ng tugon sa pag-browse:
<browse sid=”16″ serviceIcon=”/Sources/images/DeezerIcon.png” serviceName=”Deezer”
service=”Deezer” searchKey=”Deezer:Search” type=”menu”>
item browseKey=”/Playlists?service=Deezer&genre=0&category=toplist” text=”Popular Playlists”
type="link"/>
type="link"/>
type="link"/>
item browseKey=”/Songs?service=Deezer&genre=0&category=toplist” text=”Popular Songs”
type="link"/>
| Mga Katangian ng Tugon | Paglalarawan |
| Sumangguni sa mga talahanayan ng elemento/attribute sa ibaba |
Example
TANDAAN: lahat ng pangunahing parameter ay dapat na naka-encode ng UTF-8.
http://192.168.1.100:11000/Browse
Nagba-browse sa pinakamataas na antas.
http://192.168.1.100:11000/Browse?key=Tidal%3A
Nagba-browse ang pangalawang antas, ibinabalik ang mga kategorya ng Tidal.
http://192.168.1.100:11000/Browse?key=Tidal%3AmenuGroup%2F3
Nagba-browse ba ang ikatlong antas, ibinabalik ang mga sub-category ng Tidal Masters (Group 3).
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DTidal%26category%3Dmasters
Nagba-browse sa ikaapat na antas, ibinabalik ang unang hanay ng mga album ng Tidal Masters.
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DTidal%26category%3Dmasters%26 start%3D30%26end%3D79
Nagba-browse ba ang isa pang pang-apat na antas, ibinabalik ang pangalawang hanay ng mga album ng Tidal Masters.
| Elemento | Katangian (at mga halaga) | Paglalarawan | |
| serviceIcon | Ang URI para sa isang icon para sa serbisyong kasalukuyang bina-browse. | ||
| Pangalan ng serbisyo | Ang pangalan ng serbisyong kasalukuyang bina-browse, para sa pagpapakita ng user. | ||
| searchKey | Isang value na gagamitin para sa isang pangunahing parameter sa isang kahilingan sa /Browse para hanapin ang kasalukuyang serbisyo (o ilang mas malalim na bahagi ng hierarchy). Bilang karagdagan, ang kahilingan ay dapat magkaroon ng aq parameter na naglalaman ng termino para sa paghahanap. | ||
| susunod naSusi | Isang value na gagamitin para sa isang pangunahing parameter sa isang kahilingan sa /Browse para makuha ang susunod na page ng mga item para sa kasalukuyan view. Ang laki ng paging chunk ay wala sa ilalim ng kontrol ng user ng API at hindi dapat subukang i-parse o manipulahin ang mga parameter ng query ng value na ito. | ||
| parentKey | Isang value na gagamitin para sa isang pangunahing parameter sa isang kahilingan sa /Browse na mag-navigate pabalik sa hierarchy kung dapat ma-override ang default na back navigation. | ||
| uri | menu | Isang navigation node na posibleng naglalaman ng halo ng anumang uri ng item. Karamihan sa karaniwan ay naglalaman lamang ng link o mga audio na item. | |
| contextMenu | Isang listahan ng mga item ng tinukoy na uri. | ||
| mga artista | |||
| Elemento | Katangian (at mga halaga) | Paglalarawan | |
| mga kompositor | |||
| mga album | |||
| mga playlist | |||
| mga track | |||
| mga genre | |||
| mga seksyon | Alpabetikong mga seksyon. | ||
| mga bagay | Pangkalahatang listahan ng resulta. Kadalasan ay pinaghalong mga node ng menu (type=”link”) at radio item (type=”audio”). | ||
| mga folder | Maaaring naglalaman ng mga subfolder, track at mga entry sa playlist. | ||
| text | Tumungo para sa kategorya. | ||
| susunod naSusi | Isang value na gagamitin para sa isang pangunahing parameter sa isang kahilingan sa /Browse para makuha ang susunod na page ng mga item para sa kategorya. | ||
| parentKey | Isang value na gagamitin para sa isang pangunahing parameter sa isang kahilingan sa /Browse na mag-navigate pabalik sa hierarchy kung dapat ma-override ang default na back navigation. | ||
| uri | link | Isang generic na node sa browse hierarchy na humahantong sa mga karagdagang node | |
| audio | Isang node na maaaring direktang laruin | ||
| artista | Isang item na kumakatawan sa isang artist | ||
| Elemento | Katangian (at mga halaga) | Paglalarawan | |
| kompositor | Isang item na kumakatawan sa isang kompositor | ||
| album | Isang item na kumakatawan sa isang album o katulad na koleksyon | ||
| playlist | Isang item na kumakatawan sa isang playlist o katulad na koleksyon | ||
| subaybayan | Isang item na kumakatawan sa isang track | ||
| text | Isang plain text node. | ||
| seksyon | Isang alpabetikong seksyon. | ||
| folder | Isang folder sa isang folder browse. | ||
| text | Pangunahin o unang linya ng paglalarawan ng item | ||
| teksto2 | Pangalawang linya | ||
| larawan | Isang icon o likhang sining para sa item. Kung ang larawan ay nagsisimula sa
/Artwork maaari itong magresulta sa pag-redirect. Pagdaragdag ng parameter/key followRedirects=1 kapag ang pagkuha ng larawan ay maaaring maiwasan ang pag-redirect. |
||
| browseKey | Isang value na gagamitin para sa isang pangunahing parameter sa isang kasunod na kahilingan sa /Browse para bumaba sa hierarchy. | ||
| maglaroURL | Isang URI na maaaring direktang i-invoke para i-invoke ang default na play action para sa item na pinag-uusapan. Kadalasan ito ay upang i-clear ang pila at simulan ang paglalaro nito. | ||
| autoplayURL | Isang URI na maaaring direktang tawagan upang magdagdag ng track sa queue at i-play ito at magdagdag ng mga kasunod na track mula sa naglalaman ng object (gaya ng isang album) sa auto-fill | ||
| Elemento | Katangian (at mga halaga) | Paglalarawan |
| seksyon ng play queue. | ||
| contextMenuKey | Isang value na gagamitin para sa isang pangunahing parameter sa isang kahilingan sa /Browse para makakuha ng resulta na context-menu ng mga pagkilos na nauugnay sa item. | |
| aksyonURL | Isang URI na maaaring direktang tawagin upang maisagawa ang tinukoy na pagkilos. |
Ang mga item sa menu ng konteksto ay maaaring may mga sumusunod na halaga para sa katangian ng uri.
| Katangian | ||
| Paglalarawan | ||
| paborito | -dagdag | Idagdag ang item bilang paborito (o katumbas) |
| -tanggalin | Alisin ang item mula sa mga paborito ng user | |
| idagdag | Idagdag sa pila ng play | |
| idagdag | -ngayon | Idagdag sa play queue pagkatapos ng kasalukuyang track at i-play ngayon |
| -susunod | Idagdag sa play queue pagkatapos ng kasalukuyang track | |
| -huling | Idagdag sa dulo ng pila ng play | |
| idagdagLahat | -ngayon | Magdagdag ng multi-track object sa play queue at maglaro ngayon |
| -susunod | Magdagdag ng multi-track object sa play queue pagkatapos ng kasalukuyang track o multi-track object | |
| -huling | Magdagdag ng multi-track object sa dulo ng play queue | |
| playRadio | Magpatugtog ng istasyon ng radyo na nauugnay sa item | |
| tanggalin | Tanggalin ang bagay (karaniwan ay isang playlist). Dapat hilingin ang kumpirmasyon ng user |
Kapag nagba-browse gamit ang parameter na "withContextMenuItem=1", ang resulta ay maglalaman ng in-line na menu ng konteksto.
Example
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DDeezer%26genre%3D0%26category %3Dtoplist&withContextMenuItems=1
Humihiling ba ng Deezer => Ano'ng Patok => Mga Sikat na Album na may inline na menu ng konteksto.
Tugon
Ang tugon ay naglalaman ng inline para sa bawat item.
<item text=”Essonne History X” contextMenuKey=”Deezer:contextMenu/Album?albumid=693798541″
maglaroURL=”/Add?service=Deezer&albumid=693798541&playnow=1″ image=”/Artwork?service=Deezer&albumid=693798541″
browseKey=”Deezer:Album?artist=Ziak&album=Essonne%20History%20X&albumid=693798541″ text2=”Ziak” type=”album”>
<item text=”Favorite” type=”favourite-add” actionURL=”/AddFavourite?service=Deezer&albumid=693798541″/>
<item text=”Play now” type=”add-now”
aksyonURL=”/Add?service=Deezer&playnow=1&clear=0&shuffle=0&where=nextAlbum&albumid=693798541″/>
<item text=”Shuffle” type=”add-shuffle”
aksyonURL=”/Add?service=Deezer&shuffle=1&playnow=1&where=nextAlbum&albumid=693798541″/>
<item text=”Add next” type=”addAll-next” actionURL=”/Add?service=Deezer&playnow=-1&where=nextAlbum&albumid=693798541″/>
<item text=”Add last” type=”addAll-last” actionURL=”/Add?service=Deezer&playnow=-1&where=last&albumid=693798541″/>
…
Mga Tala at Pahiwatig sa Pagpapatupad
Ang uri ng katangian ng isang item ay ibinigay bilang isang pahiwatig na maaaring mapadali ang iba't ibang mga opsyon sa pagpapakita.
Ang kakayahang mag-browse sa mga nilalaman ng isang item ay ipinapahiwatig ng pagkakaroon ng isang katangian ng browseKey. Ang kakayahang maglaro ng isang (buong) item ay ipinahiwatig ng pagkakaroon ng isang dulaURL (at posibleng mag-autoplay dinURL) katangian. Ang isang item ay maaaring may parehong katangian ng browseKey at isang playURL katangian.
Kapag naglalaro ang dalawaURL at autoplayURL available ang mga attribute, kung alin ang gagamitin bilang default na opsyon sa pag-play ay dapat na paksa ng isang kagustuhan ng user.
Ang mga halaga ng URI ay karaniwang mga kamag-anak na URI na may ganap na bahagi ng path. Ang mga kaugnay na URI ay niresolba sa mga ganap na URI ayon sa RFC 3986.
Ang mga value ng attribute na browseKey, contextMenuKey at searchKey ay dapat palaging naka-encode ng URI (na-escape ang porsyento) kapag ginamit bilang halaga ng isang pangunahing parameter sa isang kahilingan sa /Browse, tulad ng anumang iba pang mga parameter ng kahilingan.
Kapag bumababa sa hierarchy ng pag-browse, maaaring maging kapaki-pakinabang para sa header ng page ng UI na magpakita ng ilang uri ng (mga) breadcrumb, marahil gamit ang pamagat (teksto) ng mga node ng magulang at lolo.
Maaaring maging kapaki-pakinabang na gawing available ang context-menu para sa magulang kapag nagba-browse sa mga anak nito.
Maaaring kapaki-pakinabang na isaalang-alang ang uri ng magulang kapag nagpapasya kung paano ipapakita ang mga anak nito.
7.2 Search Music Content
Paglalarawan
Utos na maghanap sa loob ng isang serbisyo.
Kahilingan
/Browse?key=key-value&q=searchText
| Mga Parameter | Paglalarawan |
| susi | Value na kinuha mula sa isang value ng attribute na "searchKey" mula sa isang naunang tugon |
| q | Ang string ng paghahanap. Magsagawa ng paghahanap sa kontekstong tinukoy ng key parameter (kinuha mula sa isang searchKey attribute mula sa isang tugon). Sa kawalan ng pangunahing parameter, magsagawa ng paghahanap sa pinakamataas na antas. |
Tugon
<browse sid=”16″ serviceIcon=”/Sources/images/DeezerIcon.png” serviceName=”Deezer”
service=”Deezer” searchKey=”Deezer:Search” type=”menu”>
Ibalik ang pinakamataas na antas ng resulta ng paghahanap. Para sa karagdagang resulta ng paghahanap ng Mga Artist, Album, Kanta, o Playlist, kailangan ang isang browse command na may "browseKey" bilang key.
Para kay example, para makita ang resulta ng paghahanap ng Albums, magpadala ng command:
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DDeezer%26expr%3Dmichael
Ang tugon ay magiging katulad ng tugon sa normal na /Browse command.
| Mga Katangian ng Tugon | Paglalarawan |
| Sumangguni sa mga talahanayan ng elemento/attribute sa utos na Mag-browse |
Example
http://192.168.1.100:11000/Browse?key=Deezer:Search&q=michael Maghanap para sa “michael” within the Deezer music service.
Pagpapangkat ng Manlalaro
Inilalarawan ng seksyong ito ang mga utos para sa default na pagpapangkat ng player at pag-ungroup. Sinusuportahan din ng BluOS ang nakapirming pagpapangkat, na wala sa saklaw para sa dokumentong ito.
Ginagamit ng BluOS ang terminolohiya na pangunahing manlalaro at pangalawang manlalaro. Ang pangunahing manlalaro ay ang pangunahing manlalaro sa pangkat. Ang pangunahing player ay ginagamit upang piliin ang pinagmulan ng musika. Mayroon lamang isang pangunahing manlalaro. Ang pangalawang manlalaro ay nakakabit sa pangunahing manlalaro. Maaaring mayroong maraming pangalawang manlalaro.
Kung ang isang manlalaro ay isang pangalawang manlalaro kung gayon maraming mga kahilingan, kung nakadirekta sa pangalawang manlalaro, ay panloob na proxied sa pangunahing manlalaro. Kabilang dito ang /Status, Playback Control, Play Queue Management at mga kahilingan sa Pagba-browse at Paghahanap ng Nilalaman.
8.1 Pangkat Dalawang Manlalaro
Paglalarawan
Magpangkat ng isang pangalawang manlalaro sa isang pangunahing manlalaro.
Kahilingan
/AddSlave?slave=secondaryPlayerIP&port=secondaryPlayerPort&group=GroupName
| Mga Parameter | Paglalarawan |
| alipin | IP address ng pangalawang manlalaro. |
| daungan | Numero ng port ng pangalawang manlalaro. Ang default na numero ng port ay 11000. Ang mga manlalaro tulad ng NAD CI580, na may apat na manlalaro na may isang IP, ay gumagamit ng maraming port. |
| pangkat | OPTIONAL, pangalan ng grupo. Kung hindi ibinigay, magbibigay ang BluOS ng default na pangalan ng grupo. |
Tugon
| Mga Katangian ng Tugon | Paglalarawan |
| port ng alipin | Port number ng pangalawang manlalaro na kaka-grupo lang. |
| Id | ID ng pangalawang manlalaro na kaka-grupo lang. |
Example
http://192.168.1.100:11000/AddSlave?slave=192.168.1.153&port=11000
Ipapangkat nito ang player 192.168.1.153 sa player na 192.168.1.100. Ang Manlalaro 192.168.1.100 ang pangunahing manlalaro.
8.2 Magdagdag ng Maramihang Manlalaro sa Isang Grupo
Paglalarawan
Magpangkat ng dalawa o higit pang manlalaro sa isang pangunahing manlalaro.
Kahilingan
/AddSlave?slaves=secondaryPlayerIPs&ports=secondaryPlayerPorts
| Mga Parameter | Paglalarawan |
| mga alipin | Mga IP address ng pangalawang manlalaro na idaragdag sa pangunahing manlalaro. Ang mga IP address ay pinaghihiwalay ng kuwit. |
| mga daungan | Ang mga port ng mga pangalawang manlalaro na idaragdag sa pangunahing manlalaro. Ang mga numero ng port ay pinaghihiwalay ng kuwit. |
Tugon
| Mga Katangian ng Tugon | Paglalarawan |
| daungan | Ang port ng pangalawang manlalaro na pinagsama-sama. |
| Id | Ang id ng pangalawang manlalaro na naka-grupo. |
Example
http://192.168.1.100:11000/AddSlave?slaves=192.168.1.153,192.168.1.120&ports=11000,11000
Ipangkat ang pangalawang manlalaro 192.168.1.153 at 192.168.1.120 sa pangunahing manlalaro 192.168.1.100.
8.3 Alisin ang Isang Manlalaro Mula sa Isang Grupo
Mag-alis ng manlalaro mula sa isang grupo. Kung aalisin ang pangalawang manlalaro mula sa isang grupo, ang pangalawang manlalaro ay aalisin sa pangkat. Kung aalisin ang pangunahing manlalaro mula sa isang pangkat ng 3 o higit pang mga manlalaro, ang pangunahing manlalaro ay aalisin sa pangkat at ang natitirang pangalawang manlalaro ay bubuo ng isang bagong grupo.
Kahilingan
/RemoveSlave?slave=secondaryPlayerIP&port=secondaryPlayerPort
| Mga Parameter | Paglalarawan |
| alipin | IP ng player (pangalawang) na idaragdag sa isa pang player (pangunahin). |
| daungan | Port ng player (pangalawang) na idaragdag sa isa pang player (pangunahin). |
Tugon
<SyncStatus icon=”/images/players/P300_nt.png” volume=”4″ modelName=”PULSE” name=”PULSE0278″ model=”P300″
tatak=”Bluesound” etag=”25″ outlevel=”-62.9″ schemaVersion=”25″ initialized=”true” group=”PULSE-0278+POWERNODE-0A6A” syncStat=”25″ id=”192.168.1.100:11000″mac=”90:56:82:9F:02:78″>
| Mga Katangian ng Tugon | Paglalarawan |
| Tingnan ang /SyncStatus para sa mga detalye. |
Example
http://192.168.1.100:11000/RemoveSlave?slave=192.168.1.153&port=11000
Inaalis sa pangkat ang manlalaro na 192.168.1.153 mula sa pangkat na mayroong pangunahing manlalaro na 192.168.1.100
8.4 Alisin ang Maramihang Manlalaro Mula sa Isang Grupo
Paglalarawan
Alisin ang dalawa o higit pang mga manlalaro mula sa isang grupo.
Kahilingan
/RemoveSlave?slaves=secondaryPlayerIPs&ports=secondaryPlayerPorts
| Mga Parameter | Paglalarawan |
| mga alipin | Ang mga IP address ng pangalawang manlalaro ay aalisin sa pangunahing manlalaro. Ang mga IP address ay pinaghihiwalay ng kuwit. |
| Mga Parameter | Paglalarawan |
| mga daungan | Ang mga port ng pangalawang manlalaro na aalisin sa pangunahing manlalaro. Ang mga numero ng port ay pinaghihiwalay ng kuwit. |
Tugon
<SyncStatus icon=”/images/players/P300_nt.png” volume=”4″ modelName=”PULSE” name=”PULSE0278″ model=”P300″ brand=”Bluesound” etag=”41″ outlevel=”-62.9″ schemaVersion=”25″ initialized=”true” syncStat=”41″ id=”192.168.1.100:11000″ mac=”90:56:82:9F:02:78″></SyncStatus>
| Mga Katangian ng Tugon | Paglalarawan |
| Tingnan ang /SyncStatus para sa mga detalye. |
Example
http://192.168.1.100:11000/RemoveSlave?slaves=192.168.1.153,192.168.1.120&ports=11000,11000
Inaalis ang mga manlalarong 192.168.1.153 at 192.168.1.120 mula sa pangkat na may pangunahing manlalaro na 192.168.1.100.
Pag-reboot ng Manlalaro
Inilalarawan ng seksyong ito ang command para sa soft reboot ng player.
9.1 I-reboot ang Isang Manlalaro
Paglalarawan
Soft reboot ang isang player.
Kahilingan
POST command /reboot na may parameter na oo (anumang halaga)
| Mga Parameter | Paglalarawan |
| oo | Anumang halaga (hal. 1). |
Tugon
Na-update ang Mga Setting
Nagre-reboot. Pakisara ang window na ito.
Mangyaring maghintay…
Example
curl -d yes=1 192.168.1.100/reboot
Mga Tunog ng Doorbell
Inilalarawan ng seksyong ito ang utos para sa tunog ng doorbell ng player.
10.1 Mga Tunog ng Doorbell
Paglalarawan
I-activate ang doorbell chimes.
Kahilingan
http://PLAYERIP:PORT/Doorbell?play=1
| Mga Parameter | Paglalarawan |
| maglaro | Maglaro ng doorbell (laging 1) |
Tugon
| Mga Katangian ng Tugon | Paglalarawan |
| paganahin | Ipahiwatig ang chime |
| dami | Dami ng chime |
| chime | Chime audio |
Example
http://192.168.1.100:11000/Doorbell?play=1 play doorbell chime
Direktang Input
Inilalarawan ng seksyong ito ang mga utos para sa pagpili ng direktang input source.
11.1 Aktibong Pagpili ng Input
Paglalarawan
Aktibong pagpili ng pinagmulan ng input. Gumagana ang command na ito para sa mga aktibong input na lumalabas sa tugon sa /RadioBrowse?service=Capture. Ang pagpili ng mga input ng BluOS HUB ay sinusuportahan lamang ng command na ito.
Kahilingan
/Maglaro?url=URL_halaga
| Mga Parameter | Paglalarawan |
| url | Ang URL attribute mula sa tugon sa /RadioBrowse?service=Capture |
Tugon
stream
| Mga Katangian ng Tugon | Paglalarawan |
| estado | Ipahiwatig na nagpe-play ang input |
Example
Hakbang 1. Kunin ang URL_value para sa parameter url
Kahilingan: http://192.168.1.100:11000/RadioBrowse?service=Capture
Tugon:
<item playerName=”Tick
Lagyan ng tsek ang” text=”Bluetooth” inputType=”bluetooth” id=”input2″ URL=”Capture%3Abluez%3Abluetooth” image=” /images/BluetoothIcon.png” type=”audio”/>
<item playerName=”Tick Tick” text=”Analog
Input” inputType=”analog” id=”input0″ URL=”Capture%3Aplughw%3Aimxnadadc%2C0%2F48000%2F 24%2F2%3Fid%3Dinput0″ image=”/images/capture/ic_analoginput.png” type=”audio”/>
<item playerName=”Tick Tick” text=”Optical
Input” inputType=”spdif” id=”input1″ URL=”Capture%3Ahw%3Aimxspdif%2C0%2F1%2F25%2F2%3Fid%
3Dinput1″ image=”/images/capture/ic_opticalinput.png” type=”audio”/>
<item playerName=”Tick
Lagyan ng tsek ang” text="Spotify" id="Spotify" URL=”Spotify%3Aplay” image=”/Sources/images/SpotifyIcon.png” serbisyo
Type=”CloudService” type=”audio”/>
<remoteitem playerName=”Test Hub” text=”Analog Input” inputType=”analog” id=”hub192168114911000input0″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput0″
larawan =”/images/capture/i
c_analoginput.png”
type="audio"/>
<remoteitem playerName=”Test Hub” text=”Coaxial Input” inputType=”spdif” id=”hub192168114911000input3″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput3″
image="/images/capture/ic
_opticalinput.png”
type="audio"/>
<remoteitem playerName=”Test Hub” text=”HDMI ARC” inputType=”arc” id=”hub192168114911000input4″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput4″
image="/images/capture/ic
_tv.png”
type="audio"/>
<remoteitem playerName=”Test Hub” text=”Optical Input” inputType=”spdif” id=”hub192168114911000input2″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput2″
image="/images/capture/ic
_opticalinput.png”
type="audio"/>
<remoteitem playerName=”Test Hub” text=”Phono Input” inputType=”phono” id=”hub192168114911000input1″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput1″
image="/images/capture/ic
_vinyl.png”
type="audio"/>
Hakbang 2. I-play ang Analog Input sa player
http://192.168.1.100:11000/Play?url=Capture%3Aplughw%3A2%2C0%2F48000%2F24%2F2%3Fid%3Dinput0 or play Analog Input of a HUB named “Test Hub”
http://192.168.1.100:11000/Play?url= Hub%3A%2F%2F192.168.1.149%3A11000%2Finput0
Tandaan: Siguraduhin na ang mga mapagkukunan ay konektado at hindi nakatago.
11.2 Panlabas na Pagpili ng Input
Paglalarawan
Panlabas na pagpili ng pinagmulan ng input. Minsan ang mga hindi aktibong panlabas na input ay maaaring hindi lumabas sa tugon sa
/RadioBrowse?service=Capture. Gumagana ang command na ito para sa parehong aktibo at hindi aktibong pagpili ng input. Inirerekomenda ito para sa pagpili ng panlabas na input ng CI.
Kahilingan (BluOS firmware na mas bago sa v3.8.0 at mas luma sa v4.2.0)
/Play?inputIndex=IndexId
| Mga Parameter | Paglalarawan |
| inputIndex | Ang index (nagsisimula sa 1) ng mga input na lumalabas sa tugon sa /Settings?id=capture&shcemaVersion=32 (32 ang pinakabagong bersyon ng schema) sa numerical order. Ang Bluetooth ay hindi kasama. |
Tugon
stream
| Mga Katangian ng Tugon | Paglalarawan |
| estado | Ipahiwatig na nagpe-play ang input |
Example
Hakbang 1. Kunin ang halaga ng inputIndex
Kahilingan: http://192.168.1.100:11000/Settings?id=capture&schemaVersion=32
Tugon:
<menuGroup icon=”/images/settings/ic_capture.png” url=”/setting” id=”capture”
displayName="I-customize ang mga mapagkukunan">
<setting icon=”/images/settings/ic_bluetooth.png” refresh=”true” url=”/audiomodes”
id=”bluetooth” displayName=”Bluetooth” value=”3″ name=”bluetoothAutoplay” description=”Disabled” explanation=”Pinapayagan ka ng manual mode na lumipat sa pagitan ng mga source sa navigation drawer. Lilipat ang awtomatikong mode sa pinagmumulan ng Bluetooth kapag nagsimulang mag-play ng audio ang isang nakakonektang Bluetooth device. Pagkatapos ay maaari kang lumipat sa pagitan ng mga mapagkukunan sa navigation drawer. Lilipat ang guest mode sa Bluetooth source kapag nagsimulang mag-play ng audio ang isang konektadong Bluetooth device. Kung lumipat ka sa ibang pinagmulan, madidiskonekta ang Bluetooth. Ang pinagmulan ng Bluetooth ay hindi lumalabas sa navigation drawer. Inaalis ng disabled ang source mula sa navigation drawer, at hindi pinapayagan ang isa pang device na kumonekta sa Player bilang Bluetooth
pinagmulan.” class="listahan">
…
<menuGroup icon=”/images/capture/ic_analoginput.png” url=”/setting” id=”captureinput0″
displayName="Analog
Input">
<menuGroup icon=”/images/capture/ic_opticalinput.png” url=”/setting” id=”capture-input1″
displayName="Optical Input">
Ipinapakita ng tugon ang Bluetooth, Analog Input, at Optical Input. Ang Bluetooth ay hindi kasama, kaya ang inputIndex value ay 1 para sa Analog Input, at inputIndex value ay 2 para sa Optical Input.'
Hakbang 2. I-play ang Optical Input sa player.
http://192.168.1.100:11000/Play?InputId=2
Kahilingan (BluOS firmware v4.2.0 o mas bago)
/Play?inputTypeIndex=$typeIndex
| Mga Parameter | Paglalarawan |
| inputTypeIndex | typeIndex ay may format na uri-index ng isang input. Narito ang listahan ng input uri: spdif (Optical Input) analog (Analog Input, Line In) coax (Coaxial Input) bluetooth arko (HDMI ARC) earc (HDMI eARC) phono (Vinyl) na computer aesebu (AES/EBU) balanse (Balanced In) mikropono (Input ng Mikropono) Ang index nagsisimula sa 1. Kapag mayroong higit sa isang input ng parehong uri, ang input 1 ay mayroon index 1, ang input 2 ay may index 2, at iba pa. |
Tugon
stream
| Mga Katangian ng Tugon | Paglalarawan |
| estado | Ipahiwatig na nagpe-play ang input |
Example
Kahilingan: http://192.168.1.100:11000/Play?inputTypeIndex=spdif-2 upang piliin ang Optical Input 2
Tugon: stream
Bluetooth
Inilalarawan ng seksyong ito ang utos na baguhin ang Bluetooth mode.
12.1 Baguhin ang Bluetooth Mode
Paglalarawan
Baguhin ang Bluetooth mode: Manwal, Awtomatiko, Bisita, Naka-disable.
Kahilingan
/audiomodes?bluetoothAutoplay=value
| Mga Parameter | Paglalarawan |
|
bluetoothAutoplay |
Mode ng Bluetooth halaga Ang 0 ay nangangahulugang Manwal, 1 ay nangangahulugang Awtomatiko, 2 ay nangangahulugang Bisita, 3 ay nangangahulugang Naka-disable. |
Walang tugon
Example
Kahilingan: http://192.168.1.100:11000/audiomodes?bluetoothAutoplay=3 upang huwag paganahin ang bluetooth
Apendise
13.1 Lenbrook Service Discovery Protocol
Panimula
Ang mga sikat na paraan ng pagtuklas gaya ng mDNS at SSDP ay gumagamit at umaasa sa UDP multicast na komunikasyon. Karamihan sa mga kasalukuyang produkto ng Lenbrook ay gumagamit ng mDNS para sa pagtuklas. Sa kasamaang-palad, nalaman namin na ang malaking bilang ng aming mga customer ay may mga home network kung saan ang trapiko ng multicast ay hindi gumagana nang tama at ang aming mga device ay hindi matutuklasan nang mapagkakatiwalaan. Nagresulta ito sa maraming pagbabalik ng produkto at mga reklamo mula sa aming mga distributor.
Upang matugunan ang isyung ito, gumawa kami ng custom na discovery protocol na tinatawag na LSDP na gumagamit ng UDP broadcast. Ipinakita ng paunang pagsubok na ito ay mas maaasahan kaysa sa pagtuklas na batay sa mDNS.
Tapos na ang Protocolview
Ang isang layunin ng protocol na ito ay maging medyo simple. Maaari itong gamitin sa mga naka-embed na device na may napakalimitadong memorya.
Ginagamit ng protocol ang lahat ng UDP broadcast packet papunta at mula sa UDP port 11430. Ang port na ito ay nakarehistro sa IANA at nakatalaga sa Lenbrook para sa paggamit ng LSDP noong Marso 27, 2014.
Sa steady state bawat node na may serbisyo para mag-advertise ay nag-broadcast ng mensaheng Announce humigit-kumulang bawat minuto.
Sa pagsisimula at kapag nagbago ang listahan ng serbisyo o mga parameter ng network, ang pitong packet ay dapat i-broadcast nang may maiikling agwat upang bigyang-daan ang paunang pagtuklas at mga pagbabago na lumaganap nang mas mabilis. Para sa mga serbisyo sa pag-advertise ng mga node, ang paunang pitong packet na ito ay dapat magsama ng mensahe ng Anunsyo. Para sa mga node na sumusubok na tumuklas ng mga serbisyo, ang unang pitong packet ay dapat magsama ng isang Query message. Para sa mga serbisyong hindi na magagamit ang pitong packet ay dapat may kasamang Delete message.
Ang mga paunang packet na ito ay ipinadala ng pitong beses dahil sa hindi mapagkakatiwalaang katangian ng mga UDP packet. Sa hindi malamang na kaso, ang lahat ng pitong packet ay nabigo sa mga serbisyo ay matutuklasan pa rin pagkaraan ng ilang sandali mula sa isang minutong pana-panahong mga mensaheng Anunsyo.
Kung ang isang node ay nakatanggap ng mensahe ng Query para sa isang klase ng serbisyo ito ay nag-a-advertise, ito ay dapat tumugon sa isang mensahe ng Anunsyo pagkatapos ng isang maikling random na pagkaantala ng oras at i-reset ang kasalukuyan nitong timeout ng Anunsyo.
Ang packet header at lahat ng mga bloke ng mensahe ay may kasamang mga field ng haba. Nagbibigay ito ng karagdagang flexibility at nagbibigay-daan para sa mga pabalik na katugmang pagbabago na magawa sa hinaharap. Maaaring magdagdag ng mga karagdagang field o uri ng mensahe sa hinaharap na maaaring laktawan ng mga mas lumang pagpapatupad kapag nag-parse. Kung nagpasya kaming gumawa ng pabalik na hindi tugmang pagbabago mayroon ding field ng bersyon sa header ng packet na maaaring dagdagan.
Pinapayagan din ng protocol na maisama ang mga tala ng TXT sa mga advertisement ng serbisyo na katulad ng mga tala ng TXT na ginamit
may mDNS. Nagbibigay ito ng makabuluhang flexibility para sa karagdagang arbitrary meta data na isasama sa serbisyo
mga patalastas nang hindi binabago ang protocol.
Mga Detalye ng Protocol
Timing
Ang lahat ng mga packet na ipinadala ay dapat na naka-iskedyul na may random na timing o mga pagkaantala upang makatulong na maiwasan ang mga banggaan.
- Startup Packet Timing: 7 Packet sa oras = [0, 1, 2, 3, 5, 7, 10s] + (0 hanggang 250ms random). Ito ay ganap na mga oras, hindi mga pagkaantala. Lahat ng 7 packet ay dapat ipadala sa loob ng humigit-kumulang 10 segundo.
- Pangunahing Panahon ng Anunsyo: 57s + (0 hanggang 6s random)
- Pagkaantala ng Pagtugon sa Query: (0 hanggang 750ms random)
Node ID
Ang bawat node ay dapat magkaroon ng isang natatanging ID na maaaring magamit upang makilala ang node. Ang natatanging ID ay kasama sa I-anunsyo at Tanggalin ang mga mensahe. Maaaring gamitin ng mga kliyente ang value na ito bilang pangunahing key kapag nagca-cache ng mga value at para natatanging tukuyin ang isang node. Ang natatanging ID na ito ay maaaring isang MAC address ngunit dapat ay pareho para sa bawat interface kung ang isang node ay maraming interface kung saan ito nag-a-advertise.
Istruktura ng Packet
Ang bawat packet ay nagsisimula sa isang packet header na sinusundan ng isang arbitrary na bilang ng mga bloke ng mensahe. Ang bawat bloke ng mensahe ay nagsisimula sa isang haba ng field upang ang mga hindi nakikilalang mensahe ay maaaring laktawan. Maliban kung tinukoy ang lahat ng mga multi-byte na halaga ng numero ay dapat na naka-imbak ng malaking endian (pinaka makabuluhang mga byte muna). Maliban kung tinukoy ang lahat ng mga numero ay mga unsigned value. Para kay exampAng haba ng isang byte ay maaaring magkaroon ng mga value na 0 hanggang 255.
Packet Header
| Patlang | Bytes | Paglalarawan |
| Ang haba | 1 | Kabuuang haba ng header kasama ang field na ito. |
| Magic Word | 4 | Ang field na ito ay ang apat na ASCII byte ng "LSDP". Nakakatulong ito sa amin na matukoy ang mga packet bilang nilayon para gamitin kaya hindi namin kailangang subukang mag-parse ng random na data mula sa ilang hindi inaasahang pinagmulan. |
| Bersyon ng Protocol | 1 | Bersyon ng protocol. Kung gagawin ang mga pagbabago sa hinaharap sa protocol na pabalik na hindi tugma sa bersyong ito |
| Patlang | Bytes Paglalarawan | |
| ay mababago. Ang kasalukuyang bersyon ay 1. | ||
Query Message
| Patlang | ||
| Bytes | Paglalarawan | |
| Ang haba | 1 | Kabuuang haba ng mensahe kasama ang field na ito. |
| Uri ng Mensahe | 1 | “Q” = 0x51: Karaniwang query para sa tugon sa broadcast. “R” = 0x52: Query para sa unicast na tugon. |
| Bilangin | 1 | Bilang ng mga klase na itatanong. |
| Klase 1 | 2 | 16 bit (2 byte) class identifier. |
| … | Ulitin ang nakaraang field para sa bawat karagdagang klase. | |
Ipahayag ang Mensahe
Ipahayag ang Header
| Patlang | ||
| Bytes | Paglalarawan | |
| Ang haba | 1 | Kabuuang haba ng mensahe kasama ang kumpletong announce header at announce records. |
| Uri ng Mensahe | 1 | “A” = 0x41 |
| Haba ng Node ID | 1 | Haba ng field ng Node ID. |
| Node ID | Variable | Natatanging Node ID ng node na nagpapadala ng anunsyo. Ito ay karaniwang ang MAC address ng isa sa mga node interface. |
| Haba ng Address | 1 | Field ng Haba ng Address. Para sa IPv4 ito ay dapat na 4. |
| Patlang | ||
| Bytes | Paglalarawan | |
| Address | Variable | IP address ng node. |
| Bilangin | 1 | Bilang ng mga rekord ng anunsyo na susundan. |
Ipahayag ang Record
| Patlang | Bytes | Paglalarawan |
| Klase | 2 | 16 bit (2 byte) class identifier. |
|
Bilang ng TXT |
1 |
Bilang ng mga tala ng TXT na susundan. Kung zero ang mga sumusunod na field ay tinanggal. |
| Susi 1 Haba | 1 | Haba ng key name. |
| Susi 1 | Variable | Pangalan ng susi. |
| Halaga 1 Haba | 1 | Haba ng text ng value. |
| Halaga 1 | Variable | Teksto ng halaga. |
|
… |
Ulitin ang nakaraang 4 na field para sa bawat karagdagang TXT record. |
Tanggalin ang Mensahe
| Patlang | ||
| Bytes | Paglalarawan | |
| Ang haba | 1 | Kabuuang haba ng mensahe kasama ang field na ito. |
| Uri ng Mensahe | 1 | “D” = 0x44 |
| Haba ng Node ID | 1 | Haba ng field ng Node ID. |
| Node ID | Variable | Natatanging Node ID ng node na nagpapadala ng mensahe. Ito ay karaniwang MAC address ng isa sa mga node |
| Patlang | ||
| Bytes | Paglalarawan | |
| mga interface. | ||
| Bilangin | 1 | Bilang ng mga klase na susundan. |
| Klase 1 | 2 | 16 bit (2 byte) class identifier. |
| … | Ulitin ang nakaraang field para sa bawat karagdagang klase. | |
Mga Takdang-aralin sa Class ID
| Class ID | Paglalarawan | Katumbas ng mDNS |
| 0x0001 | BluOS Player | _musc._tcp |
| 0x0002 | BluOS Server | _muss._tcp |
| 0x0003 | BluOS Player (pangalawa sa mga multi-zone na manlalaro tulad ng CI580) | _musp._tcp |
| 0x0004 | sovi-mfg na ginagamit para sa pagsubok sa pagmamanupaktura. | _sovi-mfg._tcp |
| 0x0005 | sovi-keypad | _sovi-keypad._tcp |
| 0x0006 | BluOS Player (pares na alipin) | _musz._tcp |
| 0x0007 | Remote Web App (AVR OSD Web pahina) | _malayuan-web-ui._tcp |
| 0x0008 | BluOS Hub | _mush._tcp |
| 0xFFFF | Lahat ng Klase – Maaaring gamitin sa Query Message. |
Tandaan 1:
Ang kabuuang LSDP packet ay kailangang ituring bilang binary data.
Tandaan 2:
Kung hindi mahawakan ng isang Mensahe ng Anunsyo ang lahat ng impormasyon ng node (lalo na ang CI580), mahahati ito sa 2 o higit pang Mga Mensahe ng Anunsyo sa bawat Mensahe na naglalaman ng Header at Record at ang bawat Mensahe ay nagtataglay ng buong (mga) impormasyon ng node.
BluOS Custom Integration API Bersyon 1.7
Mga Dokumento / Mga Mapagkukunan
![]() |
BluOS T 778 Custom Integration API [pdf] User Manual T 778, T 778 Custom Integration API, T 778, Custom Integration API, Integration API, API |
