Modular, scriptable communication router
TL;DR:
- Centralize multiple channels like Facebook, ICQ, IRC, IMAP, POP3, SMS etc...
- Automate communication with scripts, like: "Send me a SMS when Felix sends me an E-Mail"
- Translate between channels, e.g.: Chat with your facebook friends from Steam
All services and librarys are implemented in C++ using features of C++11. One of the design goals is to have few dependencies, the core library libpipe has no dependencies except for a C++11 compilant compiler. Another design goal was to build everything modular and platform independent. Pipe works on Windows, Linux and OSX and has pure C interfaces for interfacing to libpipe and writing pipe services. A easy to use C++ interface layer is also included.
This repository currently consists of four projects
- libpipe: Plugin-based library for multi channel communication and automation
- PipeExtensionPurple: Enables communicating with libpurple supported networks (e.g. ICQ, IRC, Facebook, ...)
- PipeServiceHost & PipeServiceInstance: Web+Websocket server for SaaS hosting of pipe instances including a ExtJS based Webinterface
- libpipe
- Default DOM should be restructured
- Provide access to DOM in root node and scripting
- Scripting should be modular and not embedded in libpipe
- PipeExtensionPurple
- Implement all missing features
- Figure out how to handle contacts outside of the contact list
- PipeServiceHost & PipeServiceInstance
- Implement admin interface
- Implement user management commands
- Write a Qt based client
- Documentation
- Install MSVC2013
- Download the external folder and extract it to the root or create your own folder
- Open project with MSVC2013 and compile
- Install GCC >= 4.9.1
- Install CMake >= 2.8
- Install the current master of Poco
- run git checkout master
- run ./configure --omit=XML,JSON,Data,Data/SQLite,MongoDB,Data/MySQL,Data/ODBC,CppParser,PDF,Zip,PageCompiler --no-samples --no-tests
- Install glib
- Install libpurple >= 2.10.9
- Build Pipe
- run cmake CMakeLists.txt
- run make
- run make install
- Install XCode and XCode Command-Line tools
- Install CMake >= 2.8 (brew install cmake)
- Install PkgConfig (brew install pkgconfig)
- Install libpurple (brew install finch)
- Install the current master of Poco
- run git checkout master
- run ./configure --config=Darwin-clang-libc++ --omit=XML,JSON,Data,Data/SQLite,MongoDB,Data/MySQL,Data/ODBC,CppParser,PDF,Zip,PageCompiler --no-samples --no-tests
- run make
- run make install
- Build Pipe
- run cmake CMakeLists.txt
- run make
- run make install