Skip to content

Commit

Permalink
Name changes, resolves #1 (#2)
Browse files Browse the repository at this point in the history
* Name changes, resolves #1

* 5G-MAG Naming (#4)

* refactor OBECA/obeca-web-interface references to 5G-MAG or rt-wui as appropriate.

* rename service file

* More name changes and refactoring: implemented comments from dsilhavy's review in PR2

* Update package.json

bump version to 0.0.10

Co-authored-by: Ben Smith <[email protected]>
  • Loading branch information
kuehnhammer and ben-EDT authored Oct 21, 2021
1 parent 292cfa1 commit cc12d2b
Show file tree
Hide file tree
Showing 17 changed files with 96 additions and 97 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ npm install
As a last step you have to enable the nginx site, to allow requests to the 5G-MAG Reference Tools Webinterface over http.

### 3.1 Creating a symbolic link
Change to the sites-enabled directory and create a symbolic link from the obeca file in sites-available. After that, delete the default sym link:
Change to the sites-enabled directory and create a symbolic link from the rt-wui file in sites-available. After that, delete the default sym link:

````
cd /etc/nginx/sites-enabled
sudo ln -s ../sites-available/obeca obeca
sudo ln -s ../sites-available/rt-wui rt-wui
sudo rm default
````

Expand Down
12 changes: 6 additions & 6 deletions app.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,15 @@ app.use(routes);

const
{ spawnSync } = require( 'child_process' ),
rp_version = spawnSync( 'rp', ['--version'] );
gw_version = spawnSync( 'gw', ['--version'] );
modem_version = spawnSync( 'modem', ['--version'] );
mw_version = spawnSync( 'mw', ['--version'] );

global.versions = {
rp: rp_version.status == 0 ? "v" + rp_version.stdout.toString() : "n/a",
gw: gw_version.status == 0 ? "v" + gw_version.stdout.toString() : "n/a"
modem: modem_version.status == 0 ? "v" + modem_version.stdout.toString() : "n/a",
mw: mw_version.status == 0 ? "v" + mw_version.stdout.toString() : "n/a"
};
global.rp_api = ":3010/rp-api/"
global.gw_api = ":3020/gw-api/"
global.modem_api = ":3010/modem-api/"
global.mw_api = ":3020/mw-api/"

app.set('port', process.env.PORT || 3000);
app.listen(app.get('port'));
Binary file added app/assets/js/.application.js.swp
Binary file not shown.
22 changes: 11 additions & 11 deletions app/assets/js/gateway.js → app/assets/js/middleware.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ function human_file_size(size) {
};

function poll(){
$.get("/api/gw/files")
$.get("/api/mw/files")
.done( function(data, textStatus, xhr){
$("#gateway-running").show();
$("#gateway-not-running").hide();
$("#middleware-running").show();
$("#middleware-not-running").hide();
let files = JSON.parse(data);
files.sort((a, b) => (a.age > b.age) ? 1 : -1)
let tb = $("#gw-files-tbody");
let tb = $("#mw-files-tbody");
tb.empty();
let total_size = 0;
for(let file of files) {
Expand All @@ -25,14 +25,14 @@ function poll(){
}
$("#total-cache-size").text(human_file_size(total_size) + " total");

$.get("/api/gw/services", function(data){
if (window.gw_services && window.gw_services == data) {
$.get("/api/mw/services", function(data){
if (window.mw_services && window.mw_services == data) {
return;
}
window.gw_services = data;
window.mw_services = data;
let services = JSON.parse(data);
console.log(services);
let cont = $("#gw-services");
let cont = $("#mw-services");
cont.empty();
for(let service of services) {
console.log(service);
Expand Down Expand Up @@ -70,13 +70,13 @@ function poll(){
});
})
.fail( function(data, textStatus, xhr){
$("#gateway-running").hide();
$("#gateway-not-running").show();
$("#middleware-running").hide();
$("#middleware-not-running").show();
});
}

$(function() {
$("#gateway-running").hide();
$("#middleware-running").hide();
window.selected_mch = 0;
setInterval(poll, 300);
});
32 changes: 16 additions & 16 deletions app/assets/js/receiver.js → app/assets/js/modem.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
function load_ce_values(canvas_id) {
var xhr = new XMLHttpRequest();
xhr.open('GET', '/api/rp/ce_values', true);
xhr.open('GET', '/api/modem/ce_values', true);
xhr.responseType = 'arraybuffer';
xhr.onload = function(e) {
const ce = new Float32Array(this.response);
Expand Down Expand Up @@ -108,7 +108,7 @@ function clear_all() {
clear_constellation_values("mch-constellation");
window.selected_mch = 0;
window.mch_info = [];
$("#rp-services-tbody").empty();
$("#modem-services-tbody").empty();
}

function updateMchButtons() {
Expand All @@ -123,10 +123,10 @@ function updateMchButtons() {
}

function poll(){
let rp_present = false;
$.get("/api/rp/status")
let modem_present = false;
$.get("/api/modem/status")
.done( function(data, textStatus, xhr){
rp_present = true;
modem_present = true;
const d = JSON.parse(data);
$("#sync-status").html(d["state"]);
$("#sync-cfo").html((Number.parseFloat(d["cfo"])/1000.0).toFixed(3));
Expand All @@ -139,7 +139,7 @@ function poll(){
$("#sync-scs").html(Number.parseFloat(d["subcarrier_spacing"]));
$("#sync-cinr").html(Number.parseFloat(d["cinr_db"]).toFixed(2));

$.get("/api/rp/sdr_params", function(data){
$.get("/api/modem/sdr_params", function(data){
const d = JSON.parse(data);
if (!$("#sdr-freq").is(":focus")) {
$("#sdr-freq").val((Number.parseFloat(d["frequency"])/1000000).toFixed(2));
Expand All @@ -155,14 +155,14 @@ function poll(){
});


$.get("/api/rp/mch_info", function(data){
$.get("/api/modem/mch_info", function(data){
if (window.mch_info && window.mch_info == data) {
return;
}
console.log("Received new MCH info");
window.mch_info = data;
const d = JSON.parse(data);
let tb = $("#rp-services-tbody");
let tb = $("#modem-services-tbody");
tb.empty();
for(let [idx, mch] of d.entries()) {
let b = $("<button class='mch-button'>").data("mch-idx", idx).text("⛚");
Expand All @@ -187,19 +187,19 @@ function poll(){

});

$.get("/api/rp/pdsch_status", function(data){
$.get("/api/modem/pdsch_status", function(data){
const d = JSON.parse(data);
$("#pdsch-mcs").html(Number.parseFloat(d["mcs"]).toString());
$("#pdsch-ber").html(Number.parseFloat(d["ber"]).toFixed(3).toString());
$("#pdsch-bler").html(Number.parseFloat(d["bler"]).toFixed(3).toString());
});
$.get("/api/rp/mcch_status", function(data){
$.get("/api/modem/mcch_status", function(data){
const d = JSON.parse(data);
$("#mcch-mcs").html(Number.parseFloat(d["mcs"]).toString());
$("#mcch-ber").html(Number.parseFloat(d["ber"]).toFixed(3).toString());
$("#mcch-bler").html(Number.parseFloat(d["bler"]).toFixed(3).toString());
});
$.get("/api/rp/mch_status/" + window.selected_mch, function(data){
$.get("/api/modem/mch_status/" + window.selected_mch, function(data){
const d = JSON.parse(data);
$("#mch-mcs").html(Number.parseFloat(d["mcs"]).toString());
$("#mch-ber").html(Number.parseFloat(d["ber"]).toFixed(3).toString());
Expand All @@ -208,9 +208,9 @@ function poll(){
});

load_ce_values("sdr-carriers");
load_constellation_values("pdsch-constellation", "/api/rp/pdsch_data");
load_constellation_values("mcch-constellation", "/api/rp/mcch_data");
load_constellation_values("mch-constellation", "/api/rp/mch_data/" + window.selected_mch);
load_constellation_values("pdsch-constellation", "/api/modem/pdsch_data");
load_constellation_values("mcch-constellation", "/api/modem/mcch_data");
load_constellation_values("mch-constellation", "/api/modem/mch_data/" + window.selected_mch);
})
.fail( function(data, textStatus, xhr){
clear_all();
Expand All @@ -224,7 +224,7 @@ $(function() {
$("#sdr-freq").on('change', function () {
let new_freq = $(this).val() * 1000000;
console.log("freq set to " + new_freq);
$.ajax( "/api/rp/sdr_params", {
$.ajax( "/api/modem/sdr_params", {
data: JSON.stringify({ frequency: new_freq }),
contentType: "application/json",
type: "PUT"
Expand All @@ -233,7 +233,7 @@ $(function() {
$("#sdr-gain").on('change', function () {
let new_gain = $(this).val() * 1.0;
console.log("gain set to " + new_gain);
$.ajax( "/api/rp/sdr_params", {
$.ajax( "/api/modem/sdr_params", {
data: JSON.stringify({ gain: new_gain }),
contentType: "application/json",
type: "PUT"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ function proxy_call(req, res, path) {
}

exports.files = async(function*(req, res) {
proxy_call(req, res, "/gw-api/files");
proxy_call(req, res, "/mw-api/files");
});
exports.services = async(function*(req, res) {
proxy_call(req, res, "/gw-api/services");
proxy_call(req, res, "/mw-api/services");
});
20 changes: 10 additions & 10 deletions app/controllers/api/receiver.js → app/controllers/api/modem.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,32 +28,32 @@ function proxy_call(req, res, path) {
}

exports.sdr_params = async(function*(req, res) {
proxy_call(req, res, "/rp-api/sdr_params");
proxy_call(req, res, "/modem-api/sdr_params");
});
exports.status = async(function*(req, res) {
proxy_call(req, res, "/rp-api/status");
proxy_call(req, res, "/modem-api/status");
});
exports.ce_values = async(function*(req, res) {
proxy_call(req, res, "/rp-api/ce_values");
proxy_call(req, res, "/modem-api/ce_values");
});
exports.pdsch_data = async(function*(req, res) {
proxy_call(req, res, "/rp-api/pdsch_data");
proxy_call(req, res, "/modem-api/pdsch_data");
});
exports.pdsch_status = async(function*(req, res) {
proxy_call(req, res, "/rp-api/pdsch_status");
proxy_call(req, res, "/modem-api/pdsch_status");
});
exports.mcch_data = async(function*(req, res) {
proxy_call(req, res, "/rp-api/mcch_data");
proxy_call(req, res, "/modem-api/mcch_data");
});
exports.mcch_status = async(function*(req, res) {
proxy_call(req, res, "/rp-api/mcch_status");
proxy_call(req, res, "/modem-api/mcch_status");
});
exports.mch_info = async(function*(req, res) {
proxy_call(req, res, "/rp-api/mch_info");
proxy_call(req, res, "/modem-api/mch_info");
});
exports.mch_data = async(function*(req, res) {
proxy_call(req, res, "/rp-api/mch_data/"+req.params["id"]);
proxy_call(req, res, "/modem-api/mch_data/"+req.params["id"]);
});
exports.mch_status = async(function*(req, res) {
proxy_call(req, res, "/rp-api/mch_status/"+req.params["id"]);
proxy_call(req, res, "/modem-api/mch_status/"+req.params["id"]);
});
4 changes: 2 additions & 2 deletions app/controllers/receiver.js → app/controllers/middleware.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
const { wrap: async } = require('co');

exports.index = async(function*(req, res) {
res.render('receiver/index', {
active: "receiver",
res.render('middleware/index', {
active: "middleware",
global: global,
});
});
4 changes: 2 additions & 2 deletions app/controllers/gateway.js → app/controllers/modem.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
const { wrap: async } = require('co');

exports.index = async(function*(req, res) {
res.render('gateway/index', {
active: "gateway",
res.render('modem/index', {
active: "modem",
global: global,
});
});
40 changes: 20 additions & 20 deletions app/routes.js
Original file line number Diff line number Diff line change
@@ -1,30 +1,30 @@
const receiver = require('./controllers/receiver');
const receiver_api = require('./controllers/api/receiver');
const gateway = require('./controllers/gateway');
const gateway_api = require('./controllers/api/gateway');
const modem = require('./controllers/modem');
const modem_api = require('./controllers/api/modem');
const middleware = require('./controllers/middleware');
const middleware_api = require('./controllers/api/middleware');
const application = require('./controllers/application');

var router = require('express').Router()

router.get('/', function(req, res) { res.redirect("/receiver"); });
router.get('/', function(req, res) { res.redirect("/modem"); });

router.get('/receiver', receiver.index);
router.get('/gateway', gateway.index);
router.get('/modem', modem.index);
router.get('/middleware', middleware.index);
router.get('/application', application.index);

router.get('/api/rp/sdr_params', receiver_api.sdr_params);
router.put('/api/rp/sdr_params', receiver_api.sdr_params);
router.get('/api/rp/status', receiver_api.status);
router.get('/api/rp/ce_values', receiver_api.ce_values);
router.get('/api/rp/pdsch_data', receiver_api.pdsch_data);
router.get('/api/rp/pdsch_status', receiver_api.pdsch_status);
router.get('/api/rp/mcch_data', receiver_api.mcch_data);
router.get('/api/rp/mcch_status', receiver_api.mcch_status);
router.get('/api/rp/mch_info', receiver_api.mch_info);
router.get('/api/rp/mch_data/:id', receiver_api.mch_data);
router.get('/api/rp/mch_status/:id', receiver_api.mch_status);
router.get('/api/modem/sdr_params', modem_api.sdr_params);
router.put('/api/modem/sdr_params', modem_api.sdr_params);
router.get('/api/modem/status', modem_api.status);
router.get('/api/modem/ce_values', modem_api.ce_values);
router.get('/api/modem/pdsch_data', modem_api.pdsch_data);
router.get('/api/modem/pdsch_status', modem_api.pdsch_status);
router.get('/api/modem/mcch_data', modem_api.mcch_data);
router.get('/api/modem/mcch_status', modem_api.mcch_status);
router.get('/api/modem/mch_info', modem_api.mch_info);
router.get('/api/modem/mch_data/:id', modem_api.mch_data);
router.get('/api/modem/mch_status/:id', modem_api.mch_status);


router.get('/api/gw/files', gateway_api.files);
router.get('/api/gw/services', gateway_api.services);
router.get('/api/mw/files', middleware_api.files);
router.get('/api/mw/services', middleware_api.services);
module.exports = router
11 changes: 5 additions & 6 deletions app/views/layouts/_header.ejs
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<a class="navbar-brand" href="#">OBECA<span>Open Broadcast Edge Cache Appliance</a>
<a class="navbar-brand" href="#">5G-MAG<span>MBMS Reference Tools</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>

<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav ml-auto">
<li class="nav-item <%= active=="receiver" ? "active" : "" %>">
<a class="nav-link" href="/receiver/">Receiver<span class="app-version"><%= global.versions.rp %></span></a>
<li class="nav-item <%= active=="modem" ? "active" : "" %>">
<a class="nav-link" href="/modem/">Modem<span class="app-version"><%= global.versions.modem %></span></a>
</li>
<li class="nav-item <%= active=="gateway" ? "active" : "" %>">
<a class="nav-link" href="/gateway/">Gateway<span class="app-version"><%= global.versions.gw %></span></a>
<li class="nav-item <%= active=="middleware" ? "active" : "" %>">
<a class="nav-link" href="/middleware/">Middleware<span class="app-version"><%= global.versions.mw %></span></a>
</li>
<li class="nav-item <%= active=="application" ? "active" : "" %>">
<a class="nav-link" href="/application">Application<span class="app-version">v0.9.0</span></a>
Expand Down
2 changes: 1 addition & 1 deletion app/views/layouts/application.ejs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>OBECA</title>
<title>5GMAG-MBMS-RT</title>
<link rel="stylesheet" href="/css/application.css">
<script language="javascript" src="/jquery.min.js"></script>
<script type="module" src="player-chrome.js"></script>
Expand Down
Loading

0 comments on commit cc12d2b

Please sign in to comment.