Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bvolpato/taskerbox

🎩 Java lightweight automation engine
https://github.com/bvolpato/taskerbox

integration java java-automation-engine maven polling slack

Last synced: 3 months ago
JSON representation

🎩 Java lightweight automation engine

Awesome Lists containing this project

README

        

Taskerbox
========

[![Apache License](http://img.shields.io/badge/license-ASL-blue.svg)](https://github.com/brunocvcunha/taskerbox/blob/master/LICENSE)
[![Build Status](https://travis-ci.org/brunocvcunha/taskerbox.svg)](https://travis-ci.org/brunocvcunha/taskerbox)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.brunocvcunha.taskerbox/taskerbox/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.brunocvcunha.taskerbox/taskerbox)
[![Coverage Status](https://coveralls.io/repos/github/brunocvcunha/taskerbox/badge.svg?branch=master)](https://coveralls.io/github/brunocvcunha/taskerbox?branch=master)

Java automation engine based on producers (channels) & consumers (actions)

The main goal is to automate useful tasks. You can control running channels using Desktop UI or lightweight web panel.

Channels
--------
- Files
- Message Queues
- Price Finder
- Social Media
- Crawlers
- Job Seeker
- Server (Socket) Watchers
- Package Tracking

Actions
--------
- Desktop Toaster
- Email Sending
- SMS Sending ([Plivo](https://www.plivo.com/))
- Slack messaging

Example
--------

For example, to receive Tweet Messages in your desktop (Toaster Message), polling every minute:
```xml

```

To receive [Hacker News (YCombinator)](https://news.ycombinator.com/) in your Gmail, also popping up a Toaster (polling every two minutes):
```xml

```

To test if a specific URL returns an expected response, and send a message on Slack if it fails:

```xml

```

Usage
--------

Create a XML configuration file with the desired channels and actions.

Example:
```xml






```

Create a Yaml file with the server configuration, that points the `fileToUse` to the file created above.

Example:
```
server:
applicationConnectors:
- type: http
port: 8000
adminConnectors:
- type: http
port: 8001

fileToUse: /home/bruno/taskerbox.xml
```

Download the [release JAR](https://github.com/brunocvcunha/taskerbox/releases), and start using `java -jar taskerbox.jar server /path/to/taskerbox.yml`.

It will start a HTTP server in the port specified to access: [http://localhost:8000/static/index.html](http://localhost:8000/static/index.html), with all the jobs configured in the XML file.

![Sample Screenshot](https://github.com/brunocvcunha/taskerbox/blob/master/.meta/ss.png?raw=true)

Taskerbox requires at minimum Java 7.