wiki:Development/PlugIns

TracNav(Development)? This is part of the Development Documentation Project, please help document Colloquy if you know anything that would be relevant here for other users to know about.

Writing PlugIns for Colloquy

Colloquy opens up a lot of hooks to plugin developers to provide additional functionality or process chat messages. Plugins can be written in Objective-C (utilizing Cocoa), AppleScript, F-Script, JavaScript, Python and soon Ruby. Most hooks exist in all plugin types, but more advanced plugins can be written with Cocoa and F-Script.

AppleScript

To develop AppleScript PlugIns, you will need:

  • Apple's Script Editor.
  • Colloquy's Scripting Dictionary (available from within Script Editor).
  • Reasonably good knowledge of AppleScript.

Read more…

F-Script

To develop F-Script PlugIns, you will need:

  • A plain text editor (TextEdit is fine in plain-text mode).
  • The F-Script framework (available from the F-Script site).
  • The latest list of block names Colloquy looks for (available in the Colloquy SDK F-Script template).
  • Reasonably good knowledge of F-Script, Colloquy classes and utilizing the Cocoa frameworks.

Read more…

JavaScript

To develop JavaScript PlugIns, you will need:

  • A plain text editor (TextEdit is fine in plain-text mode).
  • The latest list of function names Colloquy looks for (available in the Colloquy SDK JavaScript template).
  • Reasonably good knowledge of JavaScript, Colloquy classes and utilizing the Cocoa frameworks.

Read more…

Objective-C

To develop Objective-C PlugIns, you will need:

  • Apple's Xcode (Project Builder is no longer supported).
  • Colloquy Headers from the Objective-C SDK (or fresh from the Subversion Repository).
  • Reasonably good knowledge of programming in general, and Objective-C utilizing the Cocoa frameworks. This is not for beginners!

Read more…

Python

To develop Python PlugIns, you will need:

  • A plain text editor (TextEdit is fine in plain-text mode).
  • The PyObjC framework (available from the PyObjC site).
  • The latest list of function names Colloquy looks for (available in the Colloquy SDK Python template below).
  • Reasonably good knowledge of Python, Colloquy classes and utilizing the Cocoa frameworks.

Read more…

Ruby

Colloquy currently does not ship with Ruby plugin support; however, it is in the works. If you have a good knowledge of Ruby and RubyCocoa, feel free to help us finish our Ruby scripting support.

Read more…


Installing PlugIns for Colloquy

PlugIns can be installed in one of the following places:

~/Library/Application Support/Colloquy/PlugIns
/Library/Application Support/Colloquy/PlugIns
/Network/Library/Application Support/Colloquy/PlugIns

Colloquy PlugIn SDK

The current SDK can be downloaded here and includes examples and headers you will need to get started.

The Colloquy plugin system is constantly evolving as areas are highlighted that need to be addressed to add more flexibility. With the current system, it's possible to create a wide range of plugins. However, if you start writing a plugin and find you are unable to do exactly what you would like, just let me know.

Last modified 8 years ago Last modified on Nov 26, 2006 2:48:20 PM