!ban feature for Phantombot


#1

Sup guys,

I request a feature to ban people directly THROUGH the bot with a banlist. So basically if you type: !ban user1234 nword, It will perm ban this user with added to the banlist on the Control panel from phantombot. Ofc with a timestamp when he got banned. After that, a mod can check like why he got banned and how long and stuff. When the user try to type, it will say: You are permantly banned from talking from channel123. Please contact a mod for further information. Reason: phantombot banlist." So they message just gets blocked by phantombot and the user gets this message.

I personally dont like the /ban feature because i think how it works, only the streamer can see the ban reason and when he got banned. i dont think mods can see it. i personally realy like a !ban feature.


#2

Unfortunately, once a user is banned, all they get is the ban message and their private messages do not come through for the bot to intercept. There is no way for the bot to send a message to a banned person if they type into chat.

PhantomBot cannot block messages, if you are wanting PhantomBot to perform a .timeout 1 operation every time someone talks, if they are “pseudo-banned” by the bot then they will be able to quickly overload your bot which is limited to how many messages it can send in a 30 second period.

There are reasons that Twitch designed /ban the way that they did and there have been conversations around this in the Twitch Development Forums.


#3

Hm … well… hnlbot has an ban feature as well with a banlist. Which is 10 times better i think but idk if its possible with phantombot. i dont think hnlbot blocks the message from chat, twitch still does it but hnlbot logs the ban in a list.


#4

PhantomBot had a ban command a very long time ago, so long ago I wasn’t a developer at the time. What I can remember about it is the complaints from broadcaster saying the bot was banning users from their chats, but in reality a moderator was using the command to ban them, which resulted in showing the bot as the ban person. When I became a developer, I rewrote the entire moderation system an told the team that ban and timeout commands would not be implemented again for that reason. Also, hnlBot has an access panel for moderators, PhantomBot doesn’t, meaning only people with your control panel’s login information could see users that are on that list.


#5

Hm… so basically this bot is only made for the streamer itself and not for giving access to mods?


#6

I may have misunderstood what you said above. It seems to indicate if a user tries to type, that HNLBot was sending a message. We have no control over any message like that, it is sent from Twitch where the IRC server performs the intercept.


#7

As a self-hosted solution, yes. The original intent was for it to be ran locally like other bots that are available that run the same way. However, it is also able to be ran on a remote server like a VPS. The Control Panel was never designed though to support multiple users with audit points because of the self-hosted nature. The reason that the Control Panel was written as a web application rather than a standalone binary was to be platform independent, and not require a user to have to setup server software (like Apache, Tomcat, PHP, etc).


#8

I have made this script below and advised them to make a page like https://www.alixe.pro/leaderboard to display the banned users

banHandler.js (1.6 KB)
handlers-banHandler.js (204 Bytes)


#9

thanks bud!


#10

I have added a unban command so you can now unban users using !unban

banHandler.js (2.2 KB)
handlers-banHandler.js (397 Bytes)


#11

Dakoda, I have added the two scripts to their appropriate folder locations:
scripts>handlers>banHandler
and
scripts>lang>english>handlers>handlers-banHandler

The control panel sees the handler and it is enabled, however when I try running the command, I get nothing. Is there something I’m not doing? I’m completely new to Phantombot modifications.

Sorry for necromancing a dead topic.