Webhook listener is a Golang application that runs as a standalone application. It can be configured via config.json file, which is located in the same folder as the application.
Deploying the application
Copy the correct build of Webhook listener to desired folder with all it's required files:
webhook_listener.exe - Windows build of the main binary file
webhook_listener.linux - Linux build of the main binary file
config.json - configuration file required by Webhook Listener (for more info on how to change configuration, please read the section below)
server.crt and server.key - If you are running Webhook listener on HTTPS, these two files are required; Please read the section below on how to make your own certificates.
Make sure, that the target folder configured in eventPath setting is writable by the user running Webhook listener.
Warning: ISL Conference Proxy does not yet support sending HTTP Events to HTTPS.
Create certificates
If you plan to run Webhook listener on https, you should create self signed certificates. They must be named server.key and server.crt and put in the same folder as Webhook listener binary.
openssl genrsa -out server.key 2048 openssl ecparam -genkey -name secp384r1 -out server.key openssl req -new -x509 -sha256 -key server.key -out server.crt -days 3650
Configure the application
You can configure the application by changing config.json file, which must be located in the same folder as the binary file.
Example:
{ "port" : 5555, "SSL" : false, "eventPath" : "/isl/webhooks", "runProcess" : "./processor.sh", "runProcessArgs" : ["-f"] }
OPTIONS:
- port - required - defines on which port will Webhook listener run
- SSL - optional - default is false; ISL Conference Proxy does not yet support sending Webhooks via https, so this should be left to false
- eventPath - optional - location where event files will be stored (if not set, local folder is set)
- runProcess - optional - run this process after event is received; note, that command will be executed as a shell command in a single thread, so Weboohk listener will be stalled if process delays;
- runProcessArgs - optional - arguments sent to process defined in runProcess field; event filename will always be passed as a last argument