diff --git a/apps/meteor/app/channel-settings/server/functions/saveStreamingOptions.ts b/apps/meteor/app/channel-settings/server/functions/saveStreamingOptions.ts deleted file mode 100644 index aee596402cc6..000000000000 --- a/apps/meteor/app/channel-settings/server/functions/saveStreamingOptions.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Rooms } from '@rocket.chat/models'; -import { Match, check } from 'meteor/check'; -import { Meteor } from 'meteor/meteor'; - -export const saveStreamingOptions = async function (rid: string, options: Record): Promise { - if (!Match.test(rid, String)) { - throw new Meteor.Error('invalid-room', 'Invalid room', { - function: 'RocketChat.saveStreamingOptions', - }); - } - - check(options, { - id: Match.Optional(String), - type: Match.Optional(String), - url: Match.Optional(String), - thumbnail: Match.Optional(String), - isAudioOnly: Match.Optional(Boolean), - message: Match.Optional(String), - }); - - await Rooms.setStreamingOptionsById(rid, options); -}; diff --git a/apps/meteor/app/channel-settings/server/methods/saveRoomSettings.ts b/apps/meteor/app/channel-settings/server/methods/saveRoomSettings.ts index 44ad253d83ef..04e8fdbaf186 100644 --- a/apps/meteor/app/channel-settings/server/methods/saveRoomSettings.ts +++ b/apps/meteor/app/channel-settings/server/methods/saveRoomSettings.ts @@ -21,7 +21,6 @@ import { saveRoomReadOnly } from '../functions/saveRoomReadOnly'; import { saveRoomSystemMessages } from '../functions/saveRoomSystemMessages'; import { saveRoomTopic } from '../functions/saveRoomTopic'; import { saveRoomType } from '../functions/saveRoomType'; -import { saveStreamingOptions } from '../functions/saveStreamingOptions'; type RoomSettings = { roomAvatar: string; @@ -37,7 +36,6 @@ type RoomSettings = { systemMessages: MessageTypesValues[]; default: boolean; joinCode: string; - streamingOptions: NonNullable; retentionEnabled: boolean; retentionMaxAge: number; retentionExcludePinned: boolean; @@ -272,9 +270,6 @@ const settingSavers: RoomSettingsSavers = { void Team.update(user._id, room.teamId, { type, updateRoom: false }); } }, - async streamingOptions({ value, rid }) { - await saveStreamingOptions(rid, value); - }, async readOnly({ value, room, rid, user }) { if (value !== room.ro) { await saveRoomReadOnly(rid, value, user); @@ -354,7 +349,6 @@ const fields: (keyof RoomSettings)[] = [ 'systemMessages', 'default', 'joinCode', - 'streamingOptions', 'retentionEnabled', 'retentionMaxAge', 'retentionExcludePinned', diff --git a/apps/meteor/app/models/client/models/CachedChatRoom.ts b/apps/meteor/app/models/client/models/CachedChatRoom.ts index f66e5b447432..852bed5a6067 100644 --- a/apps/meteor/app/models/client/models/CachedChatRoom.ts +++ b/apps/meteor/app/models/client/models/CachedChatRoom.ts @@ -46,7 +46,6 @@ class CachedChatRoom extends CachedCollection { usernames: room.usernames, usersCount: room.usersCount, lastMessage: room.lastMessage, - streamingOptions: room.streamingOptions, teamId: room.teamId, teamMain: room.teamMain, v: (room as IOmnichannelRoom | undefined)?.v, diff --git a/apps/meteor/app/models/client/models/CachedChatSubscription.ts b/apps/meteor/app/models/client/models/CachedChatSubscription.ts index 0e325453539a..7c0e84800c77 100644 --- a/apps/meteor/app/models/client/models/CachedChatSubscription.ts +++ b/apps/meteor/app/models/client/models/CachedChatSubscription.ts @@ -35,7 +35,6 @@ class CachedChatSubscription extends CachedCollection { const federated = isRoomFederated(room); const ownUser = room.uids?.length === 1 ?? false; - const live = room?.streamingOptions?.type === 'call' ?? false; const permittedToPostReadonly = usePermission('post-readonly', room._id); const permittedToCallManagement = usePermission('call-management', room._id); @@ -81,8 +80,8 @@ export const useStartCallRoomAction = () => { disabled: true, }), full: true, - order: live ? -1 : 4, + order: 4, featured: true, }; - }, [allowed, disabled, groups, handleOpenVideoConf, live, t]); + }, [allowed, disabled, groups, handleOpenVideoConf, t]); }; diff --git a/apps/meteor/lib/publishFields.ts b/apps/meteor/lib/publishFields.ts index 1e9274526ef5..c1483ea86cd1 100644 --- a/apps/meteor/lib/publishFields.ts +++ b/apps/meteor/lib/publishFields.ts @@ -86,7 +86,6 @@ export const roomFields = { reactWhenReadOnly: 1, sysMes: 1, sentiment: 1, - streamingOptions: 1, broadcast: 1, encrypted: 1, e2eKeyId: 1, diff --git a/apps/meteor/server/models/raw/Rooms.ts b/apps/meteor/server/models/raw/Rooms.ts index bb496bf79971..05a18251f69c 100644 --- a/apps/meteor/server/models/raw/Rooms.ts +++ b/apps/meteor/server/models/raw/Rooms.ts @@ -642,15 +642,6 @@ export class RoomsRaw extends BaseRaw implements IRoomsModel { ); } - findByActiveLivestream(options: FindOptions = {}): FindCursor { - return this.find( - { - 'streamingOptions.type': 'livestream', - }, - options, - ); - } - setAsFederated(roomId: IRoom['_id']): Promise { return this.updateOne({ _id: roomId }, { $set: { federated: true } }); } @@ -1030,15 +1021,6 @@ export class RoomsRaw extends BaseRaw implements IRoomsModel { return this.updateOne(query, update); } - setStreamingOptionsById(_id: IRoom['_id'], streamingOptions: IRoom['streamingOptions']): Promise { - const update: UpdateFilter = { - $set: { - streamingOptions, - }, - }; - return this.updateOne({ _id }, update); - } - setReadOnlyById(_id: IRoom['_id'], readOnly: NonNullable): Promise { const query: Filter = { _id, diff --git a/packages/core-typings/src/IRoom.ts b/packages/core-typings/src/IRoom.ts index 4a2124e98b98..1cfb672d1573 100644 --- a/packages/core-typings/src/IRoom.ts +++ b/packages/core-typings/src/IRoom.ts @@ -53,15 +53,6 @@ export interface IRoom extends IRocketChatRecord { _id: string; }; - streamingOptions?: { - id?: string; - type?: string; - url?: string; - thumbnail?: string; - isAudioOnly?: boolean; - message?: string; - }; - prid?: string; avatarETag?: string; diff --git a/packages/core-typings/src/IStats.ts b/packages/core-typings/src/IStats.ts index 826396bbb9c7..671024f7aa02 100644 --- a/packages/core-typings/src/IStats.ts +++ b/packages/core-typings/src/IStats.ts @@ -177,7 +177,6 @@ export interface IStats { dashboardCount: number; joinJitsiButton: number; totalBroadcastRooms: number; - totalRoomsWithActiveLivestream: number; totalTriggeredEmails: number; totalRoomsWithStarred: number; totalRoomsWithPinned: number; diff --git a/packages/model-typings/src/models/IRoomsModel.ts b/packages/model-typings/src/models/IRoomsModel.ts index 1808c9f361f4..b9b327952b1b 100644 --- a/packages/model-typings/src/models/IRoomsModel.ts +++ b/packages/model-typings/src/models/IRoomsModel.ts @@ -112,8 +112,6 @@ export interface IRoomsModel extends IBaseModel { findByBroadcast(options?: FindOptions): FindCursor; - findByActiveLivestream(options?: FindOptions): FindCursor; - setAsFederated(roomId: IRoom['_id']): Promise; setRoomTypeById(roomId: IRoom['_id'], roomType: IRoom['t']): Promise; @@ -176,7 +174,6 @@ export interface IRoomsModel extends IBaseModel { setLastMessagePinned(roomId: string, pinnedBy: unknown, pinned?: boolean, pinnedAt?: Date): Promise; setLastMessageAsRead(roomId: string): Promise; setDescriptionById(roomId: string, description: string): Promise; - setStreamingOptionsById(roomId: string, streamingOptions: IRoom['streamingOptions']): Promise; setReadOnlyById(roomId: string, readOnly: NonNullable): Promise; setDmReadOnlyByUserId( roomId: string, diff --git a/packages/ui-contexts/src/types/SubscriptionWithRoom.ts b/packages/ui-contexts/src/types/SubscriptionWithRoom.ts index 908df94f0202..09f37886846c 100644 --- a/packages/ui-contexts/src/types/SubscriptionWithRoom.ts +++ b/packages/ui-contexts/src/types/SubscriptionWithRoom.ts @@ -9,7 +9,6 @@ export type SubscriptionWithRoom = ISubscription & | 'announcement' | 'avatarETag' | 'lastMessage' - | 'streamingOptions' | 'uids' | 'usernames' | 'usersCount'