https://github.com/phillmckinnon/webhook_alert_electronjs_gui
A GUI version of my previous webhook project (https://github.com/PhillMckinnon/Play-sound-on-webhook-alert)
https://github.com/phillmckinnon/webhook_alert_electronjs_gui
alert-system api-listener audio-alerts desktop-app electron express expressjs gui javascript jquery nodejs notification-system sound-alerts sqlite3 uptime-kuma webhook
Last synced: 4 months ago
JSON representation
A GUI version of my previous webhook project (https://github.com/PhillMckinnon/Play-sound-on-webhook-alert)
- Host: GitHub
- URL: https://github.com/phillmckinnon/webhook_alert_electronjs_gui
- Owner: PhillMckinnon
- License: mit
- Created: 2025-05-16T16:05:27.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-05-16T16:56:27.000Z (5 months ago)
- Last Synced: 2025-05-29T21:11:07.279Z (4 months ago)
- Topics: alert-system, api-listener, audio-alerts, desktop-app, electron, express, expressjs, gui, javascript, jquery, nodejs, notification-system, sound-alerts, sqlite3, uptime-kuma, webhook
- Language: JavaScript
- Homepage:
- Size: 1.2 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Webhook_Alert_ElectronJS_GUI
     This project is a fork of (https://github.com/PhillMckinnon/Play-sound-on-webhook-alert)
---An application that listens for incoming webhook requests and plays a corresponding `.wav` sound file when a webhook is received, but with a GUI and packed into ElectronJS. Designed to be a simple and customisable alert system that can be integrated and used with various services (e.g ).

The app was developed during my practical workshop experience ( 07/04/2025 - 30/04/2025 )
## Features
- Listens for webhook requests on multiple endpoints (`/webhook0`, `/webhook1`, `/webhook2`, etc.).
- Plays a specific `.wav` file for each webhook endpoint.
- Logs incoming webhook data and playback status.
- Easy to set up and use.## Prerequisites
- Node.js installed on your system.
- NPM (Node Package Manager) installed.## General Setup Instructions
### 1. Clone the Repository
Clone this repository to your local machine:
```bash
git clone https://github.com/PhillMckinnon/Webhook_Alert_ElectronJS_GUI
cd Webhook_Alert_ElectronJS_GUI
```### 2. Install Dependencies
Install the required Node.js dependencies:
```bash
npm install
```### 3. Configure Sound Files
Place your `.wav` sound files in the sounds directory. Ensure the filenames match the names (e.g., `error2.wav`, `success2.wav`, etc.).### 4. Run the Application
Start the application
```bash
npm start
```
The application will start listening on port `3000`. You can change it by editing port.json (located at UserDataDir).---
## Building
### 1. Clone the Repository
Clone this repository to your local machine:
```bash
git clone https://github.com/PhillMckinnon/Webhook_Alert_ElectronJS_GUI
cd Webhook_Alert_ElectronJS_GUI
```### 2. Build the app
```bash
npm run build
```### 3. Configure Sound Files
Place your `.wav` sound files in the sounds directory. Ensure the filenames match the names (e.g., `error2.wav`, `success2.wav`, etc.).### 4. Run the Application
Start the application
```bash
run the .exe on windows or ./webhooking in the output directory on linux
```---
## Usage
Once the application is running, you can send POST requests to the following endpoints to trigger sound alerts:
- `/webhook0` → Plays `success0.wav/error.wav`
- `/webhook1` → Plays `success1.wav/error1.wav`
- `/webhook2` → Plays `success2.wav/error2.wav`
- `/webhook3` → Plays `success3.wav/error3.wav`
- `/webhook4` → Plays `success4.wav/error4.wav`My custom body for Uptime Kuma:
```bash
CUSTOM BODY
-----------
{
"heartbeat": {
"status": "{{ heartbeatJSON.status }}",
"msg": "{{ heartbeatJSON.msg }}",
"time": "{{ heartbeatJSON.time }}"
},
"monitor": {
"name": "{{ monitorJSON.name }}",
"url": "{{ monitorJSON.url }}"
},
"msg": "{{ msg }}"
}ADDITIONAL HEADERS
------------------
{
"Content-Type": "application/json"
}
```## Customization
- Modify the port number in the port.json file if needed.
- Replace the `.wav` files with your own sound files.---
## Troubleshooting
- Ensure the `.wav` files are in the correct directory and have the correct filenames.
- Make sure the application has the necessary permissions to access the sound files.---
## License
This project is open-source and available under the [MIT License](LICENSE).Enjoy using the Webhook Sound Alert System! If you have any questions or issues, feel free to open an issue on GitHub.
---
## **📫Contact**
For any questions or feedback, feel free to reach out to:
Email: phillipmckinnonwork@proton.me
GitHub: @PhillMckinnon