Vlastní integrační API
Rozhraní API pro vlastní integraci T 778
Informace obsažené v této příručce jsou majetkem společnosti Lenbrook Industries.
Je určen výhradně pro profesionální použití. Společnost Lenbrook Industries nepřebírá žádnou odpovědnost za přesnost protokolu. Protokol je poskytován „tak, jak je“, se všemi chybami a bez jakékoli záruky, ať už výslovné nebo implicitní.
Zásady používání API
Přístupem k API souhlasíte s těmito Zásadami používání API („Zásady“) a našimi Podmínkami. Tato API poskytujeme, abychom umožnili společnostem a jednotlivcům stavět na naší Službě a využívat její výhody vytvářením softwaru, služeb nebo modulů, které se připojují k naší platformě nebo mají přístup k datům v rámci naší platformy prostřednictvím našich API („Integrace“). Tyto Zásady jsou a budou považovány za součást našich Podmínek.
Software je poskytován „TAK, JAK JE“, bez jakékoli záruky, výslovné či implicitní, včetně, ale nikoli výhradně, záruk prodejnosti, vhodnosti pro konkrétní účel a neporušení práv. Autoři ani držitelé autorských práv nenesou v žádném případě odpovědnost za jakékoli nároky, škody ani jinou odpovědnost, ať už v rámci smluvního jednání, občanskoprávního deliktu nebo jinak, vyplývající ze softwaru nebo z jeho použití či jiných nakládání se softwarem, na jejich základě nebo v souvislosti s nimi.
Povolené použití
Rozhraní API nesmíte používat k odesílání spamu ani provádět jakékoli akce, které porušují naše Zásady přijatelného užívání a naše Standardní podmínky užívání. Budete dodržovat všechny platné zákony (včetně zákonů o ochraně osobních údajů a zákonů Spojených států o kontrole vývozu, evropských obecných zásad a předpisů a zákonů a předpisů o hospodářských sankcích). Budete dodržovat veškerou dokumentaci, kterou k rozhraním API poskytneme. Nebudete se pokoušet o hackování ani změnu fungování služby. Můžeme sledovat vaše používání rozhraní API z hlediska souladu s těmito pravidly a můžeme vám odepřít přístup k rozhraní API, pokud tyto Zásady porušíte.
Soukromí
Vaše Integrace musí pro uživatele zobrazovat zásady ochrany osobních údajů s podrobným popisem informací, které od nich budete shromažďovat při používání integrace. K datům uživatele budete mít přístup pouze v rozsahu povoleném uživatelem a vysvětleném ve vašich zásadách ochrany osobních údajů. Pokud uživatel požádá o smazání nebo ukončí svůj účet u vás, musíte data uživatele okamžitě smazat.
Zabezpečení
Zavedete a budete udržovat vhodná technická a organizační bezpečnostní opatření k ochraně a zachování bezpečnosti, integrity a důvěrnosti údajů. Tato bezpečnostní opatření zabrání neoprávněnému přístupu k osobním nebo důvěrným údajům, které zpracováváte, nebo jejich zveřejnění.
Vlastnictví
Vlastníme veškerá práva, tituly a podíly na Službě a API, včetně všech práv duševního vlastnictví, ochranných známek, kódu a funkcí. Nebudete porušovat, zpětně analyzovat ani kopírovat náš kód, design ani obsah. Nebudete přistupovat k našim API za účelem konkurence s naší Službou. Jakákoli práva, která nejsou výslovně udělena těmito Zásadami, jsou zadržována, takže pokud je zde nevidíte, pak vám toto právo neudělujeme.
Používání ochranných známek
Nesmíte žádným způsobem používat náš název a ochranné známky (tj. naše loga, značky a obrázky chráněné autorskými právy). Nesmíte měnit ani odstraňovat žádná oznámení o vlastnictví v našich ochranných známkách. Nesmíte používat náš název ani ochranné známky ve svém názvu nebo logu Integrace ani žádným způsobem, který by naznačoval naši podporu.
Praktické využití ochranných známek
Tyto pokyny vysvětlují, jak musíte v praxi vždy používat náš název, ochranné známky a prvky značky. Vaše používání vyjadřuje váš souhlas s těmito pokyny a berete na vědomí, že vaše použití v rozporu s těmito pokyny bude mít za následek automatické ukončení vašeho oprávnění používat náš název, ochranné známky a prvky značky.
- Používání našeho názvu, ochranných známek a brandových prvků musí být výslovně písemně schváleno.
- Žádným způsobem neměňte, neupravujte, nezkreslujte, nekopírujte ani nenapodobujte naše značkové prvky, včetně změny barvy, otáčení a/nebo roztahování. Jinými slovy, naše značkové prvky musí být zachovány v původní podobě.
- Nedávejte našemu názvu, ochranným známkám a značkám nepřiměřeně velký význam ve srovnání s vaším názvem a logem.
- Nezobrazujte naše jméno, ochranné známky a prvky značky vedle konkurenčního marketingu ani v žádné formě konkurenčního marketingu bez našeho výslovného souhlasu.
- Vaše užívání nesmí uvádět spotřebitele v omyl ohledně našeho sponzorování, spojení s vaší společností nebo vašimi produkty či službami nebo jejich podpory.
- Naše jméno, ochranné známky a značkové prvky jsou naším výhradním vlastnictvím. Veškerá dobrá pověst, která vznikne z vašeho užívání, bude výhradně v náš prospěch. Nepodniknete žádné kroky, které by byly v rozporu s našimi právy nebo vlastnictvím.
- Naše jméno, ochranné známky a značkové prvky musí být používány s respektem a nesmí být používány způsobem, který by poškozoval nás, naše produkty nebo služby, nebo způsobem, který by podle našeho názoru snižoval nebo jinak poškozoval naši pověst nebo dobrou pověst spojenou s naším jménem, ochrannými známkami a značkovými prvky. Jinými slovy, prosím, nespojujte naše prvky s žádnými nezákonnými nebo ilegálními aktivitami ani je nepoužívejte způsobem, který je klamavý nebo škodlivý.
ExampMéně přijatelného použití:
„[NÁZEV VAŠEHO PRODUKTU] (kompatibilní s / funguje s BluOS)“
Exampméně nepřijatelného použití
„[NÁZEV VAŠEHO PRODUKTU] – BluOS“
„BluOS – [NÁZEV VAŠEHO PRODUKTU]“
„[NÁZEV VAŠEHO PRODUKTU] – S operačním systémem BluOS“
Marketingové a tiskové zprávy
Po schválení vaší žádosti může být uvedena na našich web vlastnosti. Obecně nebudeme společně publikovat tiskové zprávy ani se podílet na společném marketingu vaší aplikace.
Než zveřejníte tiskovou zprávu o vaší aplikaci, nezapomeňte nás kontaktovat na adrese [EMAIL]. Pokud se budete zmiňovat o systému BluOS, budeme vás muset znovu kontaktovat.view tiskovou zprávu. Doporučujeme vám co nejdříve zaslat finální verzi tiskové zprávy.
Zřeknutí se odpovědnosti
V maximálním rozsahu povoleném zákonem poskytujeme API tak, jak jsou. To znamená, že neposkytujeme žádné záruky žádného druhu, ať už výslovné nebo implicitní, včetně, ale nikoli výhradně, záruk prodejnosti a vhodnosti pro konkrétní účel.
Aktualizace
Rozhraní API a tyto Zásady můžeme čas od času aktualizovat nebo upravovat zveřejněním změn na těchto stránkách nebo oznámením e-mailem. Tyto změny mohou ovlivnit vaše používání rozhraní API nebo způsob, jakým vaše Integrace s rozhraním API interaguje. Pokud provedeme změnu, která je pro vás nepřijatelná, měli byste rozhraní API přestat používat.
Důvěrnost
Můžete mít přístup k důvěrným, vlastnickým a neveřejným informacím specifickým pro API („důvěrné informace“). Tyto informace smíte použít pouze k sestavování pomocí API. Důvěrné informace nikomu nesdělíte bez našeho písemného souhlasu a budete je chránit před neoprávněným použitím a zveřejněním stejným způsobem, jakým byste chránili své vlastní důvěrné informace.
Odškodnění
Odškodníte nás a náš tým za jakékoli ztráty (včetně poplatků za právní zastoupení), které vyplývají z nároků třetích stran souvisejících s vaším používáním API, a zbavíte je odpovědnosti.
Ostatní
Tyto Zásady nevytvářejí ani neimplikují žádné partnerství, zastoupení ani společný podnik. Tyto Zásady platí po dobu, kdy používáte API, nebo dokud nebudou ukončeny v souladu s našimi Podmínkami. V případě rozporu mezi těmito Zásadami a Standardními podmínkami používání mají přednost Standardní podmínky používání.
©2025 LENBROOK INDUSTRIES LIMITED
633 Granite Court, Pickering, Ontario, Kanada L1W 3K1
Všechna práva vyhrazena
Žádná část této publikace nesmí být reprodukována, ukládána ani přenášena v jakékoli formě bez písemného souhlasu společnosti Lenbrook Industries Limited. Přestože bylo vynaloženo veškeré úsilí k zajištění přesnosti obsahu v době vydání, funkce a specifikace se mohou změnit bez předchozího upozornění.
| Historie revizí | ||
| Verze | Datum | Popis |
| 1.0 | 6. 17. 2019 | První vydání |
| 1.2 | 01. 12. 2022 | Přidán měkký restart, zvonek zvonku, zvýšení/snížení hlasitosti, přesun skladby ve frontě a příkazy pro přímé zadávání. Přidána poznámka k dodatku LSDP. |
| 1.4 | 04. 26. 2022 | Přidán příkaz pro ztlumení; upraveny příkazy pro přímé zadávání pro HUB; aktualizován příkaz Přehrát pro přehrávání streamovaného vlastního zvuku. |
| 1.5 | 07. 18. 2022 | Přidán příkaz Bluetooth; Aktualizován protokol LSDP o třídy 5 až 8; V zásadách používání API přidána část „Praktické použití ochranných známek“. |
| 1.6 | 03. 13. 2024 | Přidána poznámka k /Stav pro seskupené hráče v sekci 2; /Play?seek=seconds is=trackid v sekci 4.1; |
| 1.7 | 04. 09. 2025 | Aktualizovaný oddíl 8.3 example; Přidán požadavek na procházení v kontextové nabídce exampv sekci 7.1; přidán nový příkaz pro přímý výběr vstupu v sekci 11.2; aktualizována sekce 6.1 a přidán atribut „image“ pro předvolby; přidán komentář „followRedirects=1“ pro všechny atributy obrázků; aktualizováno vysvětlení atributů přehráváníURL a doplněk v sekci 7.1 |
Zavedení
BluOS™ je pokročilý operační systém a software pro správu hudby, který vám umožňuje přístup k bezztrátové hudbě a její streamování až do 24bitové/192kHz rozlišení do každé místnosti prostřednictvím vaší domácí sítě. BluOS najdete v produktech značek Bluesound, NAD Electronics, DALI Loudspeakers a dalších.
Tento dokument byl vytvořen na pomoc vývojářům a systémovým integrátorům, kteří pracují na trhu s vlastní integrací (CI). Obsahuje podmnožinu požadavků API zdokumentovaných v plném protokolu BluOS API Control Protocol.
Všechny požadavky popsané v tomto dokumentu jsou odesílány jako HTTP GET požadavky. Parametry jsou standardní URL kódovaný pár název/hodnota. Přehrávače BluOS tyto příkazy přijímají a poté odpovídají daty XML kódovanými UTF-8.
Všechny požadavky jsou ve formátu http:// : / kde:
- player_ip je IP adresa přehrávače BluOS (např. 192.168.1.100)
- Port je port TC používaný pro komunikaci. Port 11000 se používá pro všechny přehrávače BluOS, s výjimkou CI580. CI580 má v jednom šasi čtyři streamovací uzly, kde uzel 1 používá port 11000, uzel 2 používá port 11010, uzel 3 používá port 11020 a uzel 4 používá port 11030. Skutečný port, který se má použít, by měl být zjištěn pomocí protokolu MDNS s využitím služeb musc.tcp a musp.tcp.
- požadavek je skutečný příkaz nebo dotaz systému BluOS (např. Přehrát)
Poznámka: Tento dokument bude používat http://192.168.1.100:11000 jako IP adresa a port hráče ve všech examples.
Dotazy na stav
Dotazy na stav se používají k dotazování přehrávače BluOS.
BluOS nabízí dva mechanismy pro provádění dotazů na stav: běžné dotazování a dlouhé dotazování. Běžné dotazování vrací výsledek dotazu okamžitě. Dlouhé dotazování udržuje spojení po určitou dobu a vrací výsledek dotazu pouze v případě změny informací nebo vypršení časového limitu. Dlouhé dotazování může výrazně snížit počet volání hráče.
Pokud se nepoužívá dlouhé dotazování, klienti by měli omezit frekvenci dotazování na maximálně jeden požadavek každých 30 sekund. Pokud se používá dlouhé dotazování, klient nesmí provést dva po sobě jdoucí požadavky na stejný zdroj s odstupem kratším než jedna sekunda, a to ani v případě, že první požadavek se vrátí za méně než jednu sekundu.
Dlouhé požadavky na dotazování přijímají dva parametry: timeout a e.tag. timeout je doba trvání požadavku na dlouhý dotaz a etag je převzat z předchozí odpovědi (atribut v kořenovém elementu odpovědi).
Obecně je nutné mít aktivní dlouhý dotaz pouze pro jeden z parametrů /Status nebo /SyncStatus. Odpověď /Status obsahuje element ( ), který indikuje, zda se změnil /SyncStatus. /SyncStatus by se měl dotazovat, pokud je zajímavý pouze název, hlasitost a stav seskupení přehrávače. /Status by se měl dotazovat, pokud je potřeba aktuální stav přehrávání.
Když jsou hráči seskupeni, primární hráč je hlavním hráčem ve skupině. Sekundární hráči jsou připojeni k primárnímu hráči. Odpovědi /Status sekundárních hráčů jsou kopiemi odpovědí primárního hráče. Pro sledování hlasitosti každého sekundárního hráče je pak nutné dlouhé dotazování /SyncStatus.
2.1 Stav přehrávání
Popis
Koncový bod /Status dotazuje informace o hlasitosti a přehrávání. Tento dotaz vrací mnoho atributů odpovědi,
některé z nich se na tento dokument nevztahují. Nedokumentované odpovědi by měly být ignorovány.
Žádost
/Status?timeout=sekundy&etag=etag-hodnota
| Parametry | Popis |
| časový limit | Volitelný parametr používaný při dlouhém dotazování. Doporučený interval dotazování je 100 sekund a měl by být omezen na přibližně 60 sekund a nikdy ne rychlejší než 10 sekund. |
| etag | Volitelný parametr používaný při dlouhém dotazování. Toto je etag atribut z |
| Parametry | Popis |
| předchozí odpověď na volání /Status. |
Odpověď
<status etag=”4e266c9fbfba6d13d1a4d6ff4bd2e1e6″>
÷ (Deluxe)
Ed Sheeran
věrný
1
159
Deezer:142986206
/Umělecké dílo?služba=Deezer&gid skladby=Deezer%3A142986206
0
187
1
Perfektní
1054
0
320000
2
Deezer
/Zdroje/obrázky/DeezerIcon.png
0
8
19
pauza
MP3 320 kb/s
5
Perfektní
Ed Sheeran
÷ (Deluxe)
263
4
35 let
POZNÁMKA: V následující tabulce nejsou uvedeny všechny atributy odpovědi. Mohou být přítomny i další prvky, které by měly být ignorovány.
| Atributy odpovědi | Popis |
| etag | Atribut kořenového elementu odpovědi. Neprůhledná hodnota používaná při dlouhém dotazování k detekci změn odpovědi. Pokud se hodnota od předchozí odpovědi nezměnila, je zaručeno, že se odpověď nezměnila (viz také níže uvedené body). |
| zbývající sekundy alarmu | Pokud je přehrávání výsledkem alarmu, pak se jedná o počet sekund, než se zastaví. |
| akce | Popis naleznete v části Akce pro streamované rozhlasové stanice. |
| album | Název alba aktuálně aktivní skladby. Viz také atribut title1. |
| umělec | Jméno interpreta aktuálně aktivní skladby. Viz také atribut title1. |
| baterie | Zobrazuje se, pokud má hráč baterii. Zahrnuje atributy: · level – stav nabití, procenta · nabíjení – 1, pokud se právě nabíjí · ikona – URL obrázek přehrávače zobrazující aktuální stav nabití |
|
canMovePlayback |
Platí, pokud je možné přesunout aktuálně přehrávaný nebo pozastavený obsah do jiného přehrávače. |
|
canSeek |
Pokud je 1, pak je možné procházet aktuální skladbu v rozsahu 0..totlen pomocí parametru seek pro /Play. Např.ample: /Play?seek=34. |
| db | Úroveň hlasitosti v dB. |
| Název skupiny | Název skupiny. Hráč musí být hlavním hráčem ve skupině. |
| skupina Objem | Úroveň hlasitosti skupiny. Hráč musí být hlavním hráčem ve skupině. |
| obraz | URL obrazu spojeného s aktuálním zvukem (album, stanice, vstup atd.). Pokud |
| Atributy odpovědi | Popis |
| a URL začíná na /Artwork, může to vést k přesměrování. Přidání parametru/klíče followRedirects=1 při načítání obrázku se lze vyhnout přesměrování. | |
| ztlumit | Ztlumení. Nastavte na 1, pokud je hlasitost ztlumená. |
| muteDb | Pokud je přehrávač ztlumený, obsahuje toto číslo hlasitost v dB po ztlumení. |
| ztlumitHlasitost | Pokud je zvuk ztlumený, obsahuje toto pole úroveň hlasitosti v neztlumeném stavu. Hodnoty jsou od 0 do 100. |
| jméno | Název aktuálně přehrávané zvukové stopy. Viz také atribut title1. |
| oznámiturl | URL pro vyskakovací oznámení. |
| id | Jedinečné ID fronty přehrávání. Shoduje se s atributem id odpovědi /Playlist. Pokud se fronta přehrávání změní, toto číslo se změní. |
| zbavit | Jedinečné ID předvolby. Odpovídá atributu prid v odpovědi /Presets. Pokud se předvolba změní, toto číslo se změní, což znamená, že veškerá odpověď na /Presets uložená v mezipaměti by měla být vymazána. |
| kvalitní | Kvalita přehrávaného zdrojového zvuku: · cd – bezztrátový zvuk v CD kvalitě · hd – bezztrátový zvuk s vyšším rozlišením než CD kvalita nebo sample- rychlost 88200 sampméně nebo více · dolbyAudio – DolbyDigital nebo AC3 · mqa – dekódovaný platný zvuk MQA · mqaAuthored – platný dekódovaný zvuk autorizovaný službou MQA Číselná hodnota je přibližná bitová rychlost komprimovaného zvukového zdroje dané kvality. file. |
|
opakovat |
0, 1 nebo 2. 0 znamená opakované přehrávání, 1 znamená opakování skladby a 2 znamená vypnutí opakování. |
| sekund | Počet sekund, po které byla aktuální zvuková stopa přehrávána. Tato hodnota se nepoužívá při výpočtu e.tag a průběh sám o sobě nezpůsobí návrat z dlouhého dotazování. Klienti jsou povinni zvýšit pozici přehrávání, když je stav přehrávání nebo streamování, na základě intervalu od odpovědi. |
| servis | ID služby aktuálního zvuku. Toto není hodnota pro zobrazení v uživatelském rozhraní, protože |
| Atributy odpovědi | Popis |
| Skutečný řetězec se může lišit od oficiálního názvu služby. | |
| Ikona služby | URL ikony aktuální služby. |
| zamíchat | 0 nebo 1. 0 znamená, že náhodné přehrávání je vypnuto a 1 znamená, že náhodné přehrávání je zapnuto. |
| spát | Zbývající minuty do aktivace časovače vypnutí. |
| píseň | Pozice aktuální skladby ve frontě přehrávání. Viz také stream.Url. |
| stát | Aktuální stav přehrávače. Může to být přehrávání, pozastavení, zastavení, streamování, připojování atd. Příkaz /Play lze použít k obnovení přehrávání v pozastaveném stavu, ale ne v zastaveném stavu. Slova play a stream by měla mít stejný význam. Viz také streamUrl. |
|
Obrázek stanice |
URL pro obrázek rozhlasové stanice, pokud je aktuální zvuk rozhlasovou stanicí, např. rádio Deezer. Může být stejný jako obrázek. |
| streamFormat | Formát zvuku. |
| proudUrl | Přítomnost tohoto prvku by měla být považována za příznak a jeho obsah za neprůhlednou hodnotu. Pokud je přítomen, znamená to: · Fronta přehrávání není zdrojem aktuálního zvuku (skladba je irelevantní) · Náhodné přehrávání a opakování nejsou relevantní a měly by být pokud možno odstraněny z jakéhokoli uživatelského rozhraní · Další a předchozí nejsou k dispozici (viz také akce) |
| synchronizaceStat | Jedinečné ID pro indikaci jakékoli změny v odpovědi /SyncStatus. Odpovídá atributu syncStat odpovědi /SyncStatus. Změní se vždy, když dojde ke změně stavu synchronizace. |
| titul1 | První řádek informací popisujících aktuální audio. titul1, titul2 a titul3 MUSÍ být použito jako text jakéhokoli uživatelského rozhraní, které zobrazuje tři řádky metadat o právě přehrávané skladbě. Nepoužívejte hodnoty jako album, interpret a název. |
| titul2 | Druhý řádek informací popisující aktuální zvuk. |
| titul3 | Třetí řádek informací popisující aktuální zvuk. |
| totlen | Celková délka aktuální skladby v sekundách. |
| twoline_title1 | První ze dvou řádků popisujících aktuální zvuk. twoline_title1 a twoline_title2, pokud jsou přítomny, MUSÍ být použity jako text jakéhokoli uživatelského rozhraní, které zobrazuje dva |
| Atributy odpovědi | Popis |
| řádky metadat právě přehrávaného obsahu. | |
| twoline_title2 | Druhý ze dvou řádků popisujících aktuální zvuk. |
| objem | Úroveň hlasitosti přehrávače v procentechtage; -1 znamená, že hlasitost hráčů je fixní. |
| sekund | Počet sekund, po které byla přehrána aktuální zvuková stopa. |
Example
http://192.168.1.100:11000/Status
Získá stav přehrávání přehrávače.
http://192.168.1.100:11000/Status?časový limit=100&etag=4e266c9fbfba6d13d1a4d6ff4bd2e1e6
Získá stav přehrávání hráče pomocí dlouhého dotazování. Výsledek je vrácen pouze před uplynutím časového limitu 100 sekund, pokud se stav hráče změnil. V opačném případě je výsledek vrácen po 100 sekundách.
2.2 Stav synchronizace hráčů a skupin
Popis
Dotaz SyncStatus vrací informace o hráči a informace o seskupení hráčů. Tento dotaz vrací mnoho atributů odpovědi, z nichž některé se na tento dokument nevztahují. Nedokumentované odpovědi by měly být ignorovány.
Žádost
/SyncStatus?timeout=sekundy&etag=etag-hodnota
| Parametry | Popis |
| časový limit | Volitelný parametr používaný při dlouhém dotazování. Jedná se o interval dotazování v sekundách. Doporučený interval dotazování je 180 sekund. |
| etag | Volitelný parametr používaný při dlouhém dotazování. Toto je etag atribut z předchozí odpovědi na volání /SyncStatus. |
Odpověď
<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″ mac=”90:56:82:9F:02:78″> 11000
…..
POZNÁMKA: V následující tabulce nejsou uvedeny všechny atributy odpovědi. Mohou být přítomny i další prvky, které by měly být ignorovány.
| Atributy odpovědi | Popis |
| baterie | Zobrazuje se, pokud má hráč baterii. Zahrnuje atributy: · level – stav nabití, procenta · nabíjení – 1, pokud se právě nabíjí · ikona – URL obrázek přehrávače zobrazující aktuální stav nabití |
| značka | Název značky hráče. |
| db | Úroveň hlasitosti v dB. |
| etag | Tag odpovědi /SyncStatus, používané pro dlouhé dotazování. |
| skupina | Název skupiny. |
| ikona | URL který obsahuje obrázek ikony přehrávače. |
| id | IP adresa a port hráče. |
| inicializováno | True znamená, že přehrávač je již nastaven, false znamená, že přehrávač je třeba nastavit. Přehrávač musí být nastaven pomocí aplikace BluOS Controller. |
| mac | Jedinečné ID hráče pro síťové rozhraní. Může to být MAC adresa. |
| zvládnout | IP adresa hlavního hráče. Zobrazuje se pouze v případě, že je hráč sekundárním hráčem ve skupině. Atributy: · port – číslo portu. · opětovné připojení – true, pokud se pokoušíte znovu připojit k primárnímu hráči |
| model | ID modelu hráče. |
| jméno modelu | Název modelu přehrávače. |
| ztlumit | Nastavte na 1, pokud je hlasitost ztlumená. |
| muteDb | Pokud je přehrávač ztlumený, jedná se o neztlumenou úroveň hlasitosti v dB. |
| Atributy odpovědi | Popis |
| ztlumitHlasitost | Pokud je přehrávač ztlumený, jedná se o úroveň hlasitosti bez ztlumení (0..100). |
| jméno | Jméno hráče. |
| Verze schématu | Verze softwarového schématu. |
| otrok | IP adresy sekundárních hráčů. Zobrazuje se pouze v případě, že hráč je primárním hráčem skupiny. Může být více sekundárních hráčů. Atributy: · id – IP adresa · port – číslo portu |
|
synchronizaceStat |
ID stavu synchronizace. Změní se vždy, když se změní jakákoli položka v odpovědi /SyncStatus. Porovnává se s element v odpovědi /Status. |
| objem | Úroveň hlasitosti na stupnici od 0 do 100. -1 znamená pevnou hlasitost. |
| zóna | Název pevné skupiny. |
| ZoneMaster | Pokud je hráč primárním hráčem v pevné skupině, je toto nastaveno na hodnotu true. |
| zoneSlave | Pokud je hráč sekundárním hráčem v pevné skupině, je toto nastaveno na hodnotu true. |
Example
http://192.168.1.100:11000/SyncStatus
Získá stav hráče a skupiny hráče.
http://192.168.1.100:11000/SyncStatus?časový limit=100&etag=4e266c9fbfba6d13d1a4d6ff4bd2e1e6
Získá stav hráče a skupiny pomocí dlouhého dotazování. Výsledek je vrácen pouze před uplynutím časového limitu 100 sekund, pokud se stav hráče změnil. V opačném případě je výsledek vrácen po 100 sekundách.
Ovládání hlasitosti
Upravuje úroveň hlasitosti přehrávače. Používá se také k ztlumení přehrávače.
3.1 Nastavení hlasitosti
Popis
Tento požadavek dotazuje nebo nastavuje hlasitost přehrávače.
Všechny varianty příkazů, ať už používají parametry úrovně 0..100, absolutní dB nebo relativní dB, jsou omezeny na hodnoty, které vedou k úrovni v rámci nakonfigurovaného dostupného rozsahu hlasitosti, který je obvykle -80..0. Rozsah hlasitosti lze upravit pomocí aplikace BluOS Controller na stránce Nastavení -> Přehrávač -> Zvuk.
Dotaz podporuje dlouhé dotazování (není znázorněno níže).
Žádost
/Objem
/Hlasitost?úroveň=úroveň&tell_slaves=zapnuto_vypnuto
/Hlasitost?ztlumit=zapnuto_vypnuto&tell_slaves=zapnuto_vypnuto
/Hlasitost?abs_db=db&tell_slaves=on_off
/Hlasitost?db=delta-db&tell_slaves=on_off
| Parametry | Popis |
| úroveň | Nastavte absolutní úroveň hlasitosti přehrávače. Je to celé číslo od 0 do 100. |
| tell_slaves | Platí pro seskupené hráče. Pokud je nastaveno na 0, hlasitost se změní pouze u aktuálně vybraného hráče. Pokud je nastaveno na 1, hlasitost se změní u všech hráčů ve skupině. |
| ztlumit | Pokud je nastaveno na 0, hráč je ztlumený. Pokud je nastaveno na 1, hráč je ztlumený. |
| abs_db | Nastavte hlasitost pomocí dB stupnice. |
| db | Proveďte relativní změnu hlasitosti pomocí stupnice hlasitosti v dB. dB může být kladné nebo záporné číslo. |
Odpověď
<volume db=”-49.9″ mute=”0″ offsetDb=”0″ etag=”6213593a6132887e23fe0476b9ab2cba”>15</volume>
| Atributy odpovědi | Popis |
| Atributy odpovědi | Popis |
| db | Úroveň hlasitosti v dB. |
| ztlumit | 1, pokud je hráč ztlumený, 0, pokud je hráč ztlumený. |
| muteDb | Pokud je přehrávač ztlumený, jedná se o neztlumenou úroveň hlasitosti v dB. |
| ztlumitHlasitost | Pokud je přehrávač ztlumený, jedná se o úroveň hlasitosti bez ztlumení (0..100). |
| objem | Aktuální úroveň hlasitosti: 0..100 nebo -1 pro pevnou hlasitost. |
Example
http://192.168.1.100:11000/Volume?level=15
Nastaví hlasitost přehrávače na 15 (ze 100).
http://192.168.1.100:11000/Volume? tell_slaves=1&db=2
Zvyšuje hlasitost hlavního přehrávače 192.168.1.100 a všech sekundárních přehrávačů v této skupině o 2 dB.
http://192.168.1.100:11000/Volume?mute=1
Ztlumí přehrávač.
3.2 Zvýšení hlasitosti
Popis
Tento požadavek zvyšuje hlasitost o určitý počet dB (typická hodnota je 2 dB).
Žádost
/Objem?db=hodnota_db
| Parametry | Popis |
| db | Kroky zvýšení hlasitosti v dB (typická hodnota 2 dB) |
Odpověď
<volume db=”-25″ mute=”0″ offsetDb=”6″ etag=”a071a168fac1c879b1de291720c8a4b8″>27</volume>
| Atributy odpovědi | Popis |
| db | Úroveň hlasitosti v dB. |
| ztlumit | 1, pokud je hráč ztlumený, 0, pokud hráč ztlumený není |
| Atributy odpovědi | Popis |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?db=2
Zvyšte hlasitost o 2 dB.
3.3 Snížení hlasitosti
Popis
Tento požadavek snižuje hlasitost o určitý počet dB (typická hodnota je -2 dB).
Žádost
/Objem?db=-hodnota_db
| Parametry | Popis |
| db | Kroky zvýšení hlasitosti v dB (typická hodnota -2 dB) |
Odpověď
<volume db=”-25″ mute=”0″ offsetDb=”6″ etag=”a071a168fac1c879b1de291720c8a4b8″>27</volume>
| Atributy odpovědi | Popis |
| db | Úroveň hlasitosti v dB |
| ztlumit | 1, pokud je hráč ztlumený, 0, pokud hráč ztlumený není |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?db=-2
Snižte hlasitost o 2 dB.
3.4 Ztlumení zapnuto
Popis
Žádost
/Hlasitost?ztlumit=1
| Parametry | Popis |
| ztlumit | Nastavením na 1 ztlumíte přehrávač |
Odpověď
<volume muteDb=”-43.1″ db=”100″
ztlumitHlasitost=”11″
ztlumit=”1″
offsetDb=”0″
etag=”2105bed56563d9da46942a696cfadd63″>0</volume
>
| Atributy odpovědi | Popis |
| muteDb | Úroveň hlasitosti v dB před ztlumením |
| db | Úroveň hlasitosti v dB |
| ztlumitHlasitost | Úroveň hlasitosti v procentech před ztlumením |
| ztlumit | 1 znamená, že je přehrávač ztlumený |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?mute=1
3.5 Ztlumit vypnuto
Popis
Tento požadavek nastaví hráče na zapnutí zvuku.
Žádost
/Hlasitost?ztlumit=0
| Parametry | Popis |
| ztlumit | Nastavením na 0 zapnete zvuk hráče |
Odpověď
<volume db=”-43.1″ mute=”0″ offsetDb=”0″ etag=”e72d53db17baa526ebb5ee9c26060b1f”>11</volume>
| Atributy odpovědi | Popis |
| db | Úroveň hlasitosti v dB |
| ztlumit | 0 znamená, že hráč není ztlumený |
| offsetDb | |
| etag |
Example
http://192.168.1.100:11000/Volume?mute=0
Ovládání přehrávání
Tyto příkazy se používají k základnímu ovládání přehrávání. Mezi příkazy patří přehrávání, pozastavení, zastavení, přeskočení, zpět, náhodné přehrávání a opakování.
4.1 Přehrát
Popis
Spuštění přehrávání aktuálního zdroje zvuku. Volitelné parametry umožňují přeskočit na zvukové stopy a vybrat vstup před spuštěním přehrávání zvuku.
Žádost
/Hrát
/Play?seek=sekundy
/Play?seek=sekundy&id=ID_sledování
/Hrát?url=encodedStreamURL
| Parametry | Popis |
| hledat | Přejít na zadanou pozici v aktuální stopě. Platí pouze v případě, že odpověď /Status obsahuje Nelze použít s parametry inputType a index. |
| kódovaný proudURL | URL streamovaného vlastního zvuku. Musí být URL zakódované. |
Odpověď
hrát
proud
| Atributy odpovědi | Popis |
|
stát |
Stav po provedení příkazu. Další podrobnosti viz atribut stavu odpovědi /Status. |
Example
http://192.168.1.100:11000/Play
Spuštění přehrávání zvuku aktuální skladby.
http://192.168.1.100:11000/Play?seek=55
Spuštění přehrávání zvuku v 55. sekundě aktuální skladby.
http://192.168.1.100:11000/Play?seek=55&id=4
Spusťte přehrávání zvuku v 55. sekundě skladby číslo 5 ve frontě.
192.168.1.125:11000/Hrát?url=https%3A%2F%2Fwww%2Esoundhelix%2Ecom%2Fexamples%2Fmp3%
2FSoundHelix-Song-1%2Emp3
Spusťte přehrávání online audiozáznamu ve formátu mp3.
4.2 Pozastavit
Popis
Pozastaví aktuálně přehrávaný zvuk.
Pokud se přehrává budík a má časový limit, pak se časový limit budíku zruší.
Žádost
/Pauza
/Pauza?přepnout=1
| Parametry | Popis |
| přepnout | Pokud je nastaveno na 1, aktuální stav pauzy se přepne. |
Odpověď
pauza
| Atributy odpovědi | Popis |
| stát | Stav po provedení příkazu. Další podrobnosti viz atribut stavu odpovědi /Status. |
Example
http://192.168.1.100:11000/Pause
Pozastaví aktuálně přehrávaný zvuk.
4.3 Zastavte
Popis
Zastavení aktuálně přehrávaného zvuku. Pokud se přehrává budík a má časový limit, pak se časový limit budíku zruší. Požadavek
/Zastávka
| Parametry | Popis |
| Žádný |
Odpověď
zastávka
| Atributy odpovědi | Popis |
| stát | „Stop“ znamená, že aktuální zvuk je zastaven. |
Example
http://192.168.1.100:11000/Stop
Zastaví aktuálně přehrávaný zvuk.
4.4 Přeskočit
Popis
Přeskočit na další zvukovou stopu ve frontě přehrávání
Při přehrávání z fronty přehrávání se přeskočí na další skladbu ve frontě. Pokud je aktuální skladba ve frontě poslední, volání /Skip přeskočí na první skladbu ve frontě. Přeskočí se na další nebo první skladbu ve frontě bez ohledu na stav nastavení opakování.
Chcete-li zjistit, zda používáte frontu přehrávání, ověřte, že neexistuje žádnáUrl> položka v odpovědi /Status.
Pak můžete použít příkaz /Skip.
U některých streamovaných rozhlasových stanic můžete také přeskakovat skladby. To se provádí pomocí příkazu /Action.
Některé zdroje, jako například TuneIn a Optical Input, nepodporují možnost přeskočení. Tyto zdroje budou mítURL> položka, ale v odpovědi /Status není uveden název akce přeskočení.
Žádost
/Přeskočit
| Parametry | Popis |
| Žádný |
Odpověď
21
| Atributy odpovědi | Popis |
| id | ID skladby po provedení příkazu skip. Podrobnosti naleznete v atributu odpovědi /Status pro skladbu. |
Example
http://192.168.1.100:11000/Skip
Přejít na další skladbu.
4.5 Zpět
Popis
Pokud se skladba přehrává déle než čtyři sekundy, funkce zpět se vrátí na začátek skladby.
Jinak příkaz zpět přejde na předchozí skladbu v aktuálním seznamu skladeb. Pokud se jedná o první skladbu v seznamu skladeb, volání zpět přejde na poslední skladbu. Přejde na předchozí nebo první skladbu ve frontě bez ohledu na stav nastavení opakování.
Chcete-li zjistit, zda používáte frontu přehrávání, ověřte, že neexistuje žádnáUrl> element v odpovědi /Status.
Pak můžete použít příkaz /Back.
U některých streamovaných rozhlasových stanic se také můžete vracet na předchozí skladby. To se provádí pomocí příkazu /Action.
Některé zdroje, jako například TuneIn a Optical Input, nepodporují možnost zpět. Tyto zdroje budou mítUrl> element, ale v odpovědi /Status není uveden název akce přeskočení.
Žádost
/Zadní
| Parametry | Popis |
| Žádný |
Odpověď
19
| Atributy odpovědi | Popis |
| id | ID skladby po provedení příkazu back. Podrobnosti naleznete v atributu odpovědi /Status pro skladbu. |
4.6 Náhodné přehrávání
Popis
Příkaz shuffle vytvoří novou frontu promícháním aktuální fronty. Původní (nepromíchaná) fronta se zachová pro obnovení, pokud je promíchání zakázáno.
Žádost
/Náhodně?stav=0|1
| Parametry | Popis |
| stát | · 0 pro vypnutí náhodného přehrávání · 1 pro povolení náhodného přehrávání. Nemá žádný vliv, pokud je fronta již v náhodném stavu. Viz odpověď /Status živel. |
Odpověď
| Atributy odpovědi | Popis |
| upraveno | 1 znamená, že fronta byla od načtení upravena. 0 znamená, že ne. |
| délka | Celkový počet skladeb v aktuální frontě. |
| zamíchat | Stav náhodného přehrávání. 1 znamená, že aktuální fronta je náhodně přehrávána. 0 znamená, že aktuální fronta není náhodně přehrávána. |
| id | Aktuální ID fronty. Změní se při každé úpravě fronty přehrávání. |
Example
http://192.168.1.100:11000/Shuffle?state=1
Zamíchá aktuální frontu přehrávání.
4.7 Opakujte
Popis
Nastavuje možnosti opakování. Opakování má tři stavy: 0 znamená opakování aktuální fronty, 1 znamená opakování aktuální skladby a 2 znamená neopakování. Všechna opakování jsou neomezená, tj. nezastavují se.
Žádost
/Opakovat?stav=0|1|2
| Parametry | Popis |
| stát | · 0 pro opakování celé fronty přehrávání · 1 pro opakování aktuální skladby · 2 pro vypnutí opakování |
Odpověď
| Atributy odpovědi | Popis |
| délka | Celkový počet skladeb v aktuální frontě přehrávání. |
| id | Aktuální ID fronty. Změní se při každé úpravě fronty přehrávání. |
| opakovat | Aktuální stav opakování. |
Example
http://192.168.1.100:11000/Repeat?state=1
Opakuje aktuálně přehrávanou skladbu.
4.8 Akce pro streamované rozhlasové stanice
Popis
Akce vám umožňují přeskakovat vpřed, vzad, označovat skladby oblíbenými a zakazovat je na vybraných streamovacích rozhlasových stanicích, jako jsou Slacker, Radio Paradise nebo Amazon Music Prime Stations. Streamovací rozhlasové stanice nenačítají skladby do fronty přehrávání. Místo toho poskytují… URL které můžete použít k dosažení požadované funkce.
Přeskočit přejde na další skladbu. Zpět přejde na předchozí skladbu. Líbí se mi to, označí se skladba v hudební službě jako lajknutá. Zákaz přejde na další skladbu a označí se mi to v hudební službě jako nelajknutá.
Pokud existujeUrl> položku v odpovědi /Status a příslušnou akci, můžete tyto funkce provést. Akce bude obsahovat URL který se používá k provedení akce.
Tady je exampz odpovědi /Status hráče hrajícího rádio Slacker:
<action name=”skip” url=”/Akce?služba=Slacker&přeskočit=4799148″/>
<action icon=”/images/loveban/love.png” name=”love” notification=”Track marked as favorite” state=”1″ text=”Love” url=”/Akce?služba=Slacker&láska=4799148″/>
<action icon=”/images/loveban/ban.png” name=”ban” notification=”Track banned from this
stanice“ stav = „-1“ text = „Zákaz“ url=”/Akce?služba=Slacker&ban=4799148″/>
V tomto exampFunkce `le, back` není k dispozici, ale `skip`, `love` a `ban` jsou možné.
Žádost
/Akce?služba=název-služby&akce=akce-URL
Poznámka: Konkrétní podrobnosti požadavku (koncový bod a parametry) jsou uvedeny v příslušných prvek. Příkazy v ExampV níže uvedené sekci se používá /Action, ale je možný jakýkoli URI.
| Parametry | Popis |
| Poskytnuto v živel. |
Odpověď
Za odpověď obdržíte potvrzení akce. Za přeskočení a návrat obdržíte:
Za lásku, kterou dostáváš:
1
Za zákaz obdržíte:
1
| Atributy odpovědi | Popis |
| odpověď | Pokud je kořenovým prvkem odpovědi pak textový uzel představuje oznámení, které se zobrazí uživateli. Pokud je vrácen alternativní kořenový element a zahrnul atribut oznámení, pak by se toto oznámení mělo zobrazit. |
Example
http://192.168.1.100:11000/Action?service=Slacker&skip=10965139
Přeskočí na další skladbu z rádia Slacker.
http://192.168.1.100:11000/Action?service=Slacker&ban=33332284
Zablokuje aktuálně přehrávanou skladbu z rádia Slacker a přeskočí na další skladbu.
Správa fronty přehrávání
Jedním ze způsobů provozu přehrávače je načítání skladeb do fronty přehrávání a následné přehrávání skladeb z této fronty. Tyto příkazy vám umožňují view a spravovat frontu přehrávání.
5.1 Seznam skladeb
Popis
Buď vrátí stav fronty přehrávání, nebo vrátí informace o všech skladbách ve frontě přehrávání.
Nedoporučuje se používat tento dotaz bez parametrů délky nebo začátku a konce, jinak by mohla být vygenerována velmi dlouhá odpověď.
Žádost
/Seznam skladeb
/Seznam skladeb?délka=1
/Playlist?start=first&end=last (načte část fronty, obvykle pro stránkování)
| Parametry | Popis |
| délka=1 | Vrátit pouze atributy nejvyšší úrovně a žádné podrobnosti o stopě. |
| start | První položka ve frontě, která se má zahrnout do odpovědi, počínaje od 0. |
| konec | Poslední položka ve frontě, která se má zahrnout do odpovědi. |
Odpověď
Stav fronty přehrávání:
13
243
1
Pro výpis fronty přehrávání:
2002
Anne-Marie
2002
Deezer:487381362
| Atributy odpovědi | Popis |
| jméno | Aktuální název fronty přehrávání. |
| upraveno | 0 znamená, že fronta nebyla od načtení upravena. 1 znamená, že fronta byla od načtení upravena. |
| délka | celkový počet skladeb v aktuální frontě |
| id | jedinečné ID pro aktuální stav fronty (např. 1054). Je stejné jako v odpovědi /Status. |
| píseň | Píseň se skládá z několika dílčích prvků: · albumid = id alba, na kterém se skladba nachází · služba = hudební služba skladby · artistid = id interpreta skladby · ID skladby = ID skladby · id = pozice skladby v aktuální frontě. Pokud je skladba aktuálně vybrána, ID skladby je stejné jako v odpovědi /Status. · název = název skladby · umění = jméno umělce · album = název alba |
Example
http://192.168.1.100:11000/Playlist
Zobrazí všechny skladby ve frontě přehrávání.
http://192.168.1.100:11000/Playlist?length=1
5.2 Smazání skladby
Popis
Odebrání skladby z aktuálního frontu přehrávání.
Žádost
/Smazat?id=pozice
| Parametry | Popis |
| id | ID skladby, která má být smazána z aktuální fronty přehrávání. |
Odpověď
9
| Atributy odpovědi | Popis |
| smazáno | Pozice stopy, která má být odstraněna, ve frontě. |
Example
http://192.168.1.100:11000/Delete?id=9
Odstraní skladbu na pozici 9 ve frontě přehrávání.
5.3 Přesunutí stopy
Popis
Přesunutí skladby v rámci aktuálního frontu přehrávání.
Žádost
/Přesunout?nový=cíl&starý=původ
| Parametry | Popis |
| nový | Nová pozice na přesouvané trati. |
| starý | Stará pozice přesouvané koleje. |
Odpověď
přesunut
| Atributy odpovědi | Popis |
| přesunuto | Znamená to, že skladba byla přesunuta. |
Example
http://192.168.1.100:11000/Move?new=8&old=2
Přesunout skladbu z pozice 2 na pozici 8 ve frontě přehrávání.
5.4 Vymazat frontu
Popis
Vymazat všechny skladby z aktuální fronty přehrávání
Žádost
/Jasný
| Parametry | Popis |
| Žádný |
Odpověď
| Atributy odpovědi | Popis |
| upraveno | 0 znamená, že fronta nebyla od načtení upravena, 1 znamená, že fronta byla od načtení upravena. |
| délka | Celkový počet skladeb v aktuální frontě. |
| id | Jedinečné ID pro aktuální frontu. |
Example
http://192.168.1.100:11000/Clear
Tímto se odstraní všechny skladby z fronty přehrávání.
5.5 Uložení fronty
Popis
Uložte frontu přehrávání jako pojmenovaný seznam skladeb BluOS.
Žádost
/Uložit?název=název_seznamu_skladeb
| Parametry | Popis |
| jméno | Název uložené fronty přehrávání. |
Odpověď
126
| Atributy odpovědi | Popis |
| záznamy | Celkový počet skladeb v uložené frontě přehrávání. |
Example
http://192.168.1.100:11000/Save?name=Dinner+Music
Tím se uloží fronta přehrávání jako „Hudba k večeři“.
Předvolby
Požadavky na předvolby umožňují zobrazit všechny předvolby přehrávače, načíst předvolbu a posouvat ji nahoru/dolů. Předvolby je nutné přidávat a mazat pomocí aplikace BluOS Controller. Předvolby mohou zahrnovat rozhlasové stanice, seznamy skladeb a vstupy (např.
Bluetooth, analogový, optický, HDMI ARC).
6.1 Seznam předvoleb
Popis
Zobrazit všechny předvolby v aktuálním přehrávači BluOS.
Žádost
/Předvolby
| Parametry | Popis |
| Žádný |
Odpověď
<preset id=”6″ name=”Serenity” url= „RádioRáj:/42:4/Klid“
image=”https://img.radioparadise.com/channels/0/42/cover_512x512/0.jpg”/>
<preset id=”7″ name=”1980s Alternative Rock Classics” url=”/Zatížení?služba=Příliv a odlivamp;id=fd3f797e-
a3e9-4de9-a1e2-b5adb6a57cc7″ image=”/Artwork?service=Tidal&playlistimage=afacfc12-24034caf-a5c5-a2af28d811c8″/> </presets>
| Atributy odpovědi | Popis |
| pýcha | Unikátní ID předvoleb přehrávače. Je stejné jako v odpovědi /Status. |
| jméno | Název předvolby. |
| id | Přednastavené ID. |
| url | Předvolba URLJe to přednastavený zdroj URL slouží k načtení presetu. |
| obraz | Obraz URL předvolby. Pokud URL začíná na /Artwork, může to vést k přesměrování. Přidání parametru/klíče followRedirects=1 při načítání obrázku se lze vyhnout přesměrování. |
Example
http://192.168.1.100:11000/Presets
Vypište všechny předvolby v přehrávači.
6.2 Načtení předvolby
Popis
Spustí přehrávání presetu. Můžete vybrat konkrétní číslo presetu a také další nebo předchozí preset. Čísla presetu nemusí být postupná, tj. můžete mít presety 1,2,3, 5, 7, 8, XNUMX a XNUMX. Presety se smyčkou přehrávají odshora dolů a zdola nahoru.
Žádost
/Preset?id=presetId|-1|+1
| Parametry | Popis |
| id | ID předvolby, která se má načíst. Seznam dostupných ID předvoleb naleznete pomocí příkazu Zobrazit předvolby. Pokud je ID presetu +1, načte se další preset. Pokud je ID presetu -1, načte se předchozí preset. |
Odpověď
Pokud je předvolba seznamem skladeb, vrátí počet načtených skladeb v předvolbě.
60
Pokud je předvolbou rádio, vrátí stav streamu.
proud
| Atributy odpovědi | Popis |
| servis | název služby načtené předvolby |
| záznamy | počet skladeb načteného presetu |
Example
http://192.168.1.100:11000/Preset?id=4
Načtěte předvolbu s ID předvolby 4.
http://192.168.1.100:11000/Preset?id=+1
Procházení a vyhledávání obsahu
Tato část popisuje příkazy pro procházení a vyhledávání obsahu hudebních služeb.
7.1 Procházení hudebního obsahu
Popis
Procházejte dostupné hudební zdroje, vstupy a seznamy skladeb.
Kořenovým prvkem pro odpovědi je pokud se neobjeví chybová odpověď. Většina výsledků je posloupností V některých případech je výsledkem posloupnost , z nichž každý obsahuje posloupnost, pokud Všechny hodnoty jsou poskytovány pomocí atributů. Neexistují žádné textové uzly.
Výsledkem volání /Browse může být chyba uzavřená v kořenový element. Podrobnosti o chybě jsou uvedeny v jednom a nula nebo více textové uzly.
Žádost
/Procházet?klíč=klíč-hodnota
/Procházet?key=klíč-hodnota&withContextMenuItems=1
| Parametry | Popis |
| klíč | Volitelný parametr. Absence tohoto parametru bude mít za následek procházení nejvyšší úrovně. Vrací informace pro jiné úrovně než nejvyšší úroveň /Browse. Používá hodnotu převzatou z hodnoty atributu „browseKey“, „nextKey“, „parentKey“ nebo „contextMenuKey“ z dřívější odpovědi. Poznámka: klíč-hodnota musí být URL zakódované |
| sPoložkamiKontextovéNabídky | Volitelný parametr. Hodnota je vždy 1. Tento parametr se používá k zobrazení kontextové nabídky při procházení výsledků prohlížení seznamů skladeb, alb, skladeb, stanic, interpretů atd. |
Odpověď
Odpověď na procházení na nejvyšší úrovni:
<item image=”/images/InputIcon.png” text=”Optical Input”
hrátURL=”/Hrát?url=Capture%3Ahw%3A1%2C0%2F1%2F25%2F2%2Finput1″ inputType=”spdif”
type=”audio”/>
Odpověď na procházení na jiné úrovni:
<browse sid=”16″ serviceIcon=”/Sources/images/DeezerIcon.png” serviceName=”Deezer”
service=”Deezer” searchKey=”Deezer:Hledat” type=”menu”>
item browseKey=”/Playlists?service=Deezer&genre=0&category=toplist” text=”Populární playlisty”
type=”odkaz”/>
type=”odkaz”/>
type=”odkaz”/>
item browseKey=”/Songs?service=Deezer&genre=0&category=toplist” text=”Populární písně”
type=”odkaz”/>
| Atributy odpovědi | Popis |
| Viz tabulky prvků/atributů níže |
Example
POZNÁMKA: Všechny klíčové parametry musí být kódovány v UTF-8.
http://192.168.1.100:11000/Browse
Provádí procházení na nejvyšší úrovni.
http://192.168.1.100:11000/Browse?key=Tidal%3A
Provede procházení druhé úrovně a vrátí kategorie Tidal.
http://192.168.1.100:11000/Browse?key=Tidal%3AmenuGroup%2F3
Provede procházení třetí úrovně a vrátí podkategorie Tidal Masters (Skupina 3).
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DTidal%26category%3Dmasters
Provede procházení čtvrté úrovně a vrátí první sadu alb Tidal Masters.
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DTidal%26category%3Dmasters%26 start%3D30%26end%3D79
Provede další procházení čtvrté úrovně a vrátí druhou sadu alb Tidal Masters.
| Živel | Atribut (a hodnoty) | Popis | |
| Ikona služby | URI ikony aktuálně prohlížené služby. | ||
| serviceName | Název aktuálně prohlížené služby, pro zobrazení uživatelem. | ||
| hledací klíč | Hodnota, která se má použít jako klíčový parametr požadavku /Browse pro prohledání aktuální služby (nebo nějaké hlubší části hierarchie). Požadavek musí navíc obsahovat parametr aq obsahující hledaný výraz. | ||
| nextKey | Hodnota, která se má použít jako klíčový parametr požadavku /Browse pro získání další stránky položek pro aktuální viewVelikost stránkovacího bloku není pod kontrolou uživatele API a neměl by se provádět žádný pokus o analýzu nebo manipulaci s parametry dotazu této hodnoty. | ||
| nadřazenýKlíč | Hodnota, která se má použít jako klíčový parametr požadavku /Browse pro navigaci zpět v hierarchii, pokud má být přepsána výchozí navigace zpět. | ||
| typ | menu | Navigační uzel, který by mohl potenciálně obsahovat kombinaci libovolných typů položek. Nejčastěji obsahuje pouze odkazy nebo zvukové položky. | |
| kontextová nabídka | Seznam položek zadaného typu. | ||
| umělci | |||
| Živel | Atribut (a hodnoty) | Popis | |
| skladatelé | |||
| alba | |||
| seznamy skladeb | |||
| stopy | |||
| žánry | |||
| sekce | Abecední sekce. | ||
| položky | Obecný seznam výsledků. Nejčastěji kombinace uzlů nabídky (type=”link”) a přepínačů (type=”audio”). | ||
| složky | Může obsahovat podsložky, skladby a položky playlistů. | ||
| text | Směřuje do kategorie. | ||
| nextKey | Hodnota, která se má použít jako klíčový parametr požadavku /Browse pro získání další stránky položek pro danou kategorii. | ||
| nadřazenýKlíč | Hodnota, která se má použít jako klíčový parametr požadavku /Browse pro navigaci zpět v hierarchii, pokud má být přepsána výchozí navigace zpět. | ||
| typ | odkaz | Generický uzel v hierarchii procházení, který vede k dalším uzlům | |
| audio | Uzel, který lze hrát přímo | ||
| umělec | Předmět představující umělce | ||
| Živel | Atribut (a hodnoty) | Popis | |
| skladatel | Předmět představující skladatele | ||
| album | Položka představující album nebo podobnou sbírku | ||
| seznam skladeb | Položka představující seznam skladeb nebo podobnou kolekci | ||
| dráha | Položka představující jednu stopu | ||
| text | Uzel prostého textu. | ||
| sekce | Abecední sekce. | ||
| složku | Složka ve složce procházená ve složce. | ||
| text | Hlavní nebo první řádek popisu položky | ||
| text2 | Druhý řádek | ||
| obraz | Ikona nebo grafika pro položku. Pokud obrázek začíná na
/Umělecké dílo může vést k přesměrování. Přidání parametru/klíče followRedirects=1 při načítání obrázku se lze vyhnout přesměrování. |
||
| prohlížetKlíč | Hodnota, která se má použít jako klíčový parametr pro následný požadavek /Browse pro sestup v hierarchii. | ||
| hrátURL | URI, které lze přímo vyvolat pro spuštění výchozí akce přehrávání dané položky. Obvykle se jedná o vymazání fronty a spuštění jejího přehrávání. | ||
| automatické přehráváníURL | URI, které lze přímo vyvolat pro přidání skladby do fronty a její přehrání a přidání dalších skladeb z objektu, který ji obsahuje (například alba), do automatického vyplňování. | ||
| Živel | Atribut (a hodnoty) | Popis |
| část fronty přehrávání. | ||
| kontextová nabídkaKlíč | Hodnota, která se má použít jako klíčový parametr požadavku /Browse k získání výsledku, kterým je kontextová nabídka akcí souvisejících s položkou. | |
| akceURL | URI, který lze přímo vyvolat k provedení zadané akce. |
Položky kontextové nabídky mohou mít pro atribut type následující hodnoty.
| Atribut | ||
| Popis | ||
| oblíbený | -přidat | Přidat položku jako oblíbenou (nebo ekvivalent) |
| -vymazat | Odebrat položku z oblíbených položek uživatele | |
| přidat | Přidat do fronty přehrávání | |
| přidat | -Nyní | Přidat do fronty přehrávání za aktuální skladbu a přehrát nyní |
| -další | Přidat do fronty přehrávání za aktuální skladbu | |
| -poslední | Přidat na konec fronty přehrávání | |
| přidat vše | -Nyní | Přidat vícestopý objekt do fronty přehrávání a spustit přehrávání |
| -další | Přidat vícestopý objekt do fronty přehrávání za aktuální stopu nebo vícestopý objekt | |
| -poslední | Přidat vícestopý objekt na konec fronty přehrávání | |
| přehrávatRádio | Přehrajte rozhlasovou stanici související s danou položkou | |
| vymazat | Smazat objekt (obvykle playlist). Je třeba požádat o potvrzení uživatele. |
Při prohlížení s parametrem „withContextMenuItem=1“ bude výsledek obsahovat kontextové menu.
Example
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DDeezer%26genre%3D0%26category %3Dtoplist&withContextMenuItems=1
Zobrazí požadavek Deezer => Co je horké => Oblíbená alba s vloženou kontextovou nabídkou.
Odpověď
Odpověď obsahuje vložený text pro každou položku.
<item text=”Essonne History X” contextMenuKey=”Deezer:contextMenu/Album?albumid=693798541″
hrátURL=”/Přidat?služba=Deezer&albumid=693798541&playnow=1″ obrázek=”/Umělecké dílo?služba=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”
akceURL=”/Přidat?služba=Deezer&playnow=1&clear=0&shuffle=0&where=dalšíAlbum&albumid=693798541″/>
<item text=”Shuffle” type=”add-shuffle”
akceURL=”/Přidat?služba=Deezer&náhodně=1&playnow=1&kde=dalšíAlbum&albumid=693798541″/>
<item text=”Add next” type=”addAll-next” actionURL=”/Přidat?služba=Deezer&playnow=-1&where=dalšíAlbum&albumid=693798541″/>
<item text=”Add last” type=”addAll-last” actionURL=”/Přidat?služba=Deezer&playnow=-1&kde=poslední&albumid=693798541″/>
…
Poznámky a tipy k implementaci
Atribut typu položky je poskytován jako vodítko, které může usnadnit různé možnosti zobrazení.
Možnost procházet obsah položky je indikována přítomností atributu browseKey. Možnost přehrát (celou) položku je indikována přítomností atributu play.URL (a případně i automatické přehráváníURL) atribut. Položka může mít atribut browseKey i atribut play.URL atribut.
Když hrají obaURL a automatické přehráváníURL atributy jsou k dispozici, který z nich použít jako výchozí možnost přehrávání by měl být předmětem preference uživatele.
Hodnoty URI budou obecně relativní URI s absolutní cestou. Relativní URI se převádějí na absolutní URI podle RFC 3986.
Hodnoty atributů browseKey, contextMenuKey a searchKey musí být vždy kódovány pomocí URI (procento escapováno), pokud jsou použity jako hodnota klíčového parametru pro požadavek /Browse, stejně jako jakékoli jiné parametry požadavku.
Při sestupném procházení hierarchií prohlížení může být užitečné, aby záhlaví stránky uživatelského rozhraní zobrazovalo nějakou navigační cestu, pravděpodobně s použitím názvu (textu) nadřazeného a prarodičského uzlu.
Může být užitečné zpřístupnit kontextové menu pro rodiče při prohlížení jejich potomků.
Při rozhodování o tom, jak zobrazit děti, může být užitečné zvážit typ rodiče.
7.2 Vyhledávání hudebního obsahu
Popis
Příkaz pro vyhledávání v rámci služby.
Žádost
/Procházet?klíč=klíč-hodnota&q=hledanýText
| Parametry | Popis |
| klíč | Hodnota převzatá z hodnoty atributu „searchKey“ z dřívější odpovědi |
| q | Hledaný řetězec. Provede vyhledávání v kontextu určeném parametrem key (převzatým z atributu searchKey z odpovědi). Pokud parametr key není zadán, provede vyhledávání na nejvyšší úrovni. |
Odpověď
<browse sid=”16″ serviceIcon=”/Sources/images/DeezerIcon.png” serviceName=”Deezer”
service=”Deezer” searchKey=”Deezer:Hledat” type=”menu”>
Vrátí nejvyšší úroveň výsledků vyhledávání. Pro další výsledky vyhledávání podle interpretů, alb, skladeb nebo seznamů skladeb je vyžadován příkaz procházení s klíčem „browseKey“.
NapřampChcete-li zobrazit výsledky vyhledávání v albech, odešlete příkaz:
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DDeezer%26expr%3Dmichael
Odpověď bude stejná jako odpověď na normální příkaz /Browse.
| Atributy odpovědi | Popis |
| V příkazu Procházet se podívejte na tabulky prvků/atributů. |
Example
http://192.168.1.100:11000/Browse?key=Deezer:Search&q=michael Hledat „michael“ v hudební službě Deezer.
Seskupení hráčů
Tato část popisuje příkazy pro výchozí seskupování a odskupování hráčů. BluOS také podporuje pevné seskupování, které je mimo rozsah tohoto dokumentu.
Systém BluOS používá terminologii primární přehrávač a sekundární přehrávač. Primární přehrávač je hlavní přehrávač ve skupině. Primární přehrávač slouží k výběru zdroje hudby. Existuje pouze jeden primární přehrávač. K primárnímu přehrávači je připojen sekundární přehrávač. Může být k dispozici více sekundárních přehrávačů.
Pokud je hráč sekundárním hráčem, pak je mnoho požadavků, pokud jsou směrovány na sekundárního hráče, interně přes proxy přehráváno primárnímu hráči. Patří mezi ně /Status, ovládání přehrávání, správa fronty přehrávání a požadavky na procházení a vyhledávání obsahu.
8.1 Hráči druhé skupiny
Popis
Seskupte jednoho sekundárního hráče k hlavnímu hráči.
Žádost
/AddSlave?slave=secondaryPlayerIP&port=secondaryPlayerPort&group=NázevSkupiny
| Parametry | Popis |
| otrok | IP adresa sekundárního hráče. |
| přístav | Číslo portu sekundárního přehrávače. Výchozí číslo portu je 11000. Přehrávače jako NAD CI580, který má čtyři přehrávače s jednou IP adresou, používají více portů. |
| skupina | VOLITELNÉ, název skupiny. Pokud není zadán, BluOS poskytne výchozí název skupiny. |
Odpověď
| Atributy odpovědi | Popis |
| otrokářský přístav | Číslo portu sekundárního přehrávače, který byl právě seskupen. |
| Id | ID sekundárního hráče, který byl právě seskupen. |
Example
http://192.168.1.100:11000/AddSlave?slave=192.168.1.153&port=11000
Toto seskupí hráče 192.168.1.153 s hráčem 192.168.1.100. Hráč 192.168.1.100 je primární hráč.
8.2 Přidání více hráčů do skupiny
Popis
Seskupte dva nebo více hráčů do hlavního hráče.
Žádost
/AddSlave?slaves=secondaryPlayerIPs&ports=secondaryPlayerPorts
| Parametry | Popis |
| otroci | IP adresy sekundárních hráčů, které mají být přidány k primárnímu hráči. IP adresy jsou odděleny čárkami. |
| porty | Porty sekundárních přehrávačů, které mají být přidány k primárnímu přehrávači. Čísla portů jsou oddělena čárkou. |
Odpověď
| Atributy odpovědi | Popis |
| přístav | Port sekundárního přehrávače, který byl seskupen. |
| Id | ID sekundárního hráče, který byl seskupen. |
Example
http://192.168.1.100:11000/AddSlave?slaves=192.168.1.153,192.168.1.120&ports=11000,11000
Seskupí sekundární hráče 192.168.1.153 a 192.168.1.120 k primárnímu hráči 192.168.1.100.
8.3 Odebrání jednoho hráče ze skupiny
Odebrání hráče ze skupiny. Pokud odeberete sekundárního hráče ze skupiny, sekundární hráč se oddělí od skupiny. Pokud odeberete primárního hráče ze skupiny 3 nebo více hráčů, primární hráč se oddělí od skupiny a zbývající sekundární hráči vytvoří novou skupinu.
Žádost
/OdebratSlave?slave=IPAdresaSecondaryPlayer&port=PortSecondaryPlayer
| Parametry | Popis |
| otrok | IP adresa hráče (sekundární), která má být přidána k jinému hráči (primární). |
| přístav | Port hráče (sekundární), který má být přidán k jinému hráči (primární). |
Odpověď
<SyncStatus icon=”/images/players/P300_nt.png” volume=”4″ modelName=”PULSE” name=”PULSE0278″ model=”P300″
značka = „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″>
| Atributy odpovědi | Popis |
| Podrobnosti naleznete v souboru /SyncStatus. |
Example
http://192.168.1.100:11000/RemoveSlave?slave=192.168.1.153&port=11000
Oddělí hráče 192.168.1.153 od skupiny, která má primárního hráče 192.168.1.100.
8.4 Odebrání více hráčů ze skupiny
Popis
Odeberte dva nebo více hráčů ze skupiny.
Žádost
/OdebratSlave?slaves=IPAdresySecondaryPlayerIPs&ports=PortySecondaryPlayerPorts
| Parametry | Popis |
| otroci | IP adresy sekundárních hráčů, kteří mají být odebráni z primárního hráče. IP adresy jsou odděleny čárkami. |
| Parametry | Popis |
| porty | Porty sekundárních přehrávačů, které mají být odebrány z primárního přehrávače. Čísla portů jsou oddělena čárkou. |
Odpověď
<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>
| Atributy odpovědi | Popis |
| Podrobnosti naleznete v souboru /SyncStatus. |
Example
http://192.168.1.100:11000/RemoveSlave?slaves=192.168.1.153,192.168.1.120&ports=11000,11000
Odebere hráče 192.168.1.153 a 192.168.1.120 ze skupiny s primárním hráčem 192.168.1.100.
Restart hráče
Tato část popisuje příkaz pro soft restart přehrávače.
9.1 Restartování přehrávače
Popis
Měkký restart přehrávače.
Žádost
Příkaz POST /reboot s parametrem yes (libovolná hodnota)
| Parametry | Popis |
| Ano | Libovolná hodnota (např. 1). |
Odpověď
Nastavení aktualizováno
Restartování. Zavřete prosím toto okno.
Čekejte prosím…
Example
curl -d ano=1 192.168.1.100/restart
Zvonky u dveří
Tato část popisuje příkaz pro zvonění hráče.
10.1 Zvonky u dveřního zvonku
Popis
Aktivujte zvonkohru u dveří.
Žádost
http://PLAYERIP:PORT/Doorbell?play=1
| Parametry | Popis |
| hrát | Přehrát zvonek (vždy 1) |
Odpověď
| Atributy odpovědi | Popis |
| umožnit | Označte zvonkohru |
| objem | Hlasitost zvonku |
| rozeznít | Zvuk zvonku |
Example
http://192.168.1.100:11000/Doorbell?play=1 play doorbell chime
Přímý vstup
Tato část popisuje příkazy pro přímý výběr vstupního zdroje.
11.1 Výběr aktivního vstupu
Popis
Výběr aktivního vstupního zdroje. Tento příkaz funguje pro aktivní vstupy zobrazené v odpovědi na /RadioBrowse?service=Capture. Výběr vstupů BluOS HUB je podporován pouze tímto příkazem.
Žádost
/Hrát?url=URL_hodnota
| Parametry | Popis |
| url | The URL atribut z odpovědi na /RadioBrowse?service=Capture |
Odpověď
proud
| Atributy odpovědi | Popis |
| stát | Indikuje, že se vstup přehrává |
Example
Krok 1. Získejte URL_hodnota parametru url
Žádost: http://192.168.1.100:11000/RadioBrowse?service=Capture
Odpověď:
<item playerName=”Tick
Zaškrtněte text = „Bluetooth“ inputType = „bluetooth“ id = „input2“ URL=”Zachytit%3Abluez%3Abluetooth” obrázek =” /images/BluetoothIcon.png” typ =”zvuk”/>
<item playerName=”Tick Tick” text=”Analog
Vstup“ inputType=“analogový“ 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
Vstup“ 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
Zaškrtněte text = „Spotify“ id = „Spotify“ URL=„Spotify%3Aplay“ obrázek=„/Zdroje/obrázky/SpotifyIcon.png“ služba
Typ = „Cloudová služba“ typ = „zvuk“ />
<remoteitem playerName=”Test Hub” text=”Analog Input” inputType=”analog” id=”hub192168114911000input0″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput0″
obrázek=”/obrázky/zachycení/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″
obrázek=”/obrázky/zachycení/ic
_optický vstup.png”
type=”audio”/>
<remoteitem playerName=”Test Hub” text=”HDMI ARC” inputType=”arc” id=”hub192168114911000input4″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput4″
obrázek=”/obrázky/zachycení/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″
obrázek=”/obrázky/zachycení/ic
_optický vstup.png”
type=”audio”/>
<remoteitem playerName=”Test Hub” text=”Phono Input” inputType=”phono” id=”hub192168114911000input1″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput1″
obrázek=”/obrázky/zachycení/ic
_vinyl.png”
type=”audio”/>
Krok 2. Přehrajte analogový vstup na přehrávači
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
Poznámka: Ujistěte se, že zdroje jsou připojené a nejsou skryté.
11.2 Výběr externího vstupu
Popis
Výběr externího vstupního zdroje. Někdy se neaktivní externí vstupy nemusí zobrazit v odpovědi na
/RadioBrowse?service=Capture. Tento příkaz funguje pro výběr aktivního i neaktivního vstupu. Doporučuje se pro výběr externího vstupu CI.
Žádost (firmware BluOS novější než v3.8.0 a starší než v4.2.0)
/Play?inputIndex=IdIndexu
| Parametry | Popis |
| vstupní index | Index (začínaje 1) vstupů zobrazených v odpovědi na /Settings?id=capture&shcemaVersion=32 (32 je nejnovější verze schématu) v číselném pořadí. Bluetooth je vyloučen. |
Odpověď
proud
| Atributy odpovědi | Popis |
| stát | Indikuje, že se vstup přehrává |
Example
Krok 1. Získejte hodnotu inputIndex
Žádost: http://192.168.1.100:11000/Settings?id=capture&schemaVersion=32
Odpověď:
<menuGroup icon=”/images/settings/ic_capture.png” url=”/nastavení” id=”zachycení”
displayName="Přizpůsobit zdroje">
<setting icon=”/images/settings/ic_bluetooth.png” refresh=”true” url= „/audiorežimy“
id=”bluetooth” displayName=”Bluetooth” value=”3″ name=”bluetoothAutoplay” description=”Zakázáno” explanation=”Manuální režim umožňuje přepínat mezi zdroji v navigační liště. Automatický režim přepne na zdroj Bluetooth, když připojené zařízení Bluetooth začne přehrávat zvuk. Poté můžete přepínat mezi zdroji v navigační liště. Režim pro hosty přepne na zdroj Bluetooth, když připojené zařízení Bluetooth začne přehrávat zvuk. Pokud přepnete na jiný zdroj, Bluetooth se odpojí. Zdroj Bluetooth se v navigační liště nezobrazí. Možnost Zakázáno odstraní zdroj z navigační liště a neumožní jinému zařízení připojit se k přehrávači jako Bluetooth.
zdroj.“ třída = „seznam“>
…
<menuGroup icon=”/images/capture/ic_analoginput.png” url=”/nastavení” id=”captureinput0″
displayName=”Analogový
Vstup“>
<menuGroup icon=”/images/capture/ic_opticalinput.png” url=”/nastavení” id=”zachycení-vstup1″
displayName="Optický vstup">
V odpovědi se zobrazí Bluetooth, analogový vstup a optický vstup. Bluetooth je vyloučen, takže hodnota inputIndex je 1 pro analogový vstup a hodnota inputIndex je 2 pro optický vstup.
Krok 2. Přehrajte optický vstup na přehrávači.
http://192.168.1.100:11000/Play?InputId=2
Žádost (firmware BluOS v4.2.0 nebo novější)
/Play?inputTypeIndex=$typeIndex
| Parametry | Popis |
| inputTypeIndex | typeIndex má formát index-typu vstupu. Zde je seznam vstupů typ: spdif (optický vstup) analogový (analogový vstup, linkový vstup) koaxiální (koaxiální vstup) bluetooth oblouk (HDMI ARC) earc (HDMI eARC) phono (vinyl) počítač aesebu (AES/EBU) vyvážený (vyvážený vstup) mikrofon (mikrofonní vstup) The index začíná od 1. Pokud je více než jeden vstup stejného typu, vstup 1 má index 1, vstup 2 má index 2 a tak dále. |
Odpověď
proud
| Atributy odpovědi | Popis |
| stát | Indikuje, že se vstup přehrává |
Example
Požadavek: http://192.168.1.100:11000/Play?inputTypeIndex=spdif-2 pro výběr optického vstupu 2
Odpověď: proud
Bluetooth
Tato část popisuje příkaz pro změnu režimu Bluetooth.
12.1 Změna režimu Bluetooth
Popis
Změna režimu Bluetooth: Ruční, Automatický, Host, Zakázáno.
Žádost
/audiomodes?bluetoothAutoplay=hodnota
| Parametry | Popis |
|
BluetoothAutomatické přehrávání |
Režim Bluetooth hodnota 0 znamená Manuální, 1 znamená Automatický, 2 znamená Host, 3 znamená Zakázáno. |
Žádná odezva
Example
Požadavek: http://192.168.1.100:11000/audiomodes?bluetoothAutoplay=3 pro vypnutí Bluetooth
Dodatek
13.1 Protokol pro vyhledávání služeb Lenbrook
Zavedení
Oblíbené metody vyhledávání, jako jsou mDNS a SSDP, používají a spoléhají na multicastovou komunikaci UDP. Většina současných produktů Lenbrook používá pro vyhledávání mDNS. Bohužel jsme zjistili, že značný počet našich zákazníků má domácí sítě, kde multicastový provoz nefunguje správně a naše zařízení nelze spolehlivě najít. To vedlo k mnoha vrácením produktů a stížnostem od našich distributorů.
Abychom tento problém vyřešili, vytvořili jsme vlastní protokol pro vyhledávání s názvem LSDP, který využívá vysílání UDP. Počáteční testování ukázalo, že je mnohem spolehlivější než vyhledávání založené na mDNS.
Protokol skončilview
Jedním z cílů tohoto protokolu je být relativně jednoduchý. Lze jej použít ve vestavěných zařízeních s velmi omezenou pamětí.
Protokol využívá všechny pakety UDP broadcast odesílané do a z portu UDP 11430. Tento port byl registrován u IANA a je přiřazen společnosti Lenbrook pro použití LSDP od 27. března 2014.
V ustáleném stavu každý uzel se službou pro inzerci vysílá zprávu Announce přibližně každou minutu.
Při spuštění a při změně seznamu služeb nebo síťových parametrů by mělo být vysíláno sedm paketů v krátkých intervalech, aby se umožnilo rychlejší šíření počátečního objevení a změn. Pro uzly inzerující služby by těchto prvních sedm paketů mělo obsahovat zprávu Announce (Oznámení). Pro uzly, které se snaží najít služby, by mělo prvních sedm paketů obsahovat zprávu Query (Dotaz). Pro služby, které již nejsou k dispozici, by mělo sedm paketů obsahovat zprávu Delete (Smazat).
Tyto počáteční pakety jsou odesílány sedmkrát kvůli nespolehlivé povaze UDP paketů. V nepravděpodobném případě, že všech sedm paketů selže, budou služby po chvíli stále objeveny z periodických jednominutových zpráv Announce.
Pokud uzel obdrží zprávu s dotazem pro třídu služeb, kterou inzeruje, po krátkém náhodném časovém zpoždění odpoví zprávou Announce a vynuluje svůj aktuální časový limit Announce.
Záhlaví paketu a všechny bloky zpráv obsahují pole pro délku. To poskytuje větší flexibilitu a umožňuje provádět zpětně kompatibilní změny v budoucnu. V budoucnu by mohla být přidána další pole nebo typy zpráv, které by starší implementace mohly při parsování přeskočit. Pokud bychom se rozhodli provést zpětně nekompatibilní změnu, v záhlaví paketu je také pole pro verzi, které lze zvýšit.
Protokol také umožňuje zahrnutí TXT záznamů do reklam služeb, podobně jako se používají TXT záznamy.
s mDNS. To poskytuje značnou flexibilitu pro zahrnutí dalších libovolných metadat do služby
reklamy bez změny protokolu.
Podrobnosti protokolu
Načasování
Všechny odeslané pakety by měly být naplánovány s náhodným načasováním nebo zpožděním, aby se předešlo kolizím.
- Časování spouštěcích paketů: 7 paketů v čase = [0, 1, 2, 3, 5, 7, 10 s] + (0 až 250 ms náhodně). Jedná se o absolutní časy, nikoli zpoždění. Všech 7 paketů by mělo být odesláno během přibližně 10 sekund.
- Hlavní doba oznámení: 57 s + (0 až 6 s náhodně)
- Zpoždění odpovědi na dotaz: (0 až 750 ms náhodně)
ID uzlu
Každý uzel musí mít jedinečné ID, které lze použít k jeho identifikaci. Jedinečné ID je zahrnuto ve zprávách Announce a Delete. Klienti mohou tuto hodnotu použít jako primární klíč při ukládání hodnot do mezipaměti a k jedinečné identifikaci uzlu. Toto jedinečné ID může být MAC adresa, ale mělo by být stejné pro každé rozhraní, pokud má uzel více rozhraní, na kterých inzeruje.
Struktura paketu
Každý paket začíná záhlavím paketu, po kterém následuje libovolný počet bloků zpráv. Každý blok zprávy začíná polem délky, takže nerozpoznané zprávy lze přeskočit. Pokud není uvedeno jinak, všechny vícebajtové číselné hodnoty se ukládají jako big endian (nejvýznamnější bajty jako první). Pokud není uvedeno jinak, všechna čísla jsou hodnoty bez znaménka. NapříkladampJeden bajt může mít hodnoty od 0 do 255.
Záhlaví paketu
| Pole | Bajtů | Popis |
| Délka | 1 | Celková délka záhlaví včetně tohoto pole. |
| Kouzelné slovo | 4 | Toto pole bude tvořeno čtyřmi ASCII bajty kódu „LSDP“. To nám pomáhá identifikovat pakety jako určené k použití, takže se nemusíme snažit analyzovat náhodná data z nějakého neočekávaného zdroje. |
| Verze protokolu | 1 | Verze protokolu. Pokud budou v budoucnu provedeny změny v protokolu, který je zpětně nekompatibilní, tato verze |
| Pole | Bajtů Popis | |
| bude změněno. Aktuální verze je 1. | ||
Dotazovací zpráva
| Pole | ||
| Bajtů | Popis | |
| Délka | 1 | Celková délka zprávy včetně tohoto pole. |
| Typ zprávy | 1 | „Q“ = 0x51: Standardní dotaz na odpověď vysílání. „R“ = 0x52: Dotaz na odpověď unicast. |
| Počítat | 1 | Počet tříd k dotazování. |
| třída 1 | 2 | 16bitový (2 bajtový) identifikátor třídy. |
| … | Opakujte předchozí pole pro každou další třídu. | |
Oznamovací zpráva
Záhlaví oznámení
| Pole | ||
| Bajtů | Popis | |
| Délka | 1 | Celková délka zprávy včetně kompletní hlavičky hlášení a záznamů hlášení. |
| Typ zprávy | 1 | „A“ = 0x41 |
| Délka ID uzlu | 1 | Délka pole ID uzlu. |
| ID uzlu | Variabilní | Jedinečné ID uzlu odesílajícího oznámení. Obvykle se jedná o MAC adresu jednoho z rozhraní uzlů. |
| Délka adresy | 1 | Délka pole Adresa. Pro IPv4 to bude 4. |
| Pole | ||
| Bajtů | Popis | |
| Adresa | Variabilní | IP adresa uzlu. |
| Počítat | 1 | Počet záznamů oznámení, které mají být sledovány. |
Oznámit záznam
| Pole | Bajtů | Popis |
| Třída | 2 | 16bitový (2 bajtový) identifikátor třídy. |
|
Počet textových zpráv |
1 |
Počet záznamů TXT, které mají následovat. Pokud je hodnota nula, následující pole se vynechají. |
| Délka klíče 1 | 1 | Délka názvu klíče. |
| Klíč 1 | Variabilní | Název klíče. |
| Hodnota 1 Délka | 1 | Délka textu hodnoty. |
| Hodnota 1 | Variabilní | Text hodnoty. |
|
… |
Pro každý další TXT záznam opakujte předchozí 4 pole. |
Smazat zprávu
| Pole | ||
| Bajtů | Popis | |
| Délka | 1 | Celková délka zprávy včetně tohoto pole. |
| Typ zprávy | 1 | „D“ = 0x44 |
| Délka ID uzlu | 1 | Délka pole ID uzlu. |
| ID uzlu | Variabilní | Jedinečné ID uzlu odesílajícího zprávu. Obvykle se jedná o MAC adresu jednoho z uzlů. |
| Pole | ||
| Bajtů | Popis | |
| Rozhraní. | ||
| Počítat | 1 | Počet lekcí, které je třeba absolvovat. |
| třída 1 | 2 | 16bitový (2 bajtový) identifikátor třídy. |
| … | Opakujte předchozí pole pro každou další třídu. | |
Přiřazení ID třídy
| ID třídy | Popis | Ekvivalent mDNS |
| 0x0001 | Přehrávač BluOS | _musc._tcp |
| 0x0002 | Server BluOS | _muss._tcp |
| 0x0003 | Přehrávač BluOS (sekundární u vícezónových přehrávačů, jako je CI580) | _musp._tcp |
| 0x0004 | sovi-mfg používaný pro výrobní testování. | _sovi-mfg._tcp |
| 0x0005 | sovi-klávesnice | _sovi-keypad._tcp |
| 0x0006 | Přehrávač BluOS (párování s podřízenými zařízeními) | _musz._tcp |
| 0x0007 | Vzdálený Web Aplikace (AVR OSD) Web Strana) | _vzdálený-web-ui._tcp |
| 0x0008 | BluOS Hub | _mush._tcp |
| 0xFFFF | Všechny třídy – Lze použít s dotazovací zprávou. |
Poznámka 1:
Celý paket LSDP je třeba považovat za binární data.
Poznámka 2:
Pokud jedna oznamovací zpráva nedokáže pojmout informace o všech uzlech (zejména CI580), rozdělí se na 2 nebo více oznamovacích zpráv, přičemž každá zpráva bude obsahovat záhlaví a záznam a každá zpráva bude obsahovat informace o celém uzlu (uzlech).
BluOS Custom Integration API verze 1.7
Dokumenty / zdroje
![]() |
BluOS T 778 Vlastní integrační API [pdfUživatelská příručka T 778, T 778 Vlastní integrační API, T 778, Vlastní integrační API, Integrační API, API |
