From ca202673074cd44363c6be66372f5d8dce5a2de2 Mon Sep 17 00:00:00 2001 From: minster586 Date: Mon, 13 Apr 2026 00:42:27 -0400 Subject: [PATCH] Added new information for web server --- README.md | 90 ++++++++++++++++++++++++++----------------------------- 1 file changed, 43 insertions(+), 47 deletions(-) diff --git a/README.md b/README.md index b71a3e0..83a5be8 100644 --- a/README.md +++ b/README.md @@ -1,61 +1,57 @@ -# RadioDJViewer +# RadioDJViewer v1.8.0 -RadioDJViewer is a Windows Forms application for displaying song information and album art from a RadioDJ REST API. It is designed for use with RadioDJ automation software and provides a simple interface for viewing and exporting currently playing track details. +**RadioDJViewer** is a Windows Forms application designed to display song information and album art from a RadioDJ REST API. It bridges the gap between your automation software and your broadcast visuals by serving data to physical local files and a built-in network web server simultaneously. -## Features -- Connects to RadioDJ REST API to acquire song info -- Displays title, artist, and album (with scrolling marquee for long text) -- Shows album art or a fallback image if none is available -- Exports title, artist, album, and album art to output folder -- Supports multiple profiles for different RadioDJ instances -- Auto-regenerates missing `profiles.json` and fallback image +## 🚀 New in v1.8.0: The Web Update +* **Integrated Web Server:** Hosts a live, high-performance web widget for OBS Browser Sources. +* **Tri-State Status Indicator:** + * 🔴 **Red:** Disconnected from RadioDJ API. + * 🟢 **Green:** Connected to API (Web Server Off). + * 🔵 **Blue:** Full Broadcast Mode (API Connected + Web Server Live). +* **Memory-Caching:** Data is served to the web widget directly from RAM for zero-latency updates and reduced disk wear. +* **Network-Wide Access:** View your "Now Playing" widget on any device (Phones, Tablets, or second PCs) on your local network. -## Requirements -- Windows 7 or later -- .NET Framework 4.7.2 -- RadioDJ REST API running and accessible +## 🛠 Features +* Connects to RadioDJ REST API to acquire real-time song info. +* Displays title, artist, and album (with scrolling marquee for long text). +* Dual-Output: Exports `.txt` and `.png` files for legacy GDI+ sources while hosting the web stream. +* Supports multiple profiles for different RadioDJ instances. +* Auto-regenerates missing `profiles.json` and fallback images. -## Installation -1. Download the release ZIP and extract all files to a folder. -2. Ensure the following files are present: - - `RadioDJViewer.exe` - - `Newtonsoft.Json.dll` - - `RadioDJViewer.exe.config` - - (Optional) `default.jpg` and `profiles.json` (will be auto-generated if missing) -3. Run `RadioDJViewer.exe`. +## 📋 Requirements +* Windows 7 or later. +* .NET Framework 4.7.2. +* RadioDJ with **REST Server Plugin** enabled and accessible. -## Usage -1. Configure a profile with the REST API URL, output folder, and image settings. -2. Click Connect to start polling the API and display song info. -3. Output files will be saved in the selected output folder. -4. If album art is missing, a fallback image will be used. +## 🔧 Installation & Setup +1. Download the release ZIP and extract all files. +2. Ensure `RadioDJViewer.exe`, `Newtonsoft.Json.dll`, and `RadioDJViewer.exe.config` are present. +3. **Run `RadioDJViewer.exe` as Administrator** (Required for the Web Server to bind to your network port). +4. Configure your profile (IP, Port, Password, and Output Folder). +5. Click **Connect**. When the status box turns **Blue**, your web server is live. -## Some info for you -1. URL format follows the format from RadioDJ (http://{ip}:{port}/np?auth={password}) -2. The Variables that you see in the URL format like "{ip},{port} and {password}" They need to be present in format box which you would have typed out, If not the program cannot access the REST API +## 🌐 Web Widget & Network Setup +### **Using in OBS** +Add a **Browser Source** in OBS using the URL: `http://localhost:8181`. You can customize the look using the "Custom CSS" box in the OBS properties. -## License -This project is licensed under the MIT License. +### **Network Verification (Firewall)** +To access the widget from another device (like a phone or second PC), you must open a port in the Windows Firewall: +1. Open **Windows Firewall with Advanced Security**. +2. Create a **New Inbound Rule** -> **Port** -> **TCP**. +3. Enter Port **8181** and select **Allow the connection**. +4. Access on your phone via: `http://{your-pc-ip}:8181`. -## Repository -[https://git.smartcraft.me/minster586/RadioDJViewer](https://git.smartcraft.me/minster586/RadioDJViewer) +## 📂 URL Variables +The URL format follows the RadioDJ standard: `http://{ip}:{port}/np?auth={password}`. Ensure `{ip}`, `{port}`, and `{password}` are correctly entered in the profile settings, or the program will be unable to parse the API data. -## My inspiration -I was inspired to use this make this program by a few people as I use Radio DJ for pretty much everything music relatedwise. -When I started this it originally was just a command line console based program written in Java which is still available and works on pretty much any OS you can think of -This started off as a thing where I wanted my actual music playing program for streams playing video games to show what was playing -A quick google search led to a bunch of things that I liked but were web based and I was trying to stick away from web based programs -And I know that particular person that I'm about to mention is probably going to look at this and get a kick out of it -It got me thinking that is there a way that I can get the information and parse that information and this program was born +## 📝 Project Background +This project was born from a desire to move away from purely web-based external tools and create a native Windows utility for stream overlays. Special thanks to [Roderick's RadioDJ Tutorials](https://www.youtube.com/@RodericksRadioDJTutorials) for the inspiration and initial logic concepts. -[https://www.youtube.com/@RodericksRadioDJTutorials] Yes I put your Youtube channel +This program was developed as a learning journey into C# and .NET, with significant collaborative assistance from **Microsoft Copilot** and **Google Gemini** to refine the API parsing and web server logic. -All things aside it works the way that I like there are a few more changes that I want to do to it -For example debugging and what not but it should work on pretty much any system that has .NET framework 4.7.2 Obviously it says that in the requirements -I will say the biggest thing that helped me was copilot I know it seems a little strange but as I am just learning how to do this I figured why not give it a shot - -With that being said if you want to see it live in action you can find my links page here Pop into my streams ask me about it -[https://links.smartcraft.me/@minster586] +## 🔗 Links +* **Repository:** [https://git.smartcraft.me/minster586/RadioDJViewer](https://git.smartcraft.me/minster586/RadioDJViewer) +* **Contact/Stream:** [https://links.smartcraft.me/@minster586](https://links.smartcraft.me/@minster586) --- For questions or issues, please open an issue on the repository or contact the maintainer. \ No newline at end of file