|
|
|
---
|
|
|
|
layout: page2
|
|
|
|
title: Log4OM Web Status
|
|
|
|
---
|
|
|
|
|
|
|
|
[Git Repository](https://git.pickmy.org/nq4t/Log4OM-WebStatus)
|
|
|
|
|
|
|
|
Recently Log4OM added support for UDP message output in it's remote control. One of the settings has Log4OM automatically
|
|
|
|
send status messages every five seconds when the following conditions are met:
|
|
|
|
|
|
|
|
- CAT engine is running and connected to a valid radio
|
|
|
|
- Message output is enabled in program configuration
|
|
|
|
|
|
|
|
This can be used to build a very basic status display you can embed in a webpage.
|
|
|
|
|
|
|
|
### Requirements
|
|
|
|
|
|
|
|
A machine that can run Python scripts that can:
|
|
|
|
|
|
|
|
- Recieve UDP messages from Log4OM
|
|
|
|
- Put the resulting HTML file on a webserver
|
|
|
|
|
|
|
|
It is currently written to be running on the same machine as the webserver. Additional methods of getting the file to an
|
|
|
|
external machine have not been created due to the numerous ways of doing so. It's also written this way as I run a server
|
|
|
|
at my QTH that's accessible to the internet.
|
|
|
|
|
|
|
|
### Example
|
|
|
|
|
|
|
|
I have embedded the status on the sidebar/menu of [my website](https://nq4t.com). The raw file lives [here](https://log.nq4t.com/radio.html)
|
|
|
|
|
|
|
|
My version has CSS applied to match my website. The default version does not.
|
|
|
|
|
|
|
|
### Basic Theory Of Operation
|
|
|
|
|
|
|
|
Log4OM sends packets to my server's IP. Python picks these up, parses the required information out, and stuffs them in to
|
|
|
|
some HTML it saves directly to the server. This file is set to auto-refresh every 5 seconds.
|
|
|
|
|
|
|
|
If the UDP monitor doesn't get any packets within 6 seconds, it executes a routine to see what's up. This function merely sends the
|
|
|
|
"Alive" command over the UDP Remote Port. Any response will indicate the radio is off; but a lack of response within 2 seconds assumes
|
|
|
|
that Log4OM is not running on the shack PC.
|
|
|
|
|
|
|
|
When the radio is off or Log4OM is not loaded; the code only sends the remote request every 60 seconds.
|