IFTTT connects services without those services having to know from each other. It offers an easy to use interface to configure applets, where you just have to define:
If this then that, or short: IFTTT.
JDownloader is very extensible. You do not even have to write a single line of Java code to build upon the capabilities of the download manager. There's a script engine that executes Javascript if a trigger event gets fired. You can exchange those scripts with other users.
This script engine is a JDownloader plugin that's called Event Scripter. It can be found in the "Extension Modules" section of your JDownloader Settings.
To demonstrate how to do this, we implement a very simple example:
Get an Android mobile notfication if a download stopped.
You first have to register on IFTTT.
Then you should download the IFTTT mobile app and connect the app with your account.
Then you are ready to create an applet on IFTTT that connects it with the JDownloader Event Scripter!
var iftttBrowser = getBrowser();
iftttBrowser.getPage("https://maker.ifttt.com/trigger/<YOUR_EVENT_NAME>/with/key/<YOUR_API_KEY>");
Replace <YOUR_EVENT_NAME> with the name you have chosen for the event when you created the applet on IFTTT.com
Replace <YOUR_API_KEY> with the key you'll find on https://internal-api.ifttt.com/maker
Done! In your JDownloader, if you edit the script, you can easily "Test Run" it with the corresponding button. The notification should arrive soon after the test button was pressed!