Úplný návod k ovládání, gestům a ikonám Stream Deck
Vytvořte tok, který lze vyvolat
- Pojmenovaný spouštěčStream Deck / API
- Podmínky a akceVáš uložený Event Flow
- CílFlow Actions, OBS nebo jiná integrace
- Otevřít Event Flow z SSN. Vytvořte samostatný tok nebo zvolte šablonu Tlačítko Stream Deck / API .
- Přidejte Spustit ze Stream Deck / API ve skupině spouštěčů Stream Deck a API .
- Pojmenujte jej
intermission. Názvy se porovnávají přesně a rozlišují velikost písmen; použijte krátký výstižný název. - Propojte jeho výstup s Zobrazit text. Nastavte text na
Back in five minutes, a vyberte požadovanou dobu a vrstvu. - Uložte tok a poté jej zapněte. Neuložený tok existuje jen v editoru; vypnutý tok nelze vyvolat. Výchozí šablona je záměrně vypnutá, dokud nedokončíte nastavení.
- Otevřete svůj Překryv Flow Actions pomocí odkazu vygenerovaného SSN. Pro diváky přidejte tuto URL jako zdroj Prohlížeč v OBS. Samotný editor není překryv.
Toky bez tohoto pojmenovaného spouštěče nelze vyvolat přes API toků. Vyvolání toku nevkládá falešný chat do doku. Stávající události OBS a běžný chat nadále používají své stávající spouštěče.
Tok může kombinovat svůj pojmenovaný spouštěč s filtry pomocí logických uzlů. Nesouvisející automatizace ponechte v samostatných tocích: všechny větve spouštěčů a logiky ve vybraném toku se vyhodnocují s událostí API. Opakované stisky spouštějí samostatné běhy; vložte Omezovač četnosti stavový uzel za spouštěč, pokud chcete prodlevu mezi spuštěními.
Připojte klávesu Stream Deck
- Nastavte v pluginu akci Nastavení se svou relací SSN a volitelným heslem. Použijte Otestovat připojení.
- Přetáhněte Přednastavený příkaz na klávesu.
- Vyberte Toky Event Flow → Spustit tok.
- Vyberte Obnovit toky, poté vyberte uložený tok a spouštěč. Klávesa si ukládá ID toku i název spouštěče.
- Stiskněte jednou a sledujte překryv Flow Actions. Zaškrtnutí na klávese znamená, že SSN spuštění přijalo.
Výběr toku zachovává i chybějící volby. Po přejmenování, vypnutí, smazání nebo importu toku seznam obnovte a zvolte tok znovu. Tok importovaný jako nový má jiné ID. Pro cílení podle názvu napříč více toky použijte pole Hodnota.
Vlastní příkaz: nastavte Akci na triggerWorkflow, pole Cíl nechte prázdné, zadejte {"trigger":"intermission"} jako Hodnotu a zapněte Čekat na odpověď. Předvolba nabízí výběr s průvodcem a filtrování podle schopností.
Více akcí: každý požadavek toku rychle potvrdí přijetí. Další krok Stream Deck může začít před dokončením zpožděných akcí toku. Pokud záleží na pořadí, vložte řazení a prodlevy přímo do Event Flow.
Předávání vlastních hodnot
V poli Hodnota klávesy nebo v požadavku API:
{
"trigger": "intermission",
"flowId": "YOUR_SAVED_FLOW_ID",
"data": { "name": "Back in five minutes", "minutes": 5 }
}Nastavte Zobrazit text na {meta.workflow.data.name}. Porovnat vlastnost může číst meta.workflow.data.minutes. Data jsou volitelný objekt JSON; zůstávají v meta.workflow.data a nemohou nahradit identitu události ani udělit oprávnění chatu.
Vynechte flowId pro vyvolání každého zapnutého toku s přesně tímto názvem spouštěče. Více odpovídajících uzlů spouštěče v jednom toku stále vyhodnotí tok jen jednou. Chcete-li spustit pouze jeden tok, ponechte jeho ID z výběru nebo odpovědi vyhledání.
Událost použitá uvnitř vybraného toku obsahuje type: "api", event: "workflow_trigger", chatname: "Stream Deck / API", prázdné chatmessage, a výše uvedená data. Běžný chat, který tato pole napodobí, nemůže aktivovat pojmenovaný spouštěč API.
Příklady API
Nechte SSN zapnuté a spuštěné. Jde o volání vzdáleného ovládání Social Stream; nepoužívají samostatné místní AI/MCP API aplikace SSApp. Skutečné ID relace uchovávejte v soukromí.
Zjistit dostupné spouštěče
{"action":"getWorkflowTriggers","get":"list-1","apiid":"YOUR_SESSION"}Zpětné potvrzení obsahuje result.payload.triggers:
{"triggers":[{"flowId":"flow-123","flowName":"Intermission","trigger":"intermission"}]}
Spustit pojmenovaný tok
{
"action": "triggerWorkflow",
"value": {"trigger":"intermission","flowId":"flow-123","data":{"name":"Back shortly"}},
"get": "run-1",
"apiid": "YOUR_SESSION"
}Pro každý požadavek použijte jedinečný get řetězec. Úspěšné zpětné potvrzení má result.ok: true, result.status: "accepted", a result.payload.matchedFlows. Přijetí znamená, že se zapnutý tok našel a naplánoval. Neznamená to dokončení každé zpožděné akce, webhooku, volání OBS nebo přehrávání médií.
WebSocket
Zapněte vzdálené ovládání rozšíření přes API (remote API control of extension) v SSN. Připojte k wss://io.socialstream.ninja. Připojte se pomocí {"join":"YOUR_SESSION","out":1,"in":2}, poté odešlete výše uvedený požadavek. Kanál 1 přenáší ovládání; kanál 2 přenáší zpětná potvrzení. Pro toky nemusíte zapínat kanál chatu.
HTTP
Zapněte stejné nastavení vzdáleného ovládání API. Před použitím nahraďte zástupnou hodnotu relace:
POST https://io.socialstream.ninja/YOUR_SESSION
Content-Type: application/json
{"action":"triggerWorkflow","value":{"trigger":"intermission","data":{"name":"Back shortly"}}}Pro jednoduchý pojmenovaný spouštěč můžete také použít GET https://io.socialstream.ninja/YOUR_SESSION/triggerWorkflow/null/intermission. Čtvrtá část cesty může obsahovat JSON zakódovaný do URL pro strukturované hodnoty. Celou hodnotu JSON zakódujte pomocí encodeURIComponent(JSON.stringify(value)). Vlastní odesílací kanály používají ?channel=N.
P2P
Výchozí režim P2P pluginu posílá stejná data přes stávající přenos datovým kanálem VDO.Ninja v SSN. Pro P2P není nutný přepínač hostovaného WebSocket API. Stávající klienti P2P mají tento požadavek posílat přes své zavedené ovládací připojení SSN; místní AI API nemusí být otevřené.
Chyby a kompatibilita
WORKFLOW_NOT_FOUND: žádný uložený zapnutý tok neodpovídá spouštěči či ID toku.INVALID_VALUE: chybějící či neplatný spouštěč, chybný JSON, neplatné ID toku nebo data, která nejsou objektem.CONTROL_UNAVAILABLE: SSN nebo vzdálené ovládání hostitele je vypnuté.TARGET_UNAVAILABLE: Event Flow se stále načítá.- Starší soubory Social Stream nemusí tyto akce nabízet. Zkontrolujte
getCapabilities→ssn.actions.triggerWorkflowagetWorkflowTriggers. Musí být nainstalován nový spouštěč i aktualizovaný plugin; samotné číslo verze SSApp neurčuje vzdáleně načítané soubory Social Stream.
Po ztraceném potvrzení automaticky neopakujte volání měnící stav: tok už mohl začít. Nejprve zkontrolujte jeho výstup. Toto API neposkytuje frontu stavů spuštění.
Co jednotlivé integrace potřebují
| Akce toku | Požadovaný cíl a nastavení | Co zkontrolovat |
|---|---|---|
| Zobrazení textu, média, zvuk, čištění vrstev | Připojený překryv Flow Actions se stejnou relací; zdroj Prohlížeč v OBS pro výstup divákům. | Viditelný výstup, vrstva, doba a směrování zvuku. Úspěšný příkaz nedokládá viditelnost scény OBS. |
| Ovládání OBS | Flow Actions připojené k OBS s nastavenou adresou a heslem; odpovídající názvy scén a zdrojů. | Skutečný stav OBS. Viz Návod k OBS. |
| Připnout či zvýraznit zprávu | Připojený výchozí dok; zvolte skutečné ID zprávy nebo úplná data zprávy. | Seznam připnutých zpráv v doku a překryv vybraných zpráv. Prázdný text chatu spouštěče API sám o sobě nepředstavuje užitečnou zprávu. |
| Zavolat webhook | URL, metoda a tělo JSON v akci. | Odpověď přijímače a chybová pole Event Flow; potvrzení Stream Deck přichází před zpožděnými nebo externími výsledky. |
| Odeslat zprávu / přeposlat | Připojený zdroj s možností odesílání a výslovný cíl. | Skutečný cílový chat. Požadavek na tok neopravňuje k obcházení limitů platformy. |
| Produkty a podpora | Uložené a zapnuté produkty a obchodní překryv. | Stav vybráno, skryto či naplánováno v SSN. Viz ovládání produktů. |
| Soutěže, lístky, body | Nastavená soutěž či ekonomika a vhodný účastník. Pojmenovaná událost API nemá identitu diváka. | Pro ovládání moderátorem používejte předvolby soutěží určené pro moderátora; nepovažujte událost API za nákup diváka. Viz soutěže a body. |
| TTS, Spotify, tisk, MIDI | Vlastní připojení, oprávnění a nastavení zařízení či účtu každé integrace. | Skutečný cíl či zařízení. Instalace Stream Deck tyto integrace nenastaví. |
Úplný návod k Event Flow · Příklady postupů · referenční příručka API
Gesta časovače a chatu
Časovač: jeden krok otočení standardně mění čas o ±10 sekund; při otáčení držte ovladač stisknutý pro ±1 minutu (6× nastavený krok). Stiskem a uvolněním bez otáčení spustíte či pozastavíte. Klepnutím na displej časovače jej obnovíte; podržte displej pro reset. Samotné podržení fyzického ovladače reset neprovede.
Procházení chatu: otáčejte doleva pro starší chat, doprava pro novější; stiskem ovladače připněte prohlíženou zprávu. Klepnutím na displej zvýrazněte další připnutou zprávu; podržením displeje odepněte prohlíženou zprávu. Nechte výchozí dok otevřený. V režimu WebSocket zapněte přenos chatu na kanálu 4.
Otevřít Nápověda a diagnostika → Návod k ovládání, ikonám a tokům v pluginu pro úplný offline návod, všech pět typů akcí, každou předvolbu a ikonu, chování resetu, výchozí hodnoty a řešení problémů.
Přehled palety Event Flow
Paleta obsahuje 45 spouštěčů, 67 akcí, pět logických a čtyři stavové uzly. Každá položka má vedle symbolu textový popisek. Vyberte uzel pro zobrazení nastavení a požadavků integrace; samotná ikona v paletě nedokládá připojení cíle.
Spouštěče určují, kdy tok začne. Podle potřeby propojte podmínky pomocí AND/OR. Akce se provádějí v pořadí propojení. Stavové uzly uchovávají hodnoty mezi událostmi. Pro prodlevu tlačítka zvolte Omezovač četnosti (THROTTLE), nikoli akci Zpoždění: Zpoždění odloží každé spuštění a nepotlačí opakované stisky.
Spouštěče: Stream Deck a API (1)
- ▶ Spustit ze Stream Deck / API —
apiTrigger
Spouštěče: 📣 Události vysílání (9)
- 👋 Nový sledující —
eventNewFollower - ⭐ Nový předplatitel —
eventNewSubscriber - 🔄 Obnovení předplatného —
eventResub - 🎁 Darované předplatné —
eventGiftSub - 💰 Příspěvek / spropitné —
eventDonation - 🚀 Raid —
eventRaid - 💎 Cheer/Bits —
eventCheer - 📋 Jiná událost… —
eventOther - ✏️ Vlastní událost —
eventCustom
Spouštěče: OBS Studio (7)
- Vysílání OBS spuštěno —
obsStreamStarted - Vysílání OBS zastaveno —
obsStreamStopped - Nahrávání OBS spuštěno —
obsRecordingStarted - Nahrávání OBS zastaveno —
obsRecordingStopped - Scéna OBS změněna —
obsSceneChanged - Médium OBS skončilo —
obsMediaEnded - Záznam opakování OBS uložen —
obsReplaybufferSaved
Spouštěče: 💬 Zprávy chatu (6)
- 💬 Libovolná zpráva —
anyMessage - 🔍 Zpráva obsahuje —
messageContains - ▶️ Zpráva začíná na —
messageStartsWith - ⏹️ Zpráva končí na —
messageEndsWith - 🟰 Zpráva se rovná —
messageEquals - 🔤 Regulární výraz zprávy —
messageRegex
Spouštěče: 📊 Vlastnosti zpráv (7)
- 📏 Délka zprávy —
messageLength - 🔢 Počet slov —
wordCount - 😀 Obsahuje emoji —
containsEmoji - 🔗 Obsahuje odkaz —
containsLink - 💰 Obsahuje příspěvek —
hasDonation - ⚖️ Porovnat vlastnost —
compareProperty - ⚙️ Filtr vlastností zpráv —
messageProperties
Spouštěče: 👤 Uživatel a zdroj (6)
- 📡 Ze zdroje —
fromSource - 📺 Z názvu kanálu —
fromChannelName - 👤 Od uživatele —
fromUser - 👑 Role uživatele —
userRole - 🧠 Uživatel je zapamatován —
userMemoryContains - 🎁 Uplatnění bodů kanálu —
channelPointRedemption
Spouštěče: ⏰ Časování a náhoda (4)
- 🎲 Náhodná šance —
randomChance - ⏰ Časový interval —
timeInterval - 🎤 Když řeknu… —
voicePhrase - 🕐 Denní čas —
timeOfDay
Spouštěče: 🎹 MIDI (3)
- 🎹 Stisk noty MIDI —
midiNoteOn - 🎹 Uvolnění noty MIDI —
midiNoteOff - 🎛️ Změna ovladače MIDI —
midiCC
Spouštěče: 📦 Pokročilé (2)
- 📣 Typ události (pokročilé) —
eventType - Vlastní kód —
customJs
Akce: 💬 Akce zpráv (14)
- 🚫 Zablokovat zprávu —
blockMessage - ✅ Vrátit zprávu —
returnMessage - ⚡ Pokračovat asynchronně —
continueAsync - ✏️ Upravit zprávu —
modifyMessage - ⬅️ Přidat předponu —
addPrefix - ➡️ Přidat příponu —
addSuffix - 🔄 Najít a nahradit —
findReplace - ✂️ Odstranit text —
removeText - 🎨 Nastavit vlastnost —
setProperty - 🌟 Zvýraznit zprávu —
featureMessage - Připnout zprávu —
pinMessage - 💬 Odeslat zprávu —
sendMessage - 📢 Přeposlat chat —
relay - 🪞 Filtr odražených zpráv —
reflectionFilter
Akce: 🔌 Integrace (6)
- Spustit vlastní kód —
customJs - 🖨️ Vytisknout termoštítek —
printThermal - 🌐 Zavolat webhook —
webhook - ⬆️ Přidat body —
addPoints - ⬇️ Utratit body —
spendPoints - 🎁 Soutěž / lístky —
giveawayControl
Akce: 🎨 Média a efekty (7)
- 🖼️ Zobrazit mediální překryv —
playTenorGiphy - 👤 Zobrazit avatar —
showAvatar - 🛍 Produkty a podpora —
commerceControl - 📝 Zobrazit text —
showText - 🗑️ Vyčistit vrstvu —
clearLayer - 🔊 Přehrát zvukový klip —
playAudioClip - ⏱️ Zpoždění —
delay
Akce: 🎬 OBS Studio (14)
- 🎬 Změnit scénu —
obsChangeScene - 👁️ Přepnout zdroj —
obsToggleSource - 📝 Nastavit textový zdroj —
obsSetText - ⏯️ Ovládat mediální zdroj —
obsMediaControl - 🔊 Nastavit hlasitost zdroje —
obsSetVolume - 🔄 Obnovit zdroj Prohlížeč —
obsRefreshBrowser - 🎨 Přepnout filtr —
obsSetSourceFilter - 🔇 Ztlumit / zapnout zvuk —
obsMuteSource - 🔴 Spustit nahrávání —
obsStartRecording - ⏹️ Zastavit nahrávání —
obsStopRecording - 📡 Spustit vysílání —
obsStartStreaming - ⏹️ Zastavit vysílání —
obsStopStreaming - ⏺️ Ovládat záznam opakování —
obsReplayBufferControl - 💾 Uložit záznam opakování —
obsReplayBuffer
Akce: 🎵 Spotify (10)
- ⏭️ Přeskočit skladbu —
spotifySkip - ⏮️ Předchozí skladba —
spotifyPrevious - ⏸️ Pozastavit —
spotifyPause - ▶️ Pokračovat —
spotifyResume - ⏯️ Přepnout přehrávání / pauzu —
spotifyToggle - 🔊 Nastavit hlasitost —
spotifyVolume - 📋 Přidat do fronty —
spotifyQueue - 🎵 Oznámit přehrávanou skladbu —
spotifyNowPlaying - 🔀 Přepnout náhodné přehrávání —
spotifyShuffle - 🔁 Nastavit režim opakování —
spotifyRepeat
Akce: 🔊 Převod textu na řeč (5)
- 🗣️ Přečíst text —
ttsSpeak - 🔇 Přepnout TTS —
ttsToggle - ⏭️ Přeskočit TTS —
ttsSkip - 🗑️ Vyprázdnit frontu TTS —
ttsClear - 🔊 Nastavit hlasitost TTS —
ttsVolume
Akce: 🎹 MIDI (2)
- 🎹 Odeslat notu —
midiSendNote - 🎛️ Odeslat změnu ovladače —
midiSendCC
Akce: 🧠 Paměť uživatelů (4)
- 🧠 Zapamatovat uživatele —
rememberUser - 👋 Zapomenout uživatele —
forgetUser - 🧹 Vymazat všechny uživatele —
clearUserMemory - 🎟️ Vybrat náhodného uživatele —
pickRandomUser
Akce: 🔧 Ovládání stavu (5)
- 🚦 Nastavit stav brány —
setGateState - 🔄 Resetovat stavový uzel —
resetStateNode - 🔢 Nastavit hodnotu počítadla —
setCounter - ➕ Zvýšit počítadlo —
incrementCounter - Zkontrolovat počítadlo —
checkCounter
Logické a stavové uzly
- 🔀 Brána AND —
AND - 🔄 Brána OR —
OR - 🚫 Brána NOT —
NOT - 🎲 Brána RANDOM —
RANDOM - 🚫 Zkontrolovat nevhodná slova —
CHECK_BAD_WORDS - 🚦 Vypínač —
GATE - 🔢 Počítadlo —
COUNTER - ⏲️ Omezovač četnosti —
THROTTLE - 🧠 Paměť uživatelů —
USER_MEMORY
Filtry zpráv, divácké body a akce zapamatovaných uživatelů potřebují smysluplná data zprávy či uživatele. Tlačítko moderátora vysílání neposkytuje skutečného diváka ani cíl odpovědi do zdroje. Zvolte ovládání moderátora nebo výslovně nastavený cíl; pojmenovaný tok nepoužívejte k vydávání se za diváka.
Podrobné zapojení: viz Průvodce Event Flow, návod ke stavovým uzlům, návod k paměti uživatelů, a Návod k OBS.
Postup při selhání
- Nejprve použijte jednoduchý tok Zobrazit text a ověřte jeho výstup.
- Uložte a zapněte; obnovte seznam toků Stream Deck. Ověřte název spouštěče i ID toku.
- Ověřte, že je SSN zapnuté, připojení je Online a cílový překryv je připojen ke stejné relaci.
- Chyby vyhledání a ověření hledejte ve zpětném potvrzení API nebo diagnostice pluginu. Při selhání po přijetí požadavku zkontrolujte cíl a provozní záznamy Event Flow.
- Další integrace přidávejte postupně. Před živým použitím otestujte opakované stisky, vypnutý tok a opětovné připojení.
Běžný testovací panel chatu v editoru posílá událost chatu. Nenapodobuje pojmenovaný spouštěč API. Tento spouštěč otestujte přes Stream Deck nebo API, abyste ověřili celou cestu.