treslek supports running a simple HTTP server for receiving webhooks from external services and acting on them. In order to enable this feature, include a key in the config that looks something like the following:
The webhook server works by forwarding the headers and body of any
incoming request to a PUBSUB channel on the Redis server. This allows
any plugins to listen for any requests that may come in and deal with
them accordingly. Given the above configuration, a redis prefix of
treslek and the assumption that treslek is available at
http://treslek.example.com:1304, a HTTP request to
would be published to the Redis key
A plugin that would like to listen to this webhook would then subscribe
treslek:webhookChannels:treslek/webhook and react as it pleases.
A good example of this would be a plugin that listens for webhooks from
Github about activity on a set of repositories. You could configure each
of your repositories to send webhooks to
http://treslek.example.com:1304/github/<repo-name> and then write a
plugin to announce when Pull Requests have been opened.
treslek may be freely distributed under the MIT license.
treslek <3 you