UI-Webserver


UI Webserver
Making the most of the UI-View's built in Web server.

Web References

Basic Operation

  • Turn it on Menu - XX - Start Webserver
  • Set the port to 7373.
  • port forward 7373 from your internet router to the computer running UI-Webserver.
Example:
    application     start     end     protocol     ip address
UI Webserver    7373    7373     TCP          192.168.1.122
  • Internally in your home network you can use your IP address or what ever name you have defined for the computer. To see what your IP number is outside in the internet, to go http://whatismyip.com That will give you the IP number you can send to other folks to look at.
  • To get a basic no-ip.info name, you can set up a free account at http://www.no-ip.com/ That will put a name on your IP number and make it easy for others to access.

Updates

The detailed map for individual stations, referred to above, also lets you click on the callsign to do a QRZ.com lookup for station address and other details. The exact URL to access this information at QRZ has changed since UIview became "frozen in time". Locate the folder "Special Pages" located under the "UI-Webserver" folder inside the main UIview32 program folder. Locate the three files
  1. info_call.html
  2. infomobile_call.html
  3. infowx_call.html
Open each file with Windows Notepad or a similar text editor. Locate the string
qrz.com/detail/##CALLSIGN
Change detail in each to db . The revised line should look like:
qrz.com/db/##CALLSIGN
Save each file and restart the UIwebserver.
  • Put the latest [symbols] files in place. You should have this already for your UI-View setup.
  • Fix the online map displays

More Functionality

Start UI-Webserver automatically when UI-View32 starts

* TBD

To put the Displayed image on the UI Webserver page

1. Tell UI-View to save the file on a regular basis, like every three minutes, in the web server folder.
  • Menu-File-Schedule editor
  • F1 to print up help menu for reference
  • Added a new scheduled command
      • E03 for every 3 minutes
      • CAPTURE_MAP "c:\Program Files\UI-View\UI-Webserver\html\UIViewMap.png"
2. Add the appropriate tag to the index.html page so it will be displayed.
@p align="center">Full screen image@
3. Put the date and time stamp on the image file.
  • run Menu-File-UICAPTIONER - so set parameters of where the caption will be on the map image and how the text will look. Note that running uicaptioner.exe with no arguments displays the configuration dialog. To apply the caption to an image, pass the file name as an arguement by simply dropping the picture file onto the executable.
  • Added a new scheduled command to to apply the captions. Use the same file as the CAPTURE_MAP command above and the same schedule time.
      • E03 for every 3 minutes
      • RUN UICAPTIONER.EXE "c:\Program Files\UI-View\UI-Webserver\html\UIViewMap.png"
  • Other Tweaks
    • 11/4/11 - added a link on the station not found page XXX.html to qrz.com/db lookup.
    • 11/4/11 - added a HOME link on the not found page to go back to index.html

More information

Great Reference Material thanks to Stephen/WA8LMF..

1) Because the operations below require referring repeatedly to paths within the UIview directory hierarchy, save yourself a lot of headaches and typos by avoiding the default tortured long path install location of "C:\Documents and Settings\Peak Systems\UIview32\….." for UIview. Install UIview in a short path directly off the root of the hard disk, such as "C:\UIview32".
2) The UIview scheduler is a separate program (that lives in the UIview main directory) that can issue commands either once (like logging into a webserver when UIview starts) or repeatedly every so many minutes (such as capturing a screen image). It has an explicit command for "CAPTURE_MAP" that will screen-cap the map in the main UIview window, regardless of it's source; i.e. static map, Precision Mapping, PH7RHM map server, etc, and save it into a named file at the location of your choice.
Start the Schedule Editor utility (File, Schedule Editor) and hit F1 to see the commands available in the scheduler. Specify the full path name of the image file to be captured; i.e. something like "c:\UIview32\UI-Webserver\Special Pages\UIviewMap.png" and the interval between caps in minutes. Bear in mind that if the fully-formed path has any spaces in it (like \Program Files"), that you MUST enclose the entire path in quotes.
DO NOTDO NOTDO NOT use JPG format for capturing solid color map images. JPG achieves it's compression by looking for the gradual gradient of color and brightness changes between adjacent pixels in continuous-tone photographs. On black & white text, line art like schematics, or solidly-colored map images (that have abrupt changes in color/brightness between adjacent pixels), you just get a hideous eye-bleeding "squirmy" bleeding smear at the transitions between colors and a mottled effect in areas of constant color.
DO NOT user BMP format. BMP is native to Microsoft operating systems and applications. However, it is NOT a standard format for images on the Internet. Viewers of the web server that are using non-Microsoft operating systems (Linux/Unix, iOS, Android, MacOS, etc) may not be able to view a BMP image. The only image formats that are "safe" (i..e universal to web browsers) are .JPG (photos only!), GIF (256-color format good for line art, maps and text), and .PNG (photos, line art and graphics).
This leaves PNG as the only acceptable graphics format for the map capture, if done directly. (The capture utility does not offer the preferred .GIF fomat.) However, the scheduler can run any EXE, whether or not it is related to UIview. I use the scheduler to fire a third party app, IrfanView, to convert a BMP-format capture to .GIF format after each cap, which yields a smaller file than .PNG. (IrfanView is normally used interactively from it's GUI, but can also be run from a command line string.)
3) If desired, use the UI-Scheduler to launch UIcaptioner (another utility located in the main UIview directory), to overlay a data/time stamp and/or freeform text string on the captured map image after each cap, if desired. Be sure this is in the scheduler sequence BEFORE any conversion to GIF format, since UIcaptioner won't work on GIF images. I.e caption the .BMP capture first; then convert the overlayed BMP image to GIF.
4) The home page of the UIwebserver (normally a text-only page) is "index.html" located in the directory \UI-WebServer\Special Pages under the main UIview directory. This page is full of replaceable tokens for callsigns, date/time, etc. Edit it in an HTML editor such as FrontPage and add a reference to the named image file mentioned above. I.e. the usual " type of tag. This image will be the screen cap of the map display prepared above. Be sure the path reference to the image file is relative, not absolute.
5) If you want to get rid of the default "Boston" background images that underlay pages produced by the webserver, replace the image "boston.jpg" located in the path "UI-WebServer\Default Pages\HTML\Images" with the image of your choice, also named "boston.jpg". Or else, find and replace all references to "boston.jpg" in all the html files with a file name of your choice using a utility like GREP.
(I replaced "boston.jpg" with a small image of a pattern that looks like acoustic ceiling tile, or cottage cheese, which the server then tiles to fill the entire page. I also replaced "garden.jpg" and "mf.jpg" with copies of the same image file under those names as well, so that ALL pages served by the webserver have a consistent background.)
6) An alternative to the schedulerscreen capscreen caption routines inside UIview is the utility "Screen Hunter" from Wisdom-Soft at:
This shareware utility can bring any running Windows screen to the front, capture it, overlay it with text strings including data/time stamps and free-form comments, and then write it to the location of your choice in virtually ANY graphics format including GIF. It can be triggered either manually by hitting "PrtSc", or automatically at set intervals by a timer. Note that the free version at the link above doesn't do the automatic timed captures. You will need the $20 version to get the timer feature.
This program runs completely autonomously of Uiview (although the UI-Scheduler could be used to start it automatically when UIview starts, once you get Screen Hunter configured). (I have been using it to capture balloon tracks on TopoUSA screens to feed into the UIview webserver.)
Stephen H. Smith wa8lmf (at) aol.com
Home Page: http://wa8lmf.net