Skip to content
Joshua Haas edited this page Jan 30, 2017 · 5 revisions

Sibyl is pretty easy to extend as long as you're already familiar with python. If not, try some of these resources:

There are two big things you may want to code for sibyl, plugins and protocols. Brief descriptions can be found below. Also see any of the other dev pages:

  • Plug-Ins - writing chat commands or other interesting functions
  • Decorators - using hooks to execute functions for triggering events
  • Protocols - interfacing sibyl with a new chat protocol
  • SibylBot - using sibyl's built-in methods
  • Unit Tests - writing and executing test scripts
  • Examples - detailed examples for some tasks

Chat Commands

Writing your own chat commands is pretty simple. To do so you should at least be familiar with the following. Much of this is also discussed in Plug-Ins.

  • the @botcmd, @botinit, and @botconf decorators
  • returning a string from an @botcmd function sends it as a reply to the user
  • methods in the Message class
  • methods in SibylBot
  • how arguments are parsed from chat messages in commands

Chat Protocols

Writing a chat protocol plugin is a bit more involved. In general you should first find an existing python library that implements the protocol (e.g. xmpppy for XMPP/Jabber) and then just wrap its methods to fit with the sibyl API. For more details read about writing protocols.

Clone this wiki locally