Pichat SDK, software development kit

Last update 05/Aug/2010 by Mark Seuffert

1. Introduction

This document gives a quick overview of the Pichat SDK. The SDK allows developers to write chat plugins, it comes with libraries, examples and unit tests. Shared libraries are available for C++ on Linux, BSD and Windows.
The Pichat SDK is available at http://www.pichat.net

2. Get up and running

Let's make a tour through the Pichat SDK. After downloading and unzipping let's have a look at the Linux files first, skip the first part if you don't use Linux:
On Linux and BSD you can build examples with the command 'make SHARED=1; make' from a console window. When it's done type './pluginviewer' to see a list of plugins with version information and a short description. With 'make test' you can also run a collection of unit tests. In case of troubles, please make sure that you have required development packages installed and all unit tests pass.
On Windows you can build examples in your development environment, a Visual C++ project file is included. Double click the file 'pichat_sdk.dsw', then build each Win32 release and copy the generated DLLs from the 'Release' folder into the SDK folder (where the project file is). You can now run the plugin viewer, select 'pluginviewer - Win32 release' and press Ctrl+F5 to see a list of plugins with version information and a short description.
Additionally, there are two libraries PichatCore and SharkEngine to assist you in writing plugins. They are the biggest part of the SDK and offer chat and network functionality, see individual documentations for more details. You are now equipped with the basic knowledge about this SDK, happy coding!
Tips and tricks:
  • Make sure that you always use the latest Pichat SDK. It is possible that interfaces change over time and libraries are incompatible with older versions. When a new Pichat SDK version comes out it's recommended to test plugins and recompile them if necessary.
  • Plugin examples and unit tests make a great starting point for new developers. Have a look at the source code and use them as a base for your own code, there are examples on how to create chat bots, for network programming and many things more.
  • Plugins are loaded on application startup. Copy your plugins into the Pichat program directory (where your pichat.exe is).
  • Fresh pizza, coke and coffee goes best with programming Pichat! :)
For more documentation please visit the Pichat website.

3. Description of files

libpichatcore.soPichatCore shared library for Linux/BSD
libsharkengine.soSharkEngine shared library for Linux/BSD
MakefileMakefile for Linux/BSD
pichat_sdk.dswVC6 project file for Windows
pichat_sdk.txtThis friendly help file
pichat_sdk_coding_standard.txtCoding Standard for C++
pichat_sdk_pichatcore.txtPichatCore documentation, chat functionality
pichat_sdk_sharkengine.txtSharkEngine documentation, platform abstraction
pichatcore.dllPichatCore shared library for Windows
pichatcore.libPichatCore import library for Windows
PichatCore_ChatActions.hPichatCore header file, chat actions
PichatCore_ChatAlgorithms.hPichatCore header file, chat algorithms
PichatCore_ChatInterfaces.hPichatCore header file, chat interfaces
PichatCore_ContainerText.hPichatCore header file, text container
PichatCore_ContainerTextMap.hPichatCore header file, associative text container
PichatCore_Definitions.hPichatCore header file with required definitions
PichatCore_ParserServerAuthentication.hPichatCore header file, file parser server authentication
PichatCore_ParserUserAuthentication.hPichatCore header file, file parser user authentication
PichatCore_PluginHandler.hPichatCore header file, plugin handler
PichatCore_SocketClientHttp.hPichatCore header file, HTTP client
PichatCore_SocketClientSmtp.hPichatCore header file, SMTP client
PichatCore_SocketServerHttp.hPichatCore header file, HTTP server
PluginExample.hShared header file for chat plugin examples
PluginExample1.*Plugin example, implements required interface
PluginExample2.*Plugin example, handling chat server actions
PluginExample3.*Plugin example, handling commands and preferences
PluginExample4.*Plugin example, handling languages and resources
PluginExample5.*Plugin example, handling chat bot and logging
PluginExampleResourceModule.*Plugin example, resource with different languages
PluginViewer.*Lists available plugins with version information
sharkengine.dllSharkEngine shared library for Windows
sharkengine.libSharkEngine import library for Windows
SharkEngine_Classes.hSharkEngine header files with available classes
SharkEngine_Definitions.hSharkEngine header file with required definitions
Test*.cppCollection of unit tests and code examples
Linux/BSD libraries are compiled with gcc4 and libc6, i586 compatible CPU.
Windows libraries are compiled with VC6, i386 compatible CPU.
These files may be used and distributed under the terms of the Piratson public license as published in Pichat readme.
Pichat is a simple to use peer-to-peer (P2P) chat software. It comes with integrated LAN messenger and webchat. The chat server supports multiple chatrooms, text formatting with smileys and a user-friendly webchat (HTML, CSS, DOM, JavaScript). The webchat works with nearly any web browser, easily integrated into your design, no PHP/Flash/Java required. Software for free information exchange for Linux and Windows.