/SmokeDetector

Headless chatbot that detects spam and posts links to it to chatrooms for quick deletion.

Primary LanguagePythonApache License 2.0Apache-2.0

SmokeDetector

Build Status Circle CI Coverage Status

Headless chatbot that detects spam and posts it to chatrooms. Uses ChatExchange, takes questions from the Stack Exchange realtime tab, and accesses answers via the Stack Exchange API.

Example chat post:

Example chat post

User documentation is in the wiki.

To set up, use

git config user.email "smokey@erwaysoftware.com"
git config user.name "SmokeDetector"

git clone https://github.com/Charcoal-SE/SmokeDetector.git
cd SmokeDetector
git checkout deploy
git submodule init
git submodule update
sudo pip3 install -r requirements.txt --upgrade
pip3 install --user -r user_requirements.txt --upgrade

Next, copy config.sample to a new file called config, and edit the values required.

To run, use python3 nocrash.py (preferably in a daemon-able mode, like a screen session.) You can also use python3 ws.py, but then SmokeDetector will be shut down after 6 hours; when running from nocrash.py, it will be restarted. (This is to be sure that closed websockets, if any, are reopened)

You can run . ChatExchange/setp.sh to set local environment variables so that you don't have to log in every time.

SmokeDetector only supports Stack Exchange OpenIDs for now.

License

Licensed under either of

at your option.

Contribution Licensing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.