From 8d05a9dce37a0c3e5133a4a2be38c4ef1795a546 Mon Sep 17 00:00:00 2001 From: Ryan ZHAO <> Date: Wed, 28 Aug 2024 11:53:35 +1000 Subject: [PATCH] move webRTC constants to its own file --- Session.xcodeproj/project.pbxproj | 4 ++++ .../Calls/WebRTC/WebRTCSession+Constants.swift | 15 +++++++++++++++ Session/Calls/WebRTC/WebRTCSession.swift | 12 ++++++------ 3 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 Session/Calls/WebRTC/WebRTCSession+Constants.swift diff --git a/Session.xcodeproj/project.pbxproj b/Session.xcodeproj/project.pbxproj index d95cc297f..96cdd85b6 100644 --- a/Session.xcodeproj/project.pbxproj +++ b/Session.xcodeproj/project.pbxproj @@ -164,6 +164,7 @@ 7BFA8AE32831D0D4001876F3 /* ContextMenuVC+EmojiReactsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BFA8AE22831D0D4001876F3 /* ContextMenuVC+EmojiReactsView.swift */; }; 7BFD1A8A2745C4F000FB91B9 /* Permissions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BFD1A892745C4F000FB91B9 /* Permissions.swift */; }; 7BFD1A972747689000FB91B9 /* Session-Turn-Server in Resources */ = {isa = PBXBuildFile; fileRef = 7BFD1A962747689000FB91B9 /* Session-Turn-Server */; }; + 9409433E2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9409433D2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift */; }; 942256802C23F8BB00C0FDBF /* StartConversationScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9422567D2C23F8BB00C0FDBF /* StartConversationScreen.swift */; }; 942256812C23F8BB00C0FDBF /* NewMessageScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9422567E2C23F8BB00C0FDBF /* NewMessageScreen.swift */; }; 942256822C23F8BB00C0FDBF /* InviteAFriendScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9422567F2C23F8BB00C0FDBF /* InviteAFriendScreen.swift */; }; @@ -1355,6 +1356,7 @@ 7BFD1A892745C4F000FB91B9 /* Permissions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Permissions.swift; sourceTree = ""; }; 7BFD1A8B2747150E00FB91B9 /* TurnServerInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TurnServerInfo.swift; sourceTree = ""; }; 7BFD1A962747689000FB91B9 /* Session-Turn-Server */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "Session-Turn-Server"; sourceTree = ""; }; + 9409433D2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WebRTCSession+Constants.swift"; sourceTree = ""; }; 9422567D2C23F8BB00C0FDBF /* StartConversationScreen.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StartConversationScreen.swift; sourceTree = ""; }; 9422567E2C23F8BB00C0FDBF /* NewMessageScreen.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewMessageScreen.swift; sourceTree = ""; }; 9422567F2C23F8BB00C0FDBF /* InviteAFriendScreen.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InviteAFriendScreen.swift; sourceTree = ""; }; @@ -4381,6 +4383,7 @@ B8B558FE26C4E05E00693325 /* WebRTCSession+MessageHandling.swift */, B8BF43B926CC95FB007828D1 /* WebRTC+Utilities.swift */, 7BCD116B27016062006330F1 /* WebRTCSession+DataChannel.swift */, + 9409433D2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift */, ); path = WebRTC; sourceTree = ""; @@ -6260,6 +6263,7 @@ FD37E9CC28A1E578003AE748 /* AppearanceViewController.swift in Sources */, B8EB20F02640F7F000773E52 /* OpenGroupInvitationView.swift in Sources */, C328254025CA55880062D0A7 /* ContextMenuVC.swift in Sources */, + 9409433E2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift in Sources */, 7BD687D12A5D0D1200D8E455 /* MessageInfoScreen.swift in Sources */, B8269D2925C7A4B400488AB4 /* InputView.swift in Sources */, FD71162E28E168C700B47552 /* SettingsViewModel.swift in Sources */, diff --git a/Session/Calls/WebRTC/WebRTCSession+Constants.swift b/Session/Calls/WebRTC/WebRTCSession+Constants.swift new file mode 100644 index 000000000..2e9e09a5e --- /dev/null +++ b/Session/Calls/WebRTC/WebRTCSession+Constants.swift @@ -0,0 +1,15 @@ +// Copyright © 2024 Rangeproof Pty Ltd. All rights reserved. +// +// stringlint:disable + +extension WebRTCSession { + public enum Constants { + public static let audio_track_id: String = "ARDAMSa0" + public static let local_video_track_id: String = "ARDAMSv0" + public static let media_stream_track_id: String = "ARDAMS" + public static let video: String = "video" + public static let hang_up: String = "hangup" + } +} + + diff --git a/Session/Calls/WebRTC/WebRTCSession.swift b/Session/Calls/WebRTC/WebRTCSession.swift index 433b6ea74..580acb01b 100644 --- a/Session/Calls/WebRTC/WebRTCSession.swift +++ b/Session/Calls/WebRTC/WebRTCSession.swift @@ -58,7 +58,7 @@ public final class WebRTCSession : NSObject, RTCPeerConnectionDelegate { }() internal lazy var audioTrack: RTCAudioTrack = { - return factory.audioTrack(with: audioSource, trackId: "ARDAMSa0") // stringlint:disable + return factory.audioTrack(with: audioSource, trackId: Self.Constants.audio_track_id) }() // Video @@ -69,7 +69,7 @@ public final class WebRTCSession : NSObject, RTCPeerConnectionDelegate { }() internal lazy var localVideoTrack: RTCVideoTrack = { - return factory.videoTrack(with: localVideoSource, trackId: "ARDAMSv0") // stringlint:disable + return factory.videoTrack(with: localVideoSource, trackId: Self.Constants.local_video_track_id) }() internal lazy var remoteVideoTrack: RTCVideoTrack? = { @@ -103,7 +103,7 @@ public final class WebRTCSession : NSObject, RTCPeerConnectionDelegate { super.init() - let mediaStreamTrackIDS = ["ARDAMS"] // stringlint:disable + let mediaStreamTrackIDS = [Self.Constants.media_stream_track_id] peerConnection?.add(audioTrack, streamIds: mediaStreamTrackIDS) peerConnection?.add(localVideoTrack, streamIds: mediaStreamTrackIDS) @@ -480,15 +480,15 @@ extension WebRTCSession { public func turnOffVideo() { localVideoTrack.isEnabled = false - sendJSON(["video": false]) // stringlint:disable + sendJSON([Self.Constants.video: false]) } public func turnOnVideo() { localVideoTrack.isEnabled = true - sendJSON(["video": true]) // stringlint:disable + sendJSON([Self.Constants.video: true]) } public func hangUp() { - sendJSON(["hangup": true]) // stringlint:disable + sendJSON([Self.Constants.hang_up: true]) } }