TapHome

Bluesound

Packet Parser → HTTP
Přidal
Poslední aktualizace: 08. 2026

Toto zařízení podporuje mDNS

Místo IP adresy můžete zařízení oslovit na:

{MODEL}-{MAC4}.local

Nahraďte {MAC} MAC adresou zařízení (velká písmena, bez dvojteček).

TapHome podporuje mDNS — použití hostname je spolehlivější než statická IP.

Bluesound

Bluesound je řada multiroom audio zařízení postavená na BluOS, streamovací platformě společnosti Lenbrook pro bezztrátový zvuk až do 24-bit/192 kHz. Každý přehrávač BluOS poskytuje v lokální síti BluOS Custom Integration API: obyčejné HTTP GET požadavky na TCP portu 11000, odpovědi ve formátu UTF-8 XML, bez autentizace a bez cloudového účtu. TapHome komunikuje s přehrávačem přímo přes lokální síť.

Šablona není vázaná na konkrétní model — neobsahuje žádnou vazbu na model ani výrobce a hovoří výhradně přes HTTP API, takže platí pro celou aktuální řadu (NODE, NODE X, NODE NANO, NODE ICON, POWERNODE, POWERNODE EDGE, PULSE, PULSE M, PULSE MINI, PULSE FLEX, PULSE CINEMA, PULSE CINEMA MINI, PULSE SOUNDBAR, VAULT a HUB) i pro starší generace. Protože BluOS dodávají také NAD Electronics, DALI, PSB Speakers, Monitor Audio, Roksan, Cyrus a Peachtree, přehrávače těchto značek poskytují stejné API a reagují na stejné požadavky.

Síťové připojení

Není potřeba nic zapojovat. Přehrávač BluOS se připojí do domácí sítě přes Ethernet nebo Wi-Fi pomocí průvodce v aplikaci BluOS Controller a TapHome jej následně osloví přes HTTP. Jedinou podmínkou je, aby řídicí jednotka TapHome a přehrávač byly ve stejném segmentu sítě a aby mezi nimi byl průchodný port 11000.

Port 11000 platí pro každý přehrávač BluOS s jedinou zdokumentovanou výjimkou: NAD CI580 obsahuje v jednom šasi čtyři streamovací uzly na portech 11000 / 11010 / 11020 / 11030. Šablona oslovuje pouze port 11000, takže na CI580 ovládá uzel 1.

Konfigurace

Zjištění IP adresy přehrávače

Adresa se zobrazuje v obrazovce Diagnostics aplikace BluOS Controller:

  • Android / iOS — karta Players → vyberte přehrávač → karta HomeSettings → v sekci Help & Support klepněte na Diagnostics.
  • Windows / macOSPlayer Drawer → vyberte přehrávač → levý Navigation DrawerHelp → Diagnostics.

Tatáž obrazovka vypisuje pod položkou Other Players i adresy ostatních přehrávačů v síti. Bez aplikace vrátí otevření adresy http://<ip_prehravace>:11000/SyncStatus v prohlížeči atribut id přehrávače (adresa a port) spolu s jeho atributem mac.

Udržení stálé adresy

Šablona oslovuje přehrávač podle IP adresy, takže změněná zápůjčka DHCP integraci tiše zastaví. Lenbrook výslovně doporučuje rezervaci DHCP na routeru místo statické adresy nastavené přímo v přehrávači:

  1. Otevřete administrační rozhraní routeru a najděte nastavení rezervací DHCP / LAN.
  2. Zadejte MAC adresu přehrávače — nese ji odpověď /SyncStatus, takže se dá přečíst přes HTTP i bez aplikace.
  3. Přiřaďte adresu, kterou si má přehrávač ponechat, a uložte.
  4. Restartujte přehrávač, aby obnovil zápůjčku, a ověřte, že převzal rezervovanou adresu.
Import šablony

Šablona má jediný importní parametr, IpAddress (zástupná hodnota 192.168.0.1). Zadejte adresu přehrávače; port 11000 i formát požadavků jsou už součástí šablony.

Povinné nastavení po importu — Seskupit s přehrávačem

Přepínač Seskupit s přehrávačem se dodává s proměnnou IP nastavenou na zástupný text 192.168.x.x. Není to funkční výchozí hodnota — dokud se nenahradí, čtecí skript hledá 192.168.x.x mezi podřízenými přehrávači, nikdy jej nenajde a přepínač zůstává trvale vypnutý.

Po importu šablony otevřete zařízení Seskupit s přehrávačem v aplikaci TapHome a nastavte IP na adresu přehrávače, který se má připojit jako podřízený člen skupiny. Použijte obrazovku Diagnostics popsanou výše (položka Other Players vypisuje přesně tyto adresy) nebo přečtěte /SyncStatus na kterémkoli přehrávači v síti.

Všechna ostatní zařízení šablony fungují hned po vyplnění parametru IpAddress. Seskupit s přehrávačem je jediné zařízení, které po importu potřebuje druhou hodnotu — pokud v něm zůstane 192.168.x.x, přepínač bude působit rozbitě místo toho, aby ohlásil chybu.

Možnosti zařízení

Ovládání přehrávání

Přehrávání řídí pět tlačítek:

  • Play — spustí aktuální zdroj zvuku. Pozastavený přehrávač obnoví, zastavený však znovu nerozeběhne.
  • Pauza — posílá přepnutí, takže týmž tlačítkem se hrající přehrávač pozastaví a pozastavený opět rozeběhne. Pokud hraje budík s časovým limitem, pozastavení tento limit zároveň zruší.
  • Stop — zastaví přehrávání. Na rozdíl od pauzy se zastavený přehrávač tlačítkem Play už neobnoví. Zastavení také zruší běžící limit budíku.
  • Další skladba — přeskočí dopředu ve frontě přehrávání a na konci fronty se vrátí na první skladbu, ať je nastavení opakování jakékoli.
  • Předchozí skladba — pokud aktuální skladba hraje déle než čtyři sekundy, spustí ji znovu, jinak se vrátí na předchozí skladbu.

Tato tlačítka pracují s frontou přehrávání. Když přehrávač streamuje rádiovou stanici nebo hraje z fyzického vstupu, fronta není zdrojem zvuku a přeskakování dopředu ani dozadu není dostupné — API tento případ řeší přes samostatný endpoint, který šablona nevyužívá.

Hlasitost

Hlasitost je stmívač. Čte úroveň přehrávače (0–100) a škáluje ji do rozsahu stmívače 0,0–1,0; při zápisu posílá hodnotu zpět jako celé procento. Vypnutí stmívače posílá příkaz ke ztlumení místo hlasitosti 0, takže vlastní úroveň přehrávače zůstává zachovaná a po zrušení ztlumení se obnoví.

Oba zápisy nesou tell_slaves=1, což odpovídá skupinovému posuvníku hlasitosti v aplikaci BluOS Controller: když je přehrávač hlavním členem skupiny, hlasitost se mění na všech přehrávačích ve skupině najednou, nikoli pouze na osloveném.

Použitelný rozsah hlasitosti se nastavuje v aplikaci BluOS Controller v Settings → Player → Audio a bývá typicky −80…0 dB. Všechny úrovně se ořezávají do tohoto rozsahu, takže stmívač TapHome na 100 % nemusí znamenat 0 dB. Přehrávače s pevnou linkovou úrovní výstupu nehlásí použitelnou hlasitost vůbec a stmívač pak ukazuje nesmyslnou úroveň místo chyby.

Stmívač hlasitosti se přehrávače dotazuje každých 2,5 sekundy, zatímco BluOS API žádá integrace bez long-pollingu, aby posílaly nejvýše jeden požadavek za 30 sekund. U jednoho přehrávače jde o hrstku malých požadavků za minutu, napříč domem plným přehrávačů se to však sčítá — mějte to na paměti při vytížené Wi-Fi a tam, kde je síť zaneprázdněná, upřednostněte přehrávače připojené kabelem.

Náhodné přehrávání a opakování

Náhodné přehrávání zapíná a vypíná zamíchání fronty. Zamíchání frontu přestaví; po vypnutí se obnoví původní pořadí.

Opakování je třístavový přepínač — Bez opakování, Opakovat jednu a Opakovat vše. TapHome řadí tyto sloty v opačném pořadí než API a šablona používá stejné přemapování při čtení i při zápisu, takže oba směry zůstávají konzistentní.

Obě zařízení čtou svůj stav z hodnoty, kterou si modul ukládá při vlastním 30sekundovém dotazu na stav, místo aby posílala vlastní požadavky. Tím se šetří síťový provoz, cenou je až 30sekundové zpoždění, než se změna provedená v aplikaci BluOS projeví v TapHome.

Předvolby

Předvolba načte předvolbu uloženou v přehrávači — rádiovou stanici, playlist nebo vstup. Předvolby lze vytvářet a mazat výhradně v aplikaci BluOS Controller; API je umí jen načíst.

Zařízení je pouze pro zápis: posílá příkaz k předvolbě, ale nikdy nečte zpět, která předvolba hraje, takže přepínač neodráží skutečný stav přehrávače.

Používejte sloty předvoleb 1–9. Slot 0 posílá předvolbu s identifikátorem 64 místo 0, což vypadá spíše na pozůstatek zástupné hodnoty než na skutečnou předvolbu. Identifikátory předvoleb navíc nemusí jít po sobě — přehrávač může mít předvolby 1, 2, 3, 5, 7 a 8 — proto si v aplikaci BluOS Controller ověřte, které identifikátory skutečně existují, dříve než slot zapojíte do scény.

Seskupování multiroom

Seskupit s přehrávačem připojí k tomuto přehrávači druhý přehrávač BluOS. Přehrávač, který TapHome oslovuje, se stává hlavním: vybírá zdroj hudby a rozvádí svůj zvuk, zatímco přehrávač určený proměnnou IP se připojuje jako podřízený. Vypnutí zařízení tento přehrávač ze skupiny opět odebere. Stav se čte zpět ze seznamu připojených podřízených přehrávačů, takže seskupení provedené z aplikace BluOS se v TapHome projeví.

Ze způsobu, jakým seskupování v BluOS funguje, vyplývají dva důsledky:

  • Ke zbytku skupiny se dostanou pouze externí vstupy připojené k hlavnímu přehrávači. Má-li zvuk z televizoru přes optický nebo HDMI vstup hrát všude, TapHome musí oslovovat přehrávač, ke kterému je tento vstup připojen.
  • Aplikace BluOS Controller zvládne nejvýše osm skupin po osmi přehrávačích nebo čtyři skupiny po šestnácti. Jeden přepínač TapHome obsluhuje jednu dvojici hlavní–podřízený, takže trojice přehrávačů potřebuje druhý přepínač.

Požadavky na seskupování používají zápis parametrů, který míchá jednotné a množné číslo z API. V praxi to funguje, protože port 11000 je zdokumentovaná výchozí hodnota, ale vyplatí se o tom vědět, kdyby se některý příkaz k seskupení zachoval nečekaně.

Ukázková tlačítka — demonstrace, nikoli funkce přehrávače

Šablona se dodává se dvěma tlačítky s názvy Ukázka – Jungle a Ukázka – Vypnutí. Jsou to demonstrace streamování z URL, nikoli schopnosti přehrávače: každé z nich zastaví přehrávání, vyprázdní frontu a přehraje jeden zvukový soubor z adresy uložené v proměnné zařízení.

Jsou určeny k úpravě nebo smazání. Ukázka Jungle směřuje na cizí server se zvukovými ukázkami mimo kontrolu TapHome a přestane fungovat vždy, když se ta stránka změní. Ukázka Vypnutí směřuje na MP3 hostované u TapHome a je použitelným vzorem pro zvuk zvonku nebo hlášení, pokud se adresa nahradí vlastní — pozor, adresa musí být v procentuálním kódování, protože se posílá přehrávači bez úprav.

Řešení problémů

Přehrávač neodpovídá
  1. Otevřete v prohlížeči http://<ip_prehravace>:11000/SyncStatus — odpověď ve formátu XML znamená, že přehrávač je dostupný a API je živé.
  2. Pokud neodpovídá, zkontrolujte adresu v obrazovce Diagnostics aplikace BluOS Controller; mohla ji posunout obnova DHCP. Nastavte rezervaci DHCP popsanou výše, aby se to přestalo dít.
  3. Zkuste místo IP adresy mDNS název přehrávače.
  4. Ověřte, že řídicí jednotka TapHome a přehrávač jsou ve stejné síti / VLAN a že mezi nimi nic neblokuje port 11000.
Přepínač seskupení se nikdy nezapne

Proměnná IP na zařízení Seskupit s přehrávačem je stále zástupný text 192.168.x.x, nebo obsahuje adresu, která nepatří přehrávači BluOS. Nastavte ji na skutečnou adresu podřízeného přehrávače — viz nastavení po importu výše.

Předvolba nic nedělá

Buď za slotem v tomto přehrávači žádná předvolba není, nebo byl použit slot 0. Otevřete aplikaci BluOS Controller, zkontrolujte, které identifikátory předvoleb přehrávač skutečně má, a přiřaďte sloty TapHome k těmto identifikátorům. Předvolby je třeba nejprve vytvořit v aplikaci — šablona je vytvářet neumí.

Další / Předchozí nefungují

Přehrávač nehraje ze své fronty. Rádiové streamy a fyzické vstupy nejsou založeny na frontě a přeskakování dopředu ani dozadu se na ně nevztahuje. Spusťte přehrávání z playlistu, alba nebo fronty a tlačítka začnou znovu fungovat.

Změny z aplikace BluOS se projeví opožděně

Náhodné přehrávání a opakování se čtou z uloženého stavu modulu, který se obnovuje každých 30 sekund. Hlasitost se dotazuje častěji. Tlačítka přehrávání a Předvolba jsou pouze pro zápis a vnější změny neodrážejí vůbec.

Přehrávač je ztlumený, ale TapHome ukazuje úroveň

Ztlumení se zapíše při vypnutí stmívače hlasitosti, ale stav ztlumení se nikdy nečte zpět. Přehrávač ztlumený z aplikace BluOS Controller nebo z jeho dálkového ovladače nadále ukazuje v TapHome předchozí úroveň stmívače. Sladíte je vypnutím a opětovným zapnutím stmívače.

Dostupná zařízení

Bluesound Modul
Vlastní proměnné

Bluesound

Čtení (modul)
var response := SENDHTTPREQUEST("/Status");
shuffle := PARSEXML(response.Content, "//shuffle");
repeat := PARSEXML(response.Content, "//repeat");
Další skladba Tlačítko

Přeskočí na další skladbu ve frontě přehrávání; na konci fronty se vrátí na první skladbu bez ohledu na nastavení opakování

button push

Další skladba

Zápis stavu tlačítka
SENDHTTPREQUEST("/Skip");
Hlasitost Stmívač

Hlasitost přehrávače — vypnutí stmívače přehrávač ztlumí místo nastavení úrovně na nulu a změna se projeví na všech přehrávačích ve skupině

numeric Jednotka: % dimmer

Hlasitost

Čtení úrovně
var response := SENDHTTPREQUEST("/Volume");
PARSEXML(response.Content, "//volume") / 100;
Zápis úrovně
if St
	SENDHTTPREQUEST("/Volume?level=" + round(Le*100) + "&tell_slaves=1");
else
	SENDHTTPREQUEST("/Volume?mute=1&tell_slaves=1");
end
Náhodné přehrávání Přepínač

Stav náhodného přehrávání fronty — stav se čte z hodnoty /Status uložené v modulu, zápis jde přes HTTP

boolean switch
Hodnoty / Stavy: ${shuffle} · ${noShuffle}

Náhodné přehrávání

Čtení stavu přepínače
shuffle
Zápis stavu přepínače
var response := SENDHTTPREQUEST("/Shuffle?state=" + St);
shuffle := PARSEXML(response.Content, "//playlist/@shuffle");
Opakování Vícestavový přepínač

Režim opakování — bez opakování, opakování jedné skladby nebo opakování celé fronty

enum multi-value
Hodnoty / Stavy: Bez opakování · Opakovat jednu · Opakovat vše

Opakování

Čtení stavu přepínače
switch(repeat,0,2,1,1,0)
Zápis stavu přepínače
var tmp := switch(Mu,0,2,1,1,0);
var response := SENDHTTPREQUEST("/Repeat?state=" + switch(Mu,0,2,1,1,0));
repeat := PARSEXML(response.Content, "//playlist/@repeat");
Pauza Tlačítko

Přepíná mezi pozastavením a přehráváním — opětovné stisknutí tlačítka přehrávání obnoví

button push

Pauza

Zápis stavu tlačítka
SENDHTTPREQUEST("/Pause?toggle=1");
Předchozí skladba Tlačítko

Pokud aktuální skladba hraje déle než čtyři sekundy, spustí ji znovu; jinak se vrátí na předchozí skladbu ve frontě

button push

Předchozí skladba

Zápis stavu tlačítka
SENDHTTPREQUEST("/Back");
Play Tlačítko

Spustí přehrávání aktuálního zdroje zvuku — pozastavený přehrávač obnoví, zastavený ne

button push

Play

Zápis stavu tlačítka
SENDHTTPREQUEST("/Play");
Předvolba Vícestavový přepínač

Načte předvolbu uloženou v přehrávači — rádiové stanice, playlisty a vstupy, které se vytvářejí výhradně v aplikaci BluOS Controller. Pouze pro zápis, takže přepínač neukazuje, která předvolba hraje

enum multi-value

Předvolba

Zápis stavu přepínače
SENDHTTPREQUEST("/Preset?id=" + Mu);
Ukázka – Jungle Tlačítko

Ukázka streamování z URL, nikoli funkce přehrávače — zastaví přehrávání, vyprázdní frontu a přehraje jeden zvukový soubor z nastavené adresy

button push
Proměnná: encodedURLAdresa zvukového streamu pro toto tlačítko, zapsaná v procentuálním kódování URL. Výchozí hodnota směřuje na cizí server s ukázkami a měla by se nahradit

Ukázka – Jungle

Zápis stavu tlačítka
SENDHTTPREQUEST("/Stop");
SENDHTTPREQUEST("/Clear");
SENDHTTPREQUEST("/Play?url=" + encodedURL);
Ukázka – Vypnutí Tlačítko

Druhá ukázka streamování z URL — zastaví přehrávání, vyprázdní frontu a přehraje jeden zvukový soubor z nastavené adresy

button push
Proměnná: encodedURLAdresa zvukového streamu pro toto tlačítko, zapsaná v procentuálním kódování URL

Ukázka – Vypnutí

Zápis stavu tlačítka
SENDHTTPREQUEST("/Stop");
SENDHTTPREQUEST("/Clear");
SENDHTTPREQUEST("/Play?url=" + encodedURL);
Seskupit s přehrávačem Přepínač

Připojí druhý přehrávač BluOS jako podřízeného člena skupiny — přehrávač ovládaný z TapHome se stane hlavním a rozvádí svůj zvuk. Po importu je potřeba doplnit IP adresu druhého přehrávače

boolean switch
Hodnoty / Stavy: ON · OFF
Proměnná: IPIP adresa přehrávače BluOS, který se má připojit jako podřízený člen skupiny. Dodaná hodnota 192.168.x.x je zástupný text a musí se nahradit, jinak přepínač zůstane trvale vypnutý

Seskupit s přehrávačem

Čtení stavu přepínače
var response := SENDHTTPREQUEST("/SyncStatus");
var slaves := PARSEXML(response.Content, "//SyncStatus/slave/@id");
indexof(slaves, IP) >= 0
Zápis stavu přepínače
if St
	SENDHTTPREQUEST("/AddSlave?slave=" + IP + "&ports=11000");
else
	SENDHTTPREQUEST("/RemoveSlave?slave=" + IP + "&ports=11000");
end
Stop Tlačítko

Zastaví přehrávání — na rozdíl od pauzy se zastavený přehrávač tlačítkem Play už neobnoví

button push

Stop

Zápis stavu tlačítka
SENDHTTPREQUEST("/Stop");
Připojení: Packet Parser → HTTP • Hostname: {MODEL}-{MAC4}.local
Možná vylepšení (17)
  • Long Polling — Holds the connection open and returns only when something changes. Would cut request volume substantially and is the mechanism the documented 30 s polling ceiling exists to make unnecessary. The template uses plain repeated GETs on 2.5 s / 10 s / 30 s intervals.
  • Now Playing Metadata — Playback state, three-line track description, album art URL, track length and elapsed seconds. The module already fetches /Status every 30 s but only extracts shuffle and repeat from it, so this would cost no extra requests.
  • Mute State (read) — The volume dimmer writes /Volume?mute=1 when switched off but never reads mute back, so a player muted from the BluOS app still shows its old dimmer level in TapHome.
  • Doorbell Chime — Plays the player's configured chime at its configured chime volume without touching the play queue. The most obviously useful addition for a smart home — the Sample buttons approximate it far more crudely by clearing the queue.
  • Direct Input Selection — Switches the player to a physical input by type and index — spdif, analog, coax, bluetooth, arc, earc, phono, computer, aesebu, balanced, microphone. Requires BluOS firmware 4.2.0 or newer; older firmware uses /Play?inputIndex=. Natural fit for a multi-value switch.
  • Input Discovery — Lists the inputs actually present on the player, including inputs shared by a BluOS HUB elsewhere on the network. HUB input selection is only supported through this route plus /Play?url=.
  • List Presets — Returns the real preset ids, names and artwork. Would let the Preset device show what it is actually switching between instead of a fixed 0–9 list.
  • Next / Previous Preset — Steps through presets without knowing their ids — two push buttons would cover it and would not depend on the ids matching.
  • Relative Volume Step — Volume up / down by a dB step (typical value 2 dB). Cheaper than the dimmer for wall-button control and does not need the current level to be read first.
  • Absolute dB Volume — Sets volume on the dB scale instead of the 0–100 percentage, which is what the player's configured volume range is actually expressed in.
  • Play Queue Management — List the queue, delete or move a track, save the queue as a named playlist. The template only uses /Clear, and only inside the two demo buttons.
  • Content Browsing and Search — Navigate and search music services, local library, playlists and inputs. A large surface that does not map naturally onto TapHome device models, but it is the reason the template has no way to choose what plays beyond presets.
  • Radio Station Actions — Skip, back, love and ban on streaming radio stations that do not use the play queue. This is what Next Track and Previous Track would need to fall back to when /Status carries a <streamUrl>.
  • Player Identity and Group Name — MAC address (the value a router DHCP reservation needs), player name, model, brand and the current group name. The grouping switch already fetches /SyncStatus every 30 s, so these would be free service attributes.
  • Battery Level — Present only on players with a battery pack, such as PULSE FLEX with the BP100 — state of charge in percent plus a charging flag.
  • Bluetooth Mode — Manual, Automatic, Guest or Disabled. Useful for locking guest access to a player from a scene.
  • Soft Reboot — The only POST endpoint in the API — the PacketParser HTTP module issues GETs, so this would need a different mechanism.

Zdroje

Našli jste problém s touto šablonou zařízení?

Napište nám, co nefunguje, co chybí, nebo jak by se měla šablona chovat. Vaše zpětná vazba nám pomáhá udržet katalog přesný.

Ověřeno TapHome

Chcete to použít ve svém TapHome jádře?

Otevřete tuto šablonu v zákaznickém portálu a použijte ji ve svém domově, nebo navrhněte úpravu a odešlete ji zpět do katalogu.

Otevřít v portálu