Quantcast
Channel: Rainmeter Forums
Viewing all articles
Browse latest Browse all 871

Community Plugins & Addons • Rainmeter Webhook Monitor

$
0
0
I had a need/want to be able to receive webhook data and pass it directly to Rainmeter without the need for polling or intermediate files. Since I couldn't find anything that really did that, I created my own and made it pretty universal so it should work with anything. So I present...

Rainmeter Webhook Monitor

It's an open-source, lightweight background application that monitors incoming webhook messages on a specified port and updates Rainmeter skins with the received data. It’s fully headless, but can show an optional system tray icon, and uses a JSON config file for command configuration.


Detailed usage tutorial: On This GitHub Wiki Page


How It Works

It basically takes the value from a particular parameter in the webhook data, then runs a 'bang' command such as !SetOption to pass that value to a particular skin. You configure the name of the parameter it looks for and the options in the command.

Example Use Case

In my case, I use it with the outgoing webhook feature in F.lux to show any changes in the screen's color temperature setting and have it instantly appear in my Rainmeter skin.

App that sends webhooks:

Image
Rainmeter skin updates in real time:

Image
Features
  • Fully headless, with optional system tray icon
  • Uses a JSON config to allow multiple command sets, each triggered by different webhook parameters
  • Optional debug mode with console output
  • Executables signed with an EV code signing certificate (no Windows “untrusted software” warnings)
  • Minimal resource usage (about ~10 MB RAM)
Minimal resource usage

Image

How to Download

Visit the GitHub Releases page and find the latest release. Under “Assets,” download the .exe file.

Detailed Usage Tutorial

I have a Wiki article here on GitHub with a detailed walkthrough.

Basic Usage

1. Place the .exe where you like, possibly alongside your Rainmeter skins.
2. Run it once to create a JSON config file (with example commands) in the same directory.
3. Set up your external service to send webhooks to http://127.0.0.1:9999/rainmeter (by default) or your chosen port/path.
4. Edit the JSON config:
  • Under WebhookSettings: Adjust Port and URL_Path if you change where the webhook is sent.
  • Under RainmeterSettings: Set the path to your Rainmeter.exe file. (Remember to escape backslashes with double slashes.)
  • Under Commands: Define your command sets. Each corresponds to a different webhook parameter and Rainmeter bang command.
Command Configuration

In the JSON, each entry in Commands defines a trigger and associated Rainmeter command.

Available fields:
  • WebhookParameterToUseAsValue: The webhook parameter name used as the value for the Rainmeter command.
  • BangCommand: The Rainmeter bang command to run (commonly !SetOption or !SetVariable).
  • MeasureName: If using !SetOption, this is the measure to update.
  • OptionName: If using !SetOption, the option in the measure to set.
  • SkinConfigName: The Rainmeter skin config name to apply the change to.
You can define multiple command objects in the Commands array to handle different webhook parameters.

See the Rainmeter documentation here under the section "Option and Variable bangs" for specifics about the bang commands.

I also have an actual configuration example you can see here in the GitHub readme

System Tray Options

If enabled, the tray icon appears and provides quick options from a right-click menu, but no other GUI elements.

Image

Command Line Arguments
  • /debug: Displays a console window with logging output and enables debug file logs.
  • /template: Forces creation of a new template JSON file (existing one is not overwritten, new one renamed).

Other JSON Config Options
  • DebugMode: Enables detailed logging of incoming webhook requests and general debug info.
  • Delay_Between_Multiple_Commands_ms: If multiple parameters trigger commands from a single webhook, sets a delay in milliseconds between each command.
  • ShowSystemTrayIcon: Enables or disables the tray icon.

Statistics: Posted by ThioJoe — Yesterday, 10:19 pm — Replies 0 — Views 64



Viewing all articles
Browse latest Browse all 871

Trending Articles