SogeBot - Twitch Bot

Free SogeBot - Twitch Bot 12.4.3

Changelog
  • fixed: crash if user changes his username 7d2190b
  • fixed: mods will not be automoderated #174
  • fixed: points will be not visible in webpanel viewers tab if points system is disabled #178
  • fixed: emit configuration on !set #180
  • changed: aliases (and its commands) can contain spaces now #158
  • changed: commands and aliases are case insensitive now #171
  • changed: random number filters can have arguments #157
  • changed: !set with empty value will set default value 3a313fc
  • changed: non eligible users will not be added to raffle list at all 35ea4d2
  • added: bot will send whisper message if raffle participation is succesfull or not 35ea4d2
  • added: alias and custom commands toggle visibility in list #159
  • added: (list.#) response filters #160
  • added: !followage #165
  • added: self purge !seppuku command #169
  • added: self purge !roulette command with 50% chance #170
  • added: bot will send both mute status in chat #167
  • added: emotes overlay - will show emotes from chat #175, #176, #177, #179, #181, #182, #183
  • added: stats overlay for viewers, followers, uptime #189
  • added: toggable subscribers moderation imunnity #184
  • added: added regulars permission #146
  • added: manage channel regulars through !regular add and !regular remove #146
  • added: raffles can have product now #163
  • added: raffles set custom reoccurring message #164
  • added: raffles added minimal watched time condition #161
  • added: !uptime offline message will contain how long stream is off #192
  • added: Event Listeners for various events and custom behavior #198
Changelog
  • fixed: moderation empty blacklist timeouts #145
  • fixed: pointsName for xmulti patterns #152
  • fixed: points system regexp #155
  • fixed: !watched crash if user doesn't have time attribute #156
  • added: (game) and (status) filters #149
  • added: (price) filter #151
  • added: (command.#) filter #148
  • added: (onlineonly) and (offlineonly) filters #150
  • added: latest followers widget #142
  • added: gambling system and simple !gamble with 50/50 outcome #154
Changelog
  • fixed: !points should return correct response now
Changelog:
  • re-add !top time and !top points #144
  • minor fix of evaluation if viewer an owner
Changelog:
  • fixed: getting data from API response arrays (#140)
    • Arrays can be defined now
      • API response example: {'my': [{'custom': 'Array'}]}
      • => (api.my[0].custom)
  • fixed: songrequest youtube link should not be moderated (#141)
Changelog
  • enhanced logging
  • fixed: exclude sender in (random.*) (#128)
  • added: (param) filter for custom commands (#129)
    • Usage:
      • Command !test with response: Something (param) something
    • Expected behavior:
      • !test
      • bot will not respond (no param is given)
      • !test dark side
      • Bot: Something dark side something
  • added: keywords, commands, notices can be edited in webpanel (#125)
  • added: fully translatable webpanel (#122)
  • added: whisper error if user have low permissions for command (#87)
  • added: blacklisting (#9) and whitelisting (#10)
  • added: soundboard duration progress bar when sound is played
  • added: search dropdown suggestions for games
  • added: dashboard viewers paging and username filtering
  • added: message API filter for API calls (#138) - HOW TO USE BELOW
  • changed way response time is calculated - will properly count when bot get message and finish parsing
  • more optimizations of followers
  • minor fixes (#130, #132)
How to use API filter
Note: usable in notices, keywords, custom commands - everything with response

How to use in response:
(api|http://your.url.goes.here) Something something (api.fromApiJSON)

Example setting for !api custom command with json response:
Set response to:
(api|https://jsonplaceholder.typicode.com/posts/5) UserId: (api.userId), id: (api.id), title: (api.title), body: (api.body)

Twitch chat:
sogehige: !api
bot: UserId: 1, id: 5, title: nesciunt quas odio, body: repudiandae veniam quaerat sunt sedalias aut fugiat sit autem sed estvoluptatem omnis possimus esse voluptatibus quisest aut tenetur dolor neque

Example setting for !api custom command with string response:
Set response to:
(api|https://api.kyroskoh.club/dota-api/party-mmr?id=58241935) (sender), (api._response)

Twitch chat:
sogehige: !api
bot: sogehige, [SO,HI]GE's Party MMR: 2072
Migration
  • If you are updating from previous version, please run npm run migrate and npm install before running a bot
Changelog
  • bot can have multiple owners now
  • cooldowns can be global or per user (#109)
  • Added (var.#) for setting and getting custom variables in custom commands
    • Example:
    • custom command settings !mmr with response (sender) my awesome mmr is (var.mmr)
    • !mmr 7410 - sets mmr variable
    • !mmr will respond with @sender my awesome mmr is 7410
  • notice can contain symbols now
  • removed !top command
  • added message count to !me command
  • added (random.subscriber) and (random.online.subscriber) filters
  • possibility to enable/disable prices, notices, custom commands, aliases and keywords from dashboard and as commands (e.g. !notice toggle <id>, !command toggle <command>) (#118)
  • !uptime format can be changed in settings->systems (#119)
  • cooldowns messages are sent as whispers
  • added bot response time to status
  • added !set moderationAnnounceTimeouts true/false to send moderation message to chat (#124)
  • various optimization
Changelog
  • Fixed cooldown crash
  • Fixed buttons refresh in webpanel
  • Fixed keyword bot crashes
  • Aliases with arguments are properly working now
  • Changed menu - created manage and settings dropdowns (#78)
  • Keywords are now case insensitive and symbols can be used as keywords
  • Custom Commands responses can contain symbols now
  • Added !set mute true/false to disable bot responses
  • Added bot response filters: (random.online.viewer), (random.online.follower), (random.viewer), (random.follower), (random.number-x-to-y), (get.#) - # can be any string
  • Added (set.#) for setting custom variables in custom commands
  • Various fixes for cyrillic
Changelog
  • added public /playlist endpoint
  • added cooldown system
  • added song request and playlist toggle
  • added migration tool between version of bot
  • added Cyrillic support
Top