Skip to content

RocketChat/Apps.BadWords

Repository files navigation

Apps.BadWords - Google Summer of Code 2021

google-summer-of-code

Apps.BadWords : A Rocket.Chat App for bad words filtration for incoming messages and apply moderation policies.

Abstract

Currently Rocket.Chat supports the bad words filtration of incoming messages in channels but that is not much customizable for the user. The idea for this App is to utilize the capabilities of Rocket.Chat.Apps-Engine and make a Rocket.Chat app which can provide a feature rich experience to the users and people can use the app according to their needs.

Features

The features of the project are as follows:

  • Basic App Settings and Settings handler.

    • Settings Handler called every time any settings changes or when the app restarts.
  • Getting the final list of blocked words.

    • Fetching words from URL.
    • Getting user defined blocked words.
    • Removing user defined allowed words from the list of blocked words.
    • Getting list of Blocked words whenever app starts or restarts.
  • Basic Message Filtering.

    • Checking the message against the list of blocked words at the time of saving new message and removing blocked words.
    • Cheking the message against the list of blocked words whenever any message is edited and removing the blocked words.
  • Applying moderation policies for offending users

    • Storing the number of times a user uses bad words in a channel.
    • Banning a user and not letting the user send message in the room if the user exceeds the threshold limit set by admin.
    • Showing warnings to the users whenever a bad word in their message is found.

Steps to run

Clone the repository and install dependencies

https://github.com/RocketChat/Apps.BadWords.git
cd Apps.BadWords
npm install

Make sure you have globally installed Rocket.Chat.Apps-cli

npm install -g @rocket.chat/apps-cli

Make Sure you have Rocket.Chat server running on your localhost and you have enabled the Apps development mode in admin settings. If not then enable by - Administration -> Geneal -> Apps -> Enable development mode

Now you are all set to install the app by -

rc-apps deploy --url http://localhost:PORT --username "username" --password "password"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published