Skip to content

Python 3 universal chatbot core for the StackExchange network, based on ChatExchange by Manishearth

Notifications You must be signed in to change notification settings

ByteCommander/PARSEC

Repository files navigation

P.A.R.S.E.C.

Python All-round Robot for the StackExchange Chat

This project is not functioning at all yet. There's still a lot more to do than done!

PARSEC is a modular chatbot core written in Python3 for the StackExchange network's chat sites that works as ultra-high level interface for the ChatExchange-API.
It contains ChatExchange6 as a submodule, my personal fork of the Python2 ChatExchange API by Manishearth, rewritten to support both Python2 and Python3.

PARSEC simplifies interacting with any SE chat by encapsulating all API methods in one well-structured global object. Furthermore it provides simple hook methods that allow you to easily code an object-orientated, event-driven chatbot. You don't have to care about how to send a message, identify an user, detect commands or pings. Instead, you just activate a room and pass your callback function that handles the event together with the trigger you want to react on (message with either prefixed command, ping, reply, name mentioned or matching any RegEx; message edits; user events; room events; star events;...).
The interface also allows you to get a bunch of information about SE users like their nicknames, network reputation, moderator status, about-me section, etc. Rooms have a lot to know as well, like their titles, descriptions, activity, and so on.

The second great tool PARSEC provides is its fabulous configuration system. It lets you to have a main configuration, but allows you to override parts of it both per room and per user it interacts with!

Build status:

PARSEC: no tests available yet
ChatExchange6
(external dependency):
Travis-CI build status of ChatExchange6

About

Python 3 universal chatbot core for the StackExchange network, based on ChatExchange by Manishearth

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages