New "Connection Status" popup

This commit is contained in:
nutty
2026-10-20 10:40:46 +11:00
parent 58495dcc7e
commit 773de858ac
17 changed files with 203 additions and 213 deletions
+2 -1
View File
@@ -8,7 +8,6 @@
</head>
<body>
<div id="statusContainer">Connecting...</div>
<div id="mainContainer" class="slide-fade">
<ul id="messageList">
</ul>
@@ -39,4 +38,6 @@
</body>
<script src="/.common/utils/helpers.js"></script>
<link rel="stylesheet" href="/.common/utils/connection-status.css">
<script src="/.common/utils/connection-status.js"></script>
<script src="./script.js"></script>
+10 -28
View File
@@ -125,6 +125,14 @@ document.documentElement.style.setProperty('--animation-speed', `${animationSpee
// STREAMER.BOT CLIENT //
/////////////////////////
const connectionStatus = new ConnectionStatus({
name: "Streamer.bot",
showDelay: 1000,
disconnectedMessage: "Connecting to Streamer.bot..."
});
connectionStatus.setConnected(false);
const client = new StreamerbotClient({
host: sbServerAddress,
port: sbServerPort,
@@ -132,13 +140,13 @@ const client = new StreamerbotClient({
onConnect: (data) => {
console.log(`Streamer.bot successfully connected to ${sbServerAddress}:${sbServerPort}`)
console.debug(data);
SetConnectionStatus(true);
connectionStatus.setConnected(true);
KickConnect();
},
onDisconnect: () => {
console.error(`Streamer.bot disconnected from ${sbServerAddress}:${sbServerPort}`)
SetConnectionStatus(false);
connectionStatus.setConnected(false);
}
});
@@ -1848,30 +1856,4 @@ function GetWinnersList(gifts) {
const secondLastWinner = winners.pop();
return `${winners.join(", ")}, ${secondLastWinner} and ${lastWinner}`;
}
}
///////////////////////////////////
// STREAMER.BOT WEBSOCKET STATUS //
///////////////////////////////////
// This function sets the visibility of the Streamer.bot status label on the overlay
function SetConnectionStatus(connected) {
let statusContainer = document.getElementById("statusContainer");
if (connected) {
statusContainer.style.background = "#2FB774";
statusContainer.innerText = "Connected!";
statusContainer.style.opacity = 1;
setTimeout(() => {
statusContainer.style.transition = "all 2s ease";
statusContainer.style.opacity = 0;
}, 10);
}
else {
statusContainer.style.background = "#D12025";
statusContainer.innerText = "Connecting...";
statusContainer.style.transition = "";
statusContainer.style.opacity = 1;
}
}
-14
View File
@@ -21,20 +21,6 @@ html {
overflow-wrap: break-word;
}
#statusContainer {
font-weight: 500;
font-size: 30px;
text-align: center;
background-color: #D12025;
color: white;
padding: 10px;
border-radius: 10px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
#mainContainer {
position: absolute;
height: calc(100% - 2 * var(--margin));