Донаты: семь сервисов, один поток событий
DonationAlerts, DonatePay, DonateX, Streamlabs, StreamElements, Trula и StreamEngine приходят как события одного типа, конвертируются в одну валюту — поэтому алертам, целям сборов, аукциону и озвучке всё равно, откуда пришли деньги.
Бесплатно — как всё, что работает на вашем компьютере.
Всё, что считается деньгами, одним списком
Донат — это донат. Всё, что дальше — алерт, полоса цели, ставка в аукционе, строка для озвучки — реагирует на событие, а не на сервис, который его доставил.
- DonationAlerts, DonatePay, DonateX, Streamlabs и StreamElements приносят донаты по мере их прихода.
- StreamEngine приносит платные эффекты на экране и заказы медиа наравне с обычными донатами.
- Trula приносит донаты, включая те, которыми зритель оплачивает трек.
- Битсы Twitch, YouTube Super Chats и платные стикеры YouTube тоже приходят донатами, так что идут в общую цель.
- Несколько сервисов работают одновременно без конфликтов, а добавленный позже ничего не меняет в том, что уже настроено.
Когда зритель платит за действие, а не за перевод
Переводы продают не все. На StreamEngine зритель покупает то, что произойдёт у вас на экране — перевернуть его на десять секунд, размыть камеру, сломать видеокарту, — а на Trula заказывает трек. Деньги приходят обычным донатом, но одна сумма не говорит, что сейчас случится.
- Там, где сервис это сообщает, алерт называет покупку: «Переворот Экрана ×6 · 10 сек» рядом с ником.
- Лента событий на Панели управления показывает ту же строку — и живьём, и в истории.
- Статистика её сохраняет, поэтому две покупки по одной цене остаются различимы и потом.
- Цели сборов, аукцион и карусель её намеренно не смотрят: они работают с суммой.
- StreamEngine называет проданный эффект; Trula название трека не присылает, поэтому её заказы музыки приходят обычными донатами.
Что происходит без вашего участия
Правило под донат писать не надо. Он приходит — и всё, что уже слушает, на него реагирует.
- На оверлее срабатывает алерт — ник, сумма, сообщение.
- Двигается полоса цели, аукцион засчитывает ставку, а донат ложится в копилку карусели — прокрут, а за ним и счётчик челленджа, случатся, когда копилка дорастёт до заданной суммы.
- Озвучка читает сообщение вслух, если сумма выше заданного порога.
- Статистика пишет его в итоги того стрима и в топ донатеров.
- Отрабатывают ваши сценарии, если вы их написали.
Чего он делать не будет
Принести деньги — вся его работа. Всё, чем можно незаметно надуть число, оставлено за бортом.
- Он только принимает: выплаты, возвраты и страница, на которой платит зритель, остаются у сервиса.
- Донаты, пришедшие при выключенном приложении, не переигрываются алертами — утренний запуск прокрутил бы всю ночь подряд.
- В ленте StreamEngine лежат ещё и события Twitch, DonationAlerts и Trovo. Они намеренно пропускаются, иначе один донат посчитался бы дважды.
- Предпросмотр из кабинета StreamEngine и бесплатный заказ до полосы цели не доходят: денег, которых нет, там быть не должно.
- Тестовый донат из кабинета DonateX до алертов доезжает — он для того и нужен, — и приходит с пометкой «тест», чтобы тот, кому его считать не надо (прежде всего аукцион), его и не считал.
Одна валюта, или числа теряют смысл
Зрители платят в той валюте, которую дают их платформа и карта, а полоса цели должна показывать одно число. Эта конвертация — отдельный модуль, потому что ошибка в ней незаметно портит все итоги, которые вы видите потом.
- Три онлайн-источника курсов с резервом, так что отказ одного не остановит подсчёт.
- Курсы, заданные руками, — для того, чего не знает ни один источник: прежде всего для битсов Twitch, по той цене, которую вы за них получаете.
- Базовая валюта задаётся один раз в Настройки → Локализация, и всё остальное следует ей.
- Полоса цели, аукцион, карусель и порог озвучки читают уже пересчитанную сумму, так что заданный порог означает одно и то же независимо от валюты зрителя.
История без пропусков
Приложение не работает круглосуточно, а донаты его не ждут.
- Вся история DonationAlerts загружается один раз, при первом подключении; дальше последние донаты сверяются с сервисом — через двадцать секунд после подключения и раз в пятнадцать минут, — так что ночь с закрытым приложением не оставляет дыры в статистике.
- Эта загрузка идёт прямо в статистику, а не через алерты: итоги становятся полными, но вчерашний вечер заново на экране не проигрывается.
- Платежи StreamEngine, пришедшие при закрытом приложении, тем же путём попадают в статистику при следующем запуске, без алерта. Лента StreamEngine отдаёт только 25 последних событий любого вида, так что долгий или бурный перерыв всё-таки может оставить дыру. Цели сборов, карусель и аукцион эти платежи не учитывают.
- Обе загрузки пропускают сервис, с которого вы сняли галочку в блоке «Учитывать донаты» на вкладке «Настройки» страницы «Статистика», как и живой подсчёт.
- Если сокет замолчал, а подключение всё ещё выглядит живым, сверка это доказывает: карточка пишет «События не идут» и предлагает переподключиться.
Из чего собрано
Каждая часть — отдельный модуль: ставите только нужные, и любой можно убрать, не сломав остальное.
Как начать
- Установите базовую валюту в Настройки → Локализация.
- Откройте Подключения → Монетизация и подключите сервисы, которыми пользуетесь.
- Если принимаете битсы Twitch, задайте им курс в Настройки → Курсы валют.
- Отправьте тестовый донат и проверьте, что он доходит до оверлея алертов.
- Направьте на него цели, аукцион и озвучку — они уже слушают.
Семь сервисов сегодня, и список растёт с того же места: новый — это ещё один коннектор, а всё, что дальше, уже слушает.
Работает вместе с
Скачать strAImer
Всё на этой странице работает на вашем компьютере — бесплатно, без аккаунта, ничего подключать не нужно.
Чего-то здесь не хватает? Попросите на доске идей — по голосам видно, что нужнее всего. Предложить идею