Web interface

nelson c

Well-known member
djsoft said:
it's simply do not worth the effort of developing fully featured web UI
I don't mean to develop a web interface completely from scratch. This same tool could be useful for some people who use the desktop version. Obviously it would be a more limited version of RadioBOSS Cloud in which some things would be hidden as the library of files.

Attached an image. Simply the information what RadioBOSS Cloud currently show of can be very much used for when the speaker and the operator are different people. The announcer can have another PC with social networks, and a tab where he sees the current track to the air, the intro, the remaining time, etc. Do that I do not think it means great work especially because it is already built for RadioBOSS Cloud.

More functions could be built according to demand

And this would open the door for in the future to develop an App with Phonegap very easily
 

Attachments

  • Sin t?tulo.png
    Sin t?tulo.png
    43 KB · Views: 759
nelson c said:
Obviously it would be a more limited version of RadioBOSS Cloud
RadioBOSS Cloud relies too much on server features, like Apache, PHP and many others. Porting it to a stand-alone version, so it can be used from within RadioBOSS without any 3rd party software installation, is a big task. And that's the problem here: a lot of work with little benefit for end users. Very little people really need it... And this also requires a static IP address or some dynamic IP system.

nelson c said:
The announcer can have another PC with social networks, and a tab where he sees the current track to the air
Implementing this is some 20 lines of HTML/JS code that calls RadioBOSS API :) But I understand the problem you mention here. Some examples will be posted showing how to do it, to give a starting point for those who need such features.
 
I can post an example of what we do with our outside broadcast laptop. It connects to our radio station via a VPN (outside the scope of RadioBOSS), but with that it acts like a computer within the radio station network, which allows it to communicate with the RadioBOSS PC's. An alternative would be opening ports on a router to the internet for the RadioBOSS API, but I wouldn't recommend that if it can be avoided.

This is a very basic HTML setup which has 4 buttons. We have two studios, we refer to as 'Red Studio' and 'Blue Studio'. The commands are set up to remotely stop RadioBOSS from our outside broadcast laptop. This prevents the need for giving remote access to the RadioBOSS PC's at the station, and it prevents requiring someone to be physically at the radio station when our outside broadcast is ready to go.

When the presenter is ready - they stop RadioBOSS in the studio that is currently on air (or they stop both - it doesn't matter for us).

Once the outside broadcast has finished, they can remotely load a playlist in RadioBOSS, to begin playing within one of the studios at the radio station. The playlist was previously created in Playlist Generator Pro and called 'AUSSIE-OVERNIGHT'. Once the button is clicked, it remotely loads the playlist and plays it.

The code is below. This is custom code created by me personally and is given without any warranty etc. as to functioning for your needs, it is provided as an example only of what can be achieved with the RadioBOSS API when used in conjunction with a web server.


Code:
<HTML>
<TITLE>RadioBOSS Remote Control</TITLE>
<HEAD>
<!-- META REFRESH -->
<!-- Refreshes page every 10 minutes to clear the RadioBOSS status -->
<!-- if the window is left open after initially stopping RadioBOSS. -->
<!-- This is to prevent confusion later on, if the presenter already -->
<!-- sees 'OK' in the box and doesn't see it update when they remote -->
<!-- command RadioBOSS to start playing something again -->
<META HTTP-EQUIV="REFRESH" CONTENT="600;URL="#">

<!-- Load jquery which allows for dynamically loading URL's within the web page -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</HEAD>

<!-- HTML code -->
<CENTER><FONT FACE="VERDANA" SIZE="2">
<H1>RadioBOSS Remote Control</H1>
This webpage remotely controls RadioBOSS at the [radio station] studios, for use when you are at an outside broadcast.

If you want to start broadcasting from the outside broadcast, you will need to remotely stop RadioBOSS in both Studio BLUE and Studio RED. 



To remotely stop RadioBOSS at the studios, click 'Stop RadioBOSS in StudioRED' and 'Stop RadioBOSS in StudioBLUE' below.


Once you have clicked them, check the 'Studio RED Status' and 'Studio BLUE status' sections further below. 

These should both read out '<B>OK</B>' once the command has been sent. This is confirmation that the studio has stopped playing RadioBOSS.




<!-- Stop commands -->
<TABLE BORDER="3" WIDTH="50%" CELLPADDING="10">
<TR>
<TD><CENTER><FONT SIZE="5" COLOR="RED"><B>StudioRED:</B></FONT></CENTER></TD>
<TD><CENTER><FONT SIZE="5"><SPAN ID="stopRED"><A HREF="#">Stop RadioBOSS in StudioRED</A></SPAN></CENTER></TD>
</TR>
<TR>
<TD><CENTER><FONT SIZE="5" COLOR="#0000AA"><B>StudioBLUE:</B></FONT></CENTER></TD>
<TD><CENTER><FONT SIZE="5"><SPAN id="stopBLUE"><A HREF="#">Stop RadioBOSS in StudioBLUE</A></SPAN></CENTER></TD>
</TR>
</TABLE>



Once your Outside Broadcast is completed, if there is no-one at the station to take over from you, then you can remotely command RadioBOSS to start playing music again. 
Once you click the 'load' buttons below, it will load 12 hours of music in the studio you choose, and begin playing it. 


If you're unsure which studio is actually on air, you should be okay with loading both. 
If you do, check the live radio signal to ensure that there aren't two sources of music playing at the same time. 
If there are, you can remote stop one of the studios by choosing 'Stop RadioBOSS in StudioRED' or 'Stop RadioBOSS in StudioBLUE' from the links above.




<!-- Start commands -->

<TABLE BORDER="3" WIDTH="50%" CELLPADDING="10">
<TR>
<TD><CENTER><FONT SIZE="5" COLOR="RED"><B>StudioRED:</B></FONT></TD>
<TD><CENTER><FONT SIZE="5"><SPAN ID="loadRED"><A HREF="#">Start RadioBOSS in StudioRED</A></SPAN></TD>
</TR>
<TR>
<TD><CENTER><FONT SIZE="5" COLOR="#0000AA"><B>StudioBLUE:</B></FONT></TD>
<TD><CENTER><FONT SIZE="5"><SPAN id="loadBLUE"><A HREF="#">Start RadioBOSS in StudioBLUE</A></SPAN></TD>
</TR>
</TABLE>



<!-- Status of RadioBOSS for StudioRED and StudioBLUE -->
<TABLE>
<TR>
<TD><FONT SIZE="5" COLOR="RED"><B>Studio RED Status:</B></FONT></TD>
<TD><IFRAME ID="studioREDstatus" ALLOWTRANSPARENCY="TRUE" STYLE="BACKGROUND: #CCCCCC;" FRAMEBORDER="0" HEIGHT="50" WIDTH="100%">
</iframe></TD></TR>
<TR><TD>
<FONT SIZE="5" COLOR="#0000AA"><B>Studio BLUE Status:</B></FONT></TD><TD>
<IFRAME ID="studioBLUEstatus" ALLOWTRANSPARENCY="TRUE" STYLE="BACKGROUND: #CCCCCC;" FRAMEBORDER="0" HEIGHT="50" WIDTH="100%">
</iframe>
</TD>
</TR>
</TABLE>



<!-- Below are the programmed commands sent to RadioBOSS to instruct the studio players to stop or load a playlist -->
<!-- NOTE: The password of xxx must be changed to your API password and the IP address must be changed to the IP address of your applicable RadioBOSS player -->
<SCRIPT>
$("#stopRED").click(function() {
  $("#studioREDstatus").attr('src', 'http://192.168.0.1:9000/?pass=xxx&cmd=stop');
});
$("#stopBLUE").click(function() {
  $("#studioBLUEstatus").attr('src', 'http://192.168.0.2:9000/?pass=xxx&cmd=stop');
});
<!-- Below are the programmed commands sent to RadioBOSS to instruct the studio players to start playing a playlist called AUSSIE-OVERNIGHT -->

$("#loadRED").click(function() {
  $("#studioREDstatus").attr('src', 'http://192.168.0.1:9000/?pass=xxx&cmd=generate [pro] AUSSIE-OVERNIGHT');
});
$("#loadBLUE").click(function() {
  $("#studioBLUEstatus").attr('src', 'http://192.168.0.2:9000/?pass=xxx&cmd=generate [pro] AUSSIE-OVERNIGHT');
});
</SCRIPT>
</BODY>
</HTML>
 
  • Like
Reactions: bbm
Back
Top