A moderation bot for the XMPP communication network.
Go to file
2024-06-30 00:16:03 +03:00
kaikout [WIP] This is the first commit, due to a demand of Kris. We will continue after Sunday in order to be coordinated with our Christian brothers. 2024-06-30 00:16:03 +03:00
LICENSE [WIP] This is the first commit, due to a demand of Kris. We will continue after Sunday in order to be coordinated with our Christian brothers. 2024-06-30 00:16:03 +03:00
pyproject.toml [WIP] This is the first commit, due to a demand of Kris. We will continue after Sunday in order to be coordinated with our Christian brothers. 2024-06-30 00:16:03 +03:00
README.md [WIP] This is the first commit, due to a demand of Kris. We will continue after Sunday in order to be coordinated with our Christian brothers. 2024-06-30 00:16:03 +03:00

Moderation bot for XMPP

KaikOut is a portmanteau of Kaiko and Out.

Kaiko (懐古) translates from Japanese to "Old-Fashioned".

Because spam has never been in fashion, unless it is served on a plate.

KaikOut

KaikOut is a moderation bot for the XMPP communication network.

KaikOut is an XMPP bot that suprvises group chat activity and assists in blocking and preventing of abusive and unsolicited type of messages and activities.

KaikOut is designed primarily for the XMPP communication network (aka Jabber). Visit https://xmpp.org/software/ for more information.

You can run your own KaikOut instance as a client, from your own computer, server, and even from a Linux phone (i.e. Droidian, Kupfer, Mobian, NixOS, postmarketOS), as well as from Termux.

All you need is one of the above and an XMPP account to connect KaikOut with.

Good luck!

Slixmpp

KaikOut is a powered by slixmpp.

XMPP

XMPP is the Extensible Messaging and Presence Protocol, a set of open technologies for instant messaging, presence, multi-party chat, voice and video calls, collaboration, lightweight middleware, content syndication, and generalized routing of XML data.

Visit XMPP for more information about the XMPP protocol and check the list of XMPP clients.

KaikOut is primarily designed for XMPP (aka Jabber), yet it is built to be extended to other protocols.

Features

Control

  • Blocklist - Check messages for denied phrases and words (activated by default).
  • Frequency - Check the frequency of messages and status messages (activated by default).
  • Inactivity - Check for inactivity (deactivated by default).
  • Moderation Abuse - KaikOut moderates the moderators.

Report

  • Logger - Log messages to CSV files.
  • Moderation Reports - KaikOut immediately reports to moderators about moderation activities made by other moderators.
  • Self Reports - KaikOut immediately reports to moderators about its moderation activities.

Special

  • Remote Management - KaikOut can be managed in two fashions, publicly (groupchat) and privately (chat).
  • Simultaneous - KaikOut is designed to handle multiple contacts, including groupchats, Simultaneously.
  • Visual interface - Interactive interface for XMPP using Ad-Hoc Commands,

Preview

KaikOut as appears with Cheogram.

Chat: Session Ad-Hoc: Commands Ad-Hoc: Edit bookmark Ad-Hoc: Settings

Getting Started

Install

It is possible to install KaikOut using pip and pipx.

pip inside venv

$ python3 -m venv .venv
$ source .venv/bin/activate
$ pip install git+https://git.xmpp-it.net/sch/KaikOut

pipx

Install
$ pipx install git+https://git.xmpp-it.net/sch/KaikOut
Update
$ pipx uninstall kaikout
$ pipx install git+https://git.xmpp-it.net/sch/KaikOut

Start

Start by executing the command kaikout and enter Username and Password of an existing XMPP account.

$ kaikout

You can also start KaikOut as follows:

$ kaikout --jid ACCOUNT_JABBER_ID --password ACCOUNT_PASSWORD

It is advised to use a dedicated extra account for KaikOut.

KaikOut works with any XMPP chat client; if you want to make use of the visual interface which KaikOut has to offer (i.e. Ad-Hoc Commands), then you are advised to use Cheogram, Converse, Gajim, monocles chat, Movim, Poezio, Profanity, Psi or Psi+.

Support

Please join our support groupchat whether you want help, discuss new features or just greet us.

Authors

Schimon (Author).

License

AGPL3 license.

Schimon Jehudah Zackary, 2024