Документація для розробників аддонів StreamKit+

Інтеграційні аддони розширюють StreamKit+ з ізольованого worker-процесу. Код аддона виконується у VM-пісочниці та використовує глобальні API (network, events, api, …) — імпорт SDK всередині worker недоступний.

Розділи

Розділ Опис
Початок роботи Архітектура, встановлення, структура проєкту
Життєвий цикл Завантаження, перезапуск аддона та захист від циклу падінь
manifest.json Поля маніфесту, типи, правила валідації
Публікація та релізи Структура GitHub-релізу, кеш каталогу та автоматична синхронізація версії
Налаштування TypeScript tsconfig.json, типи, збірка
Дозволи Прапорці можливостей і підтвердження користувачем
Схема налаштувань GenerateConfig() і UI налаштувань
Локалізація Багатомовні рядки в коді аддона
Безпека Обмеження мережі, токени, ліміти пісочниці
OAuth і секрети Обмін токенів через вихідний HTTP

API пісочниці

Розділ Опис
Огляд API Усі глобальні об'єкти
events Шина подій і прив'язка HTTP-обробників
network HTTP-клієнт, ендпоінти, WebSocket, Socket.IO
api.config і storage Параметри, конфіг застосунку, файлове сховище
addons (RPC) Запити між аддонами
dashboard Віджет подій, чат, тригери оверлею
status, notify, ui Рядок стану, сповіщення, сторінки OAuth
Утиліти Таймери, crypto, console, режим розробника

Категорії аддонів

Розділ Опис
Платформені аддони platform.streaming, platform.donation
Оверлеї Ефекти, статичний web, просте медіа
Віджети Постійні web-сторінки та OBS Browser Source
Застосунки Вікна всередині основного застосунку
Ігрові інтеграції Внутрішньоігрові ефекти та вхідні тригери

Типізація

Встановіть оголошення пісочниці з npm — версія пакета має збігатися з цільовою версією StreamKit+:

npm install --save-dev @rocketman-streamkit/types

Див. Налаштування TypeScripttsconfig.json і глобали (declare global, без імпортів у коді аддона).