mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
First pass handling rx'd feciswriting, clean up sock.js
This commit is contained in:
parent
d2c2b71a02
commit
ed31503b0b
3 changed files with 236 additions and 195 deletions
|
@ -534,6 +534,11 @@ ipcMain.on("save-file-to-folder", (event, data) => {
|
|||
|
||||
//tnc messages START --------------------------------------
|
||||
|
||||
// FEC iswriting received
|
||||
ipcMain.on("request-show-fec-toast-iswriting", (event, data) => {
|
||||
win.webContents.send("action-show-fec-toast-iswriting", data);
|
||||
});
|
||||
|
||||
// CQ TRANSMITTING
|
||||
ipcMain.on("request-show-cq-toast-transmitting", (event, data) => {
|
||||
win.webContents.send("action-show-cq-toast-transmitting", data);
|
||||
|
|
|
@ -2574,7 +2574,17 @@ ipcRenderer.on("action-show-cq-toast-transmitting", (event, data) => {
|
|||
(duration = 5000)
|
||||
);
|
||||
});
|
||||
|
||||
// fec iswriting received
|
||||
ipcRenderer.on("action-show-fec-toast-iswriting", (event, data) => {
|
||||
let dxcallsign = data["data"][0]["dxcallsign"];
|
||||
let content = `${dxcallsign}</strong> is typing`;
|
||||
displayToast(
|
||||
(type = "success"),
|
||||
(icon = "bi-pencil-fill"),
|
||||
(content = content),
|
||||
(duration = 5000)
|
||||
);
|
||||
});
|
||||
// CQ RECEIVED
|
||||
ipcRenderer.on("action-show-cq-toast-received", (event, data) => {
|
||||
let dxcallsign = data["data"][0]["dxcallsign"];
|
||||
|
|
160
gui/sock.js
160
gui/sock.js
|
@ -4,7 +4,7 @@ const { ipcRenderer } = require("electron");
|
|||
|
||||
const log = require("electron-log");
|
||||
const socketLog = log.scope("tnc");
|
||||
const utf8 = require("utf8");
|
||||
//const utf8 = require("utf8");
|
||||
|
||||
// https://stackoverflow.com/a/26227660
|
||||
var appDataFolder =
|
||||
|
@ -25,8 +25,8 @@ const split_char = "\0;\1;";
|
|||
// globals for getting new data only if available so we are saving bandwidth
|
||||
var rxBufferLengthTnc = 0;
|
||||
var rxBufferLengthGui = 0;
|
||||
var rxMsgBufferLengthTnc = 0;
|
||||
var rxMsgBufferLengthGui = 0;
|
||||
//var rxMsgBufferLengthTnc = 0;
|
||||
//var rxMsgBufferLengthGui = 0;
|
||||
|
||||
// global to keep track of TNC connection error emissions
|
||||
var tncShowConnectStateError = 1;
|
||||
|
@ -168,7 +168,8 @@ client.on("data", function (socketdata) {
|
|||
try {
|
||||
data = JSON.parse(socketchunk[i]);
|
||||
} catch (e) {
|
||||
socketLog.info(e); // "SyntaxError
|
||||
socketLog.info("Throwing away data!!!!\n" + e); // "SyntaxError
|
||||
//socketLog.info(e); // "SyntaxError
|
||||
socketLog.info(socketchunk[i]);
|
||||
socketchunk = "";
|
||||
//If we're here, I don't think we want to process any data that may be in data variable
|
||||
|
@ -180,7 +181,7 @@ client.on("data", function (socketdata) {
|
|||
//socketLog.info(data)
|
||||
// set length of RX Buffer to global variable
|
||||
rxBufferLengthTnc = data["rx_buffer_length"];
|
||||
rxMsgBufferLengthTnc = data["rx_msg_buffer_length"];
|
||||
//rxMsgBufferLengthTnc = data["rx_msg_buffer_length"];
|
||||
|
||||
let Data = {
|
||||
mycallsign: data["mycallsign"],
|
||||
|
@ -232,151 +233,172 @@ client.on("data", function (socketdata) {
|
|||
|
||||
// ----------- catch tnc messages START -----------
|
||||
if (data["freedata"] == "tnc-message") {
|
||||
// update transmission status
|
||||
/*
|
||||
if (data['arq'] == 'transmission' && data['status'] == 'transmitting'){
|
||||
|
||||
let state = {
|
||||
status: data['status'],
|
||||
uuid: data['uuid'],
|
||||
percent: data['percent'],
|
||||
bytesperminute: data['bytesperminute'],
|
||||
};
|
||||
|
||||
ipcRenderer.send('request-update-transmission-status', state);
|
||||
}
|
||||
*/
|
||||
switch (data["fec"]) {
|
||||
|
||||
case "is_writing":
|
||||
// CQ TRANSMITTING
|
||||
ipcRenderer.send("request-show-fec-toast-iswriting", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
}
|
||||
|
||||
switch (data["cq"]) {
|
||||
|
||||
case "transmitting":
|
||||
// CQ TRANSMITTING
|
||||
if (data["cq"] == "transmitting") {
|
||||
ipcRenderer.send("request-show-cq-toast-transmitting", {
|
||||
data: [data],
|
||||
});
|
||||
}
|
||||
break;
|
||||
|
||||
case "received":
|
||||
// CQ RECEIVED
|
||||
if (data["cq"] == "received") {
|
||||
ipcRenderer.send("request-show-cq-toast-received", { data: [data] });
|
||||
break;
|
||||
}
|
||||
|
||||
switch (data["qrv"]) {
|
||||
|
||||
case "transmitting":
|
||||
// QRV TRANSMITTING
|
||||
if (data["qrv"] == "transmitting") {
|
||||
ipcRenderer.send("request-show-qrv-toast-transmitting", {
|
||||
data: [data],
|
||||
});
|
||||
}
|
||||
break;
|
||||
|
||||
case "received":
|
||||
// QRV RECEIVED
|
||||
if (data["qrv"] == "received") {
|
||||
ipcRenderer.send("request-show-qrv-toast-received", { data: [data] });
|
||||
break;
|
||||
}
|
||||
|
||||
switch (data["beacon"]) {
|
||||
|
||||
case "transmitting":
|
||||
// BEACON TRANSMITTING
|
||||
if (data["beacon"] == "transmitting") {
|
||||
ipcRenderer.send("request-show-beacon-toast-transmitting", {
|
||||
data: [data],
|
||||
});
|
||||
}
|
||||
break;
|
||||
|
||||
case "received":
|
||||
// BEACON RECEIVED
|
||||
if (data["beacon"] == "received") {
|
||||
ipcRenderer.send("request-show-beacon-toast-received", {
|
||||
data: [data],
|
||||
});
|
||||
ipcRenderer.send("request-new-msg-received", { data: [data] });
|
||||
break;
|
||||
}
|
||||
|
||||
switch (data["ping"]) {
|
||||
|
||||
case "transmitting":
|
||||
// PING TRANSMITTING
|
||||
if (data["ping"] == "transmitting") {
|
||||
ipcRenderer.send("request-show-ping-toast-transmitting", {
|
||||
data: [data],
|
||||
});
|
||||
}
|
||||
break;
|
||||
|
||||
case "received":
|
||||
// PING RECEIVED
|
||||
if (data["ping"] == "received") {
|
||||
ipcRenderer.send("request-show-ping-toast-received", {
|
||||
data: [data],
|
||||
});
|
||||
ipcRenderer.send("request-new-msg-received", { data: [data] });
|
||||
}
|
||||
break;
|
||||
|
||||
case "acknowledge":
|
||||
// PING ACKNOWLEDGE
|
||||
if (data["ping"] == "acknowledge") {
|
||||
ipcRenderer.send("request-show-ping-toast-received-ack", {
|
||||
data: [data],
|
||||
});
|
||||
ipcRenderer.send("request-new-msg-received", { data: [data] });
|
||||
break;
|
||||
}
|
||||
|
||||
// ARQ SESSION
|
||||
// ARQ SESSION && freedata == tnc-message
|
||||
if (data["arq"] == "session") {
|
||||
// ARQ OPEN
|
||||
if (data["status"] == "connecting") {
|
||||
|
||||
switch (data["status"]){
|
||||
|
||||
case "connecting":
|
||||
// ARQ Open
|
||||
ipcRenderer.send("request-show-arq-toast-session-connecting", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ OPENING
|
||||
} else if (data["status"] == "connected") {
|
||||
case "connected":
|
||||
// ARQ Opening
|
||||
ipcRenderer.send("request-show-arq-toast-session-connected", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ OPENING
|
||||
} else if (data["status"] == "waiting") {
|
||||
case "waiting":
|
||||
// ARQ Opening
|
||||
ipcRenderer.send("request-show-arq-toast-session-waiting", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ OPENING
|
||||
} else if (data["status"] == "close") {
|
||||
case "close":
|
||||
// ARQ Closing
|
||||
ipcRenderer.send("request-show-arq-toast-session-close", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ OPENING
|
||||
} else if (data["status"] == "failed") {
|
||||
case "failed":
|
||||
// ARQ Failed
|
||||
ipcRenderer.send("request-show-arq-toast-session-failed", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
}
|
||||
}
|
||||
// ARQ TRANSMISSION
|
||||
// ARQ TRANSMISSION && freedata == tnc-message
|
||||
if (data["arq"] == "transmission") {
|
||||
// ARQ OPEN
|
||||
if (data["status"] == "opened") {
|
||||
|
||||
switch (data["status"]) {
|
||||
|
||||
case "opened":
|
||||
// ARQ Open
|
||||
ipcRenderer.send("request-show-arq-toast-datachannel-opened", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ OPENING ISS
|
||||
} else if (data["status"] == "opening" && data["irs"] == "False") {
|
||||
case "opening":
|
||||
// ARQ Opening IRS/ISS
|
||||
if (data["irs"] == "False") {
|
||||
ipcRenderer.send("request-show-arq-toast-datachannel-opening", {
|
||||
data: [data],
|
||||
});
|
||||
|
||||
// ARQ OPENING IRS
|
||||
} else if (data["status"] == "opening" && data["irs"] == "True") {
|
||||
})} else {
|
||||
ipcRenderer.send(
|
||||
"request-show-arq-toast-datachannel-received-opener",
|
||||
{ data: [data] }
|
||||
);
|
||||
)};
|
||||
break;
|
||||
|
||||
// ARQ WAITING
|
||||
} else if (data["status"] == "waiting") {
|
||||
case "waiting":
|
||||
// ARQ waiting
|
||||
ipcRenderer.send("request-show-arq-toast-datachannel-waiting", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ RECEIVING
|
||||
} else if (data["status"] == "receiving") {
|
||||
case "receiving":
|
||||
// ARQ RX
|
||||
ipcRenderer.send("request-update-reception-status", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ TRANSMISSION FAILED
|
||||
} else if (data["status"] == "failed") {
|
||||
case "failed":
|
||||
// ARQ TX Failed
|
||||
if (data["reason"] == "protocol version missmatch") {
|
||||
ipcRenderer.send(
|
||||
"request-show-arq-toast-transmission-failed-ver",
|
||||
|
@ -390,9 +412,10 @@ client.on("data", function (socketdata) {
|
|||
ipcRenderer.send("request-update-transmission-status", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ TRANSMISSION RECEIVED
|
||||
} else if (data["status"] == "received") {
|
||||
case "received":
|
||||
// ARQ Received
|
||||
ipcRenderer.send("request-show-arq-toast-transmission-received", {
|
||||
data: [data],
|
||||
});
|
||||
|
@ -425,14 +448,15 @@ client.on("data", function (socketdata) {
|
|||
ipcRenderer.send("request-update-rx-buffer", Files);
|
||||
ipcRenderer.send("request-new-msg-received", Files);
|
||||
|
||||
rxMsgBufferLengthGui = messageArray.length;
|
||||
//rxMsgBufferLengthGui = messageArray.length;
|
||||
let Messages = {
|
||||
data: messageArray,
|
||||
};
|
||||
ipcRenderer.send("request-new-msg-received", Messages);
|
||||
break;
|
||||
|
||||
// ARQ TRANSMISSION TRANSMITTING
|
||||
} else if (data["status"] == "transmitting") {
|
||||
case "transmitting":
|
||||
// ARQ transmitting
|
||||
ipcRenderer.send(
|
||||
"request-show-arq-toast-transmission-transmitting",
|
||||
{ data: [data] }
|
||||
|
@ -440,9 +464,10 @@ client.on("data", function (socketdata) {
|
|||
ipcRenderer.send("request-update-transmission-status", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
|
||||
// ARQ TRANSMISSION TRANSMITTED
|
||||
} else if (data["status"] == "transmitted") {
|
||||
case "transmitted":
|
||||
// ARQ transmitted
|
||||
ipcRenderer.send(
|
||||
"request-show-arq-toast-transmission-transmitted",
|
||||
{ data: [data] }
|
||||
|
@ -450,6 +475,7 @@ client.on("data", function (socketdata) {
|
|||
ipcRenderer.send("request-update-transmission-status", {
|
||||
data: [data],
|
||||
});
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -488,7 +514,7 @@ client.on("data", function (socketdata) {
|
|||
};
|
||||
ipcRenderer.send("request-update-rx-buffer", Files);
|
||||
|
||||
rxMsgBufferLengthGui = messageArray.length;
|
||||
//rxMsgBufferLengthGui = messageArray.length;
|
||||
let Messages = {
|
||||
data: messageArray,
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue