IBM Proactive Technology Online (PROTON) is an open source complex event processing engine developed at IBM Research - Haifa. PROTON was developed as a research project and extended in the scope of the following EU projects: FINEST, FISPACE, FIWARE, SPEEDD, FERRARI, PSYMBIOSYS and DATABIO. It provides language primitives for defining, submitting, and executing event processing networks. The goal of the system is to respond to raw events and identify meaningful events within contexts. The system comes with a set of built-in operators (such as sequence, all, etc.) for determining CEP patterns. It also has extendable APIs for adding additional custom operators. The system comes with existing source/sink adapters, allowing it to extract raw events from files or pull them from RESTful services. It also provides extendable APIs for adding more adapter types.
This project is part of FIWARE.
There are several options:
To work with artifacts
All build artifacts are in the [Proton github repository] (https://github.com/ishkin/Proton/tree/master/mvn-repo/com/ibm/hrl/proton). These can be used as dependencies in maven builds. In case you would like to work with simple artifacts, you can find these here
For standalone engines, use the [ProtonJ2SE artifact] (https://github.com/ishkin/Proton/tree/master/artifacts/ProtonJ2SE.zip). This is a .zip distribution, with ProtonJ2SE executable jar, launch script, sample, and docs directory.
For instructions on how to configure and install IBM Proactive Technology Online on Tomcat (web version), see the [Proton on Tomcat guide] (https://forge.fi-ware.org/plugins/mediawiki/wiki/fiware/index.php/CEP_GE_-_IBM_Proactive_Technology_Online_Installation_and_Administration_Guide)
Detailed online documentation for installation, testing, web authoring of rules and web APIs are located in https://readthedocs.org/projects/proactive-technology-online/builds/ Documentations is also available under the /documentation folder, and includes the Proton's User Guide (explaining the language building blocks and use of the authoring tool use) and Programmer's Guide (explaining possible extension points to the Proton's programming model)
IBM Proactive Technology Online is licenced under the Apache Licence Version 2.0. For more information see the LICENCE.md
For working with source code, note that the projects are maven projects. They can be built using the "clean install" targets by running the mvn command on the parent pom (located in the "Proton”) directory. This command will build all the Proton projects.
In addition, by executing the "mvn deploy" command of the same parent pom after performing clean install, the target jars will be installed into a local repository named "mvn-repo" (/Proton/maven-repo).