mirror of
https://github.com/legop3/MultiRoombaRover.git
synced 2026-09-15 17:12:59 -04:00
private rover replays for those who are allowed the luxury of using them when closed
This commit is contained in:
+5
-5
@@ -1,8 +1,8 @@
|
||||
1. FIX THE NICKNAME THING BEING BROKEN!!!!
|
||||
1. add faster way for admins to login, like an invisible button in top left or something
|
||||
2. add discord bot typing thing for when someone requests a replay
|
||||
3. change replay title for ones requested from discord, something other than "requester driving rover"
|
||||
4. fix rover request spam queue cheat
|
||||
1. allow private rover replays for people who are allowed to drive them
|
||||
2. add faster way for admins to login, like an invisible button in top left or something
|
||||
3. add discord bot typing thing for when someone requests a replay
|
||||
4. change replay title for ones requested from discord, something other than "requester driving rover"
|
||||
5. fix rover request spam queue cheat
|
||||
|
||||
|
||||
# relative pipe dreams:
|
||||
|
||||
@@ -7,7 +7,7 @@ const { getRoomCameras } = require('../roomCameraService');
|
||||
function getReplaySources(socket = null) {
|
||||
const roster = socket ? roverManager.getRosterForSocket(socket) : roverManager.getRoster();
|
||||
const roverSources = roster
|
||||
.filter((rover) => roverManager.canReplayRoverId(rover.id))
|
||||
.filter((rover) => roverManager.canReplayRoverId(rover.id, socket))
|
||||
.map((rover) => ({
|
||||
type: 'rover',
|
||||
id: String(rover.id),
|
||||
|
||||
@@ -28,7 +28,6 @@ function getRoomCameraStream(camera) {
|
||||
function listDesiredSources() {
|
||||
const sources = [];
|
||||
for (const rover of roverManager.getRoster()) {
|
||||
if (!roverManager.canReplayRoverId(rover.id)) continue;
|
||||
const roverId = String(rover.id);
|
||||
sources.push({ id: roverId, sourceType: 'rover', kind: 'video', label: rover.name || roverId, inputUrl: toSrtReadPath(roverId) });
|
||||
if (rover?.media?.audioPublishUrl) {
|
||||
|
||||
@@ -188,8 +188,12 @@ function removeSocket(socket) {
|
||||
roverLifecycle.removeSocket(socket, disableSpectator);
|
||||
}
|
||||
|
||||
function canReplayRoverId(roverId) {
|
||||
return roverLifecycle.canReplayRoverId(roverId, isPrivateRecord, isPrivateOpen);
|
||||
function canReplayRoverId(roverId, socket = null) {
|
||||
const record = rovers.get(String(roverId));
|
||||
if (!record) return false;
|
||||
if (!isPrivateRecord(record)) return true;
|
||||
if (isPrivateOpen(record)) return true;
|
||||
return socket ? isRoverVisibleToSocket(record, socket) : false;
|
||||
}
|
||||
|
||||
roleEvents.on('change', ({ socket, role }) => {
|
||||
|
||||
Reference in New Issue
Block a user