Eigene Funktion bauen
Mit einer eigenen Funktion baust du dir einen Baustein, den es so in der Bibliothek nicht gibt. Er hat eigene Inhalte, die du später pflegst, eigene Aktionen und eine eigene Ansicht für OBS. Danach fügst du ihn wie jede andere Funktion hinzu, auch mehrfach.
Baustein anlegen
- Öffne die Bibliothek und klicke im Kopf von Funktionen und Rezepte auf + Eigene Funktion.
- Unter Allgemein gibst du Name, Symbol und eine kurze Beschreibung ein. Mehrfach erlaubt mehrere Funktionen aus diesem Baustein, jede mit eigenen Inhalten.
- Klicke oben auf Speichern. Der Editor lädt neu, oben stehen jetzt Hinzufügen und Löschen. In der Bibliothek findest du den Baustein unter dem Filter 🧩 Eigenes.
Inhalte
Eine Sammlung ist eine Liste, zum Beispiel Sprüche oder Preise. Du legst fest, welche Spalten jeder Eintrag hat: Text, Text (mehrzeilig), Zahl, Ja/Nein, Farbe, Auswahl, Bild, Ton oder ein Gegenstand, eine Belohnung, eine Stimme oder eine Szene aus deinem Kanal. Höchstens begrenzt die Zahl der Einträge.
Im Overlay kommen die Inhalte über die Datenquelle Inhalte: RIWIUS.on("content", d => d.collections.schluessel). Jeder Eintrag hat eine feste Kennung _id.
Änderst du später den Schlüssel einer Sammlung oder Spalte, behalten deine Funktionen ihre Einträge. Beim Speichern ziehen die Werte zum neuen Schlüssel um. Passe danach den Code der Ansicht an, falls er den alten Schlüssel nutzt.
Aktionen
Eine Aktion schickt ein Event an die Overlays der Funktion. Der Schlüssel ist der Name des Events im Overlay, zum Beispiel RIWIUS.on("ziehen", d => …). Parameter sind Werte, die du beim Auslösen angibst. Texte dürfen Platzhalter wie %user% enthalten. Wählst du bei Eintrag aus eine Sammlung, liegt ein Eintrag bei: der gewählte oder ein zufälliger.
Das Overlay bekommt params mit den Werten, entry mit dem Eintrag (bei leerer Sammlung null), dazu user, login, amount, action, test und module mit Kennung und Name der Funktion.
Ereignisse
Ein Ereignis meldet deine Funktion selbst, Regeln reagieren darauf. Lege es im Reiter Aktionen unter Ereignisse an: Schlüssel, Name, auf Wunsch eine Menge wie Punkte und die Werte, die das Overlay mitschickt. Heißt ein Wert user, hat das Ereignis eine Person.
Im Code meldest du es mit RIWIUS.report("treffer", { user: "Max" }, 3). Die Zahl am Ende ist die Menge, wenn das Ereignis eine Menge hat. Sonst zählt es als 1. In der Vorschau im Studio meldet das Overlay nichts. Ein Overlay meldet höchstens zehn Ereignisse in zehn Sekunden. Im Regel-Editor steht das Ereignis unter dem Namen deines Bausteins.
Ansicht
Unter Ansicht stellst du die Größe ein und schreibst HTML, CSS und JS. Felder erscheinen später beim Aussehen der Funktion, zum Beispiel eine Farbe oder eine Schriftgröße. Neue Ansichten haben schon eine Platzierung: Das Element mit data-place setzt die Laufzeit an die gewählte Stelle und in die gewählte Größe. Für die Schrift legst du ein Feld card-size (Größe des Texts, Schieberegler in %) an und gibst dem Text data-text-size, dann skaliert die Laufzeit ihn mit. Aus Overlay übernehmen holt Code, Felder, Größe, Aktionen und Datenquellen eines vorhandenen Overlays als Startpunkt. Leinwände stehen dort nicht zur Wahl.
Speichern ändert nur den Baustein. Overlays, die du schon hinzugefügt hast, zeigen danach einen Hinweis auf den neuen Stand. Du übernimmst ihn dort mit Aktualisieren und einer Bestätigung. Mehr unter Neue Version aus der Bibliothek.
Inhalte pflegen
Auf der Seite deiner Funktion steht der Reiter Inhalte. Jede Sammlung hat dort eine eigene Kachel. Trage die Einträge ein und klicke auf Speichern. Die Overlays zeigen die neuen Inhalte sofort.
Bilder und Töne, die du hier hochlädst, stehen allen Links der Funktion zur Verfügung. Bekommt die Funktion einen weiteren Link, bringt er die vorhandenen Dateien gleich mit.
Steuern
Im Reiter Auslöser steht in der Kachel Fernsteuern jede Aktion. ▶ Ausprobieren schickt sie gleich an die Overlays, Anleitung zeigt ihre Parameter und wie du sie per Stream Deck oder Steuer-API auslöst. Mit einer Regel geht das auch automatisch, zum Beispiel bei einer Kanalpunkte-Einlösung. Die Aktionen stehen im Regel-Editor unter dem Namen deines Bausteins. Mehr dazu steht unter Regeln & Variablen.
Löschen
Oben im Editor steht Löschen. Das geht erst, wenn keine Funktion den Baustein mehr nutzt. Entferne die Funktionen vorher auf ihrer Seite. Dabei gehen auch ihre Inhalte verloren. Danach geht es zurück zur Bibliothek.
Was du siehst„Eine Funktion nutzt diesen Baustein noch“
- Woran es liegt
Es gibt noch Funktionen aus diesem Baustein.
- Was hilft
Die Funktionen auf ihrer Seite mit Entfernen löschen, dann den Baustein.
Was du siehst„Diese Funktion hat keinen Link für OBS. Dateien gehen erst mit Link.“
- Woran es liegt
Beim Hochladen fehlt der Funktion ein Overlay.
- Was hilft
Im Reiter Aussehen mit + Overlay hinzufügen einen Link anlegen.
Was du siehstEine Regel reagiert beim Ausprobieren nicht auf das Ereignis
- Woran es liegt
In der Vorschau im Studio meldet
RIWIUS.reportnichts.- Was hilft
Das Overlay in OBS oder über seinen Link testen.
Was du siehst„Zu viele Meldungen“ oder „steht nicht im Manifest“
- Woran es liegt
Das Overlay meldet zu oft, oder der Schlüssel des Ereignisses stimmt nicht.
- Was hilft
Seltener melden und den Schlüssel unter Aktionen bei Ereignisse prüfen.
Was du siehst„ist schon eine Datenquelle“
- Woran es liegt
Der Schlüssel einer Aktion heißt wie eine Datenquelle, etwa
content.- Was hilft
Einen anderen Schlüssel wählen.
Wie es arbeitet
- Beim ersten Speichern bekommt der Baustein einen festen Schlüssel aus
eigen-und dem Namen. Er ändert sich danach nicht mehr. - Speichern ändert den Baustein. Aktionen, Ereignisse und der Aufbau der Sammlungen gelten sofort. Neuer Code erreicht vorhandene Overlays erst über Aktualisieren.
- Benennst du eine Sammlung oder Spalte um, schreibt der Server die Inhalte aller Funktionen um. Er erkennt die Umbenennung auch, wenn Stelle und Typ gleich bleiben.
- Jede Funktion hat ihre eigenen Inhalte. Overlays bekommen Änderungen etwa jede Sekunde.
- Auslösen über Fernsteuern, eine Regel, die Steuer-API oder das Stream Deck füllt Platzhalter in Texten, nimmt den gewählten oder einen zufälligen Eintrag und schickt das Event an alle Links der Funktion. Bei Fernsteuern steht in
userdein Name. RIWIUS.reportmeldet ein Ereignis an den Server, die Regeln laufen dann im Hintergrund.- Entfernst du eine Funktion, gehen ihre Inhalte mit verloren.
- Entfernst du im Baustein eine Sammlung, bleiben schon angelegte Einträge gespeichert und gehen weiter an die Overlays. Willst du sie loswerden, lösch die Einträge vorher unter Inhalte.
Grenzen und Zahlen
| Was | Wert |
|---|---|
| Eigene Bausteine | höchstens 20 je Kanal |
| Sammlungen | höchstens 5, je 10 Spalten |
| Einträge je Sammlung | Standard 100, höchstens 500 |
| Aktionen | höchstens 10, je 8 Parameter |
| Ereignisse | höchstens 10, je 8 Werte bis 200 Zeichen |
| Name / Beschreibung | 40 / 300 Zeichen |
| Code je Teil | höchstens 500 KB |
| Meldungen | höchstens 10 je Overlay in 10 Sekunden |
Schlüssel bestehen aus Kleinbuchstaben, Ziffern und Unterstrich (Sammlungen, Spalten) oder Bindestrich (Aktionen, Ereignisse) und beginnen mit einem Buchstaben. Eigene Funktionen gibt es in jedem Tarif, jede hinzugefügte Funktion zählt zur Grenze „Funktionen und Overlays“.
Zusammenspiel
- Regeln: Jede Aktion ist eine Regel-Aktion, jedes Ereignis ein Auslöser mit seinen Werten als
%wert%. Mehr unter Regeln & Variablen. - Steuer-API und Stream Deck: lösen Aktionen über die Taste Funktions-Aktion aus. Mehr unter Steuer-API.
- Export und Import: nehmen Baustein, Code und Inhalte mit. Mehr unter Funktionen und Leinwände weitergeben.