Skip to content

ForAll

ForAll v1.3.3 - 2026-09-01

Добавлено ✨

  • Нативные аргументы Streamer.bot из MiniChat
    • %userId% ← Data.UserID (Message, Reward, Live)
    • %rawInput%, %rawInputEscaped% для Message (как у нативного чата)
    • %viewers% для Live Host (как у Raid)
    • Reward: %rewardId% ← Data.RewardID → OriginalGUID → ID; %redemptionId% ← GUID → ID; %rewardCost% ← Data.Price

Изменено 🔧

  • Конвертер валют донатов: play-code.ru/api/currency заменён на Frankfurter (курсы ECB, без API-ключа) для пар без RUB; для пар с RUB — курсы ЦБ РФ (кэш на сессию). При ошибке — исходная сумма без конвертации.

Удалено

  • MiniChat Support Methods: интеграция с play-code.ru
    • Проверка обновлений и объявления в чат
    • Удалённая отправка exception-репортов
    • Клиентский ReportError / RegisterError в остальных code blocks; ошибки только в локальный лог

Исправлено 🐛

  • Спам «- Интеграция отключена» при рассинхроне портов WS и MiniChat

    • Global minichat.ws.wasConnected: уведомления и MiniChat.Disconnected только после реального WebsocketClientOpen
    • «+ Подключена» / MiniChat.Connected — только при переходе disconnected → connected
    • WebsocketClientClose: TrySetPortFromArgs() перед HTTP в MiniChat API
  • Игнорирование событий Avatar

    • Ранний фильтр в WebSocket-обработчике (IsIgnoredSocketMessage, как для State)
    • Триггер MiniChat.*.Avatar больше не создаётся при смене аватарки
  • Импорт: структура экшенов и Execute C# Method

    • Code hosts в -- MiniChat Integration (кастомные 99998 не -not valid-)
    • WS + Execute в -- MiniChat WS Handler (id c0de0001… из 1.3.2 Modules; без отдельного нового экшена)
  • Закрытие Streamer.bot без WebsocketClientClose

    • Dispose(): MiniChat.Disconnected и «- Интеграция отключена» при штатном выходе
    • Init(): сброс устаревшего minichat.ws.wasConnected, чтобы после перезапуска снова срабатывали «+ Подключена» и MiniChat.Connected

ForAll v1.3.2 - 2026-08-31

Исправлено 🐛

  • Высокий CPU на потоке Type: "State" и тяжёлой цепочке Integration

    • HandleSocketTrigger: ранний игнор State до парсинга и DBG-лога
    • wsPort: безопасное чтение аргумента (NRE при конкурентных WS-run)
    • CooldownManager: загрузка кулдаунов при создании, tolerant parse globals
    • MinichatTriggerManager: RegisterTriggers(); при WS Open Method Collection вызывает его сам (повторный импорт восстанавливает prebuild без ручного Modules)
  • Пререгистрация триггера Follow для W

    • В предустановленные события для W добавлен Follow, чтобы триггер MiniChat.W.Follow существовал после инициализации менеджера триггеров

ForAll v1.3.1 - 2026-08-12

Исправлено 🐛

  • Команды MiniChat на Streamer.bot 1.0.5+/1.0.7
    • users.dat: поле users читается и как объект (формат ≤1.0.4), и как массив (новый формат сейва)
    • Иначе FindAndInvoke падал на десериализации и команды не находились

ForAll v1.3.0 - 2026-08-12

Добавлено ✨

  • Аргумент isModerator для W

    • Роли Moderator и Owner (владелец канала) в Data.Roles
  • Поддержка донат-площадок в триггерах и диапазонах

    • Добавлены сервисы: DonateHelper, DonateX, CloudTips, iHAQDonate, Tribute
    • Сервисы включены в предустановленные Donation-триггеры и в регистрацию диапазонов донатов
  • Новые стрим-сервисы (входящие события)

    • Tach: Message, First Words, Follow, Donation (+ Donation, включая диапазоны)
    • W: Message, First Words, Raid
    • Matreshka: Message, First Words

Изменено 🔧

  • Twitch WatchStreak: проброс текста сообщения

    • Для Data.Type = WatchStreak теперь заполняется стандартный аргумент message
    • Источник текста: Data.MessageKit (с fallback на Data.Message)
  • Текст доната и награды (%message%, %daMessage%, %rawInput%)

    • Собирается из Data.MessageKit, как у сообщений чата
    • Если MessageKit отсутствует — fallback на Data.Message для старых payload и сервисов без кита
  • Совместимость и статус спорных мест по MiniChat 0.15.0 β

    • Trovo оставлен в интеграции для обратной совместимости
    • Поддержка MemeAlerts будет уточнена после получения реальных событий (payload)

ForAll v1.2.0 - 2026-07-13

Добавлено ✨

  • RegisterRewardTriggers
    • Массовая пререгистрация триггеров наград без срабатывания события
    • Аргументы: rewardNames, minichat.Service (по умолчанию VKVideoLive)
    • Алиасы VKPlay и VKVideoLive: дедуп по имени награды, legacy VKPlay не ломается

ForAll v1.1.0 - 2026-07-01

Добавлено ✨

  • Аргумент isModerator

    • Устанавливается в true для всех трёх ролей модератора с VK Live и для роли Editor с GoodGame
  • Триггер Any reward

    • Срабатывает при активации любой награды с площадки, аналогично нативному триггеру Twitch
    • Пререгистрируется для Twitch и VK Video Live при запуске Streamer.bot

Исправлено 🐛

  • Прегенерация триггеров событий
    • При запуске Streamer.bot триггеры сразу доступны для Twitch, YouTube, GoodGame, Kick и Discord
    • Для VK Video Live добавлен триггер Host, для MiniChat — Message

ForAll v1.0.2

Исправлено

FindAndInvoke — обработчик команд.

  • 💊 Обеспечена корректная обработка команд для YouTube Shorts
  • 💊 Обеспечена корректная обработка команд для Kick
  • 💊 Переход с цепочки OR-условий на использование HashSet

RefreshMemory — сброс кэша FirstWords.

  • 💊 Добавлена проверка на ненулевое значение AutoResetHours. Спасибо Ulanir за находку.

LoadFirstWordsAutorefreshHours — получение настроек таймера FirstWords из бота.

  • 💊 Обновлено расположение настроек для совместимости с новыми версиями Streamer.bot

SendBroadcastMessage — рассылка сообщений сразу на все подключенные платформы.

  • 💊 Добавлена отправка в Trovo и Kick нативными методами сб.

SendMessageReply — отправка ответа на конкретную платформу.

  • 💊 Добавлена отправка ответов на Trovo и Kick через нативные методы бота.

Формирование текста сообщения (message)

  • 💊 Для частей сообщения с типом URL теперь используется полная ссылка из Data.MessageKit.*.Data.URL вместо сокращённого превью-текста из Data.Text. Это устраняет обрезание ссылок в %message% и во всех производных аргументах команд (%rawInput%, %input0%, %rawInputEscaped%, %inputUrlEncoded0% и т.д.)

Перезагрузка команд Streamer.bot

  • 💊 Логические изменения в commands.json, actions.json и users.dat теперь определяются по MD5‑хэшу нормализованных данных
  • 💊 При неизменном хэше пропускается повторный парсинг команд и пересборка регулярных выражений, что снижает нагрузку при частых сохранениях и уменьшает засорение логов