diff --git a/apps/desktop/src/config_center/config_center.cpp b/apps/desktop/src/config_center/config_center.cpp index 7bc26b13..d696df0d 100644 --- a/apps/desktop/src/config_center/config_center.cpp +++ b/apps/desktop/src/config_center/config_center.cpp @@ -116,16 +116,6 @@ int ConfigCenter::Load() { } else { signal_server_port_ = 0; } - const char* coturn_server_port_value = - ini_.GetValue(section_, "coturn_server_port", nullptr); - if (coturn_server_port_value != nullptr && - strlen(coturn_server_port_value) > 0) { - coturn_server_port_ = - static_cast(ini_.GetLongValue(section_, "coturn_server_port", 0)); - } else { - coturn_server_port_ = 0; - } - enable_autostart_ = ini_.GetBoolValue(section_, "enable_autostart", enable_autostart_); enable_daemon_ = ini_.GetBoolValue(section_, "enable_daemon", enable_daemon_); @@ -171,8 +161,6 @@ int ConfigCenter::Save() { ini_.SetValue(section_, "signal_server_host", signal_server_host_.c_str()); ini_.SetLongValue(section_, "signal_server_port", static_cast(signal_server_port_)); - ini_.SetLongValue(section_, "coturn_server_port", - static_cast(coturn_server_port_)); } ini_.SetBoolValue(section_, "enable_autostart", enable_autostart_); @@ -316,17 +304,6 @@ int ConfigCenter::SetServerPort(int signal_server_port) { return 0; } -int ConfigCenter::SetCoturnServerPort(int coturn_server_port) { - coturn_server_port_ = coturn_server_port; - ini_.SetLongValue(section_, "coturn_server_port", - static_cast(coturn_server_port_)); - SI_Error rc = ini_.SaveFile(config_path_.c_str()); - if (rc < 0) { - return -1; - } - return 0; -} - int ConfigCenter::SetSelfHosted(bool enable_self_hosted) { enable_self_hosted_ = enable_self_hosted; ini_.SetBoolValue(section_, "enable_self_hosted", enable_self_hosted_); @@ -346,19 +323,9 @@ int ConfigCenter::SetSelfHosted(bool enable_self_hosted) { signal_server_port_ = static_cast( ini_.GetLongValue(section_, "signal_server_port", 0)); } - const char* coturn_server_port_value = - ini_.GetValue(section_, "coturn_server_port", nullptr); - if (coturn_server_port_value != nullptr && - strlen(coturn_server_port_value) > 0) { - coturn_server_port_ = static_cast( - ini_.GetLongValue(section_, "coturn_server_port", 0)); - } - ini_.SetValue(section_, "signal_server_host", signal_server_host_.c_str()); ini_.SetLongValue(section_, "signal_server_port", static_cast(signal_server_port_)); - ini_.SetLongValue(section_, "coturn_server_port", - static_cast(coturn_server_port_)); } SI_Error rc = ini_.SaveFile(config_path_.c_str()); @@ -456,8 +423,6 @@ std::string ConfigCenter::GetSignalServerHost() const { int ConfigCenter::GetSignalServerPort() const { return signal_server_port_; } -int ConfigCenter::GetCoturnServerPort() const { return coturn_server_port_; } - std::string ConfigCenter::GetDefaultServerHost() const { return signal_server_host_default_; } @@ -466,10 +431,6 @@ int ConfigCenter::GetDefaultSignalServerPort() const { return server_port_default_; } -int ConfigCenter::GetDefaultCoturnServerPort() const { - return coturn_server_port_default_; -} - bool ConfigCenter::IsSelfHosted() const { return enable_self_hosted_; } bool ConfigCenter::IsEnableAutostart() const { return enable_autostart_; } diff --git a/apps/desktop/src/config_center/config_center.h b/apps/desktop/src/config_center/config_center.h index 14c2cb08..9b3fdbfe 100644 --- a/apps/desktop/src/config_center/config_center.h +++ b/apps/desktop/src/config_center/config_center.h @@ -47,7 +47,6 @@ class ConfigCenter { int SetSrtp(bool enable_srtp); int SetServerHost(const std::string& signal_server_host); int SetServerPort(int signal_server_port); - int SetCoturnServerPort(int coturn_server_port); int SetSelfHosted(bool enable_self_hosted); int SetAutostart(bool enable_autostart); int SetDaemon(bool enable_daemon); @@ -67,10 +66,8 @@ class ConfigCenter { bool IsEnableSrtp() const; std::string GetSignalServerHost() const; int GetSignalServerPort() const; - int GetCoturnServerPort() const; std::string GetDefaultServerHost() const; int GetDefaultSignalServerPort() const; - int GetDefaultCoturnServerPort() const; bool IsSelfHosted() const; bool IsEnableAutostart() const; bool IsEnableDaemon() const; @@ -98,8 +95,6 @@ class ConfigCenter { std::string signal_server_host_default_ = "api.crossdesk.cn"; int signal_server_port_ = 0; int server_port_default_ = 9099; - int coturn_server_port_ = 0; - int coturn_server_port_default_ = 3478; bool enable_self_hosted_ = false; bool enable_autostart_ = false; bool enable_daemon_ = false; diff --git a/apps/desktop/src/gui/application/gui_application.cpp b/apps/desktop/src/gui/application/gui_application.cpp index c8b6ed4b..48b6633a 100644 --- a/apps/desktop/src/gui/application/gui_application.cpp +++ b/apps/desktop/src/gui/application/gui_application.cpp @@ -1230,7 +1230,6 @@ void GuiApplication::ResetSettingsUi() { ui_->main->set_file_save_path(file_transfer_save_path_buf_); ui_->main->set_server_host(signal_server_ip_self_); ui_->main->set_server_port(signal_server_port_self_); - ui_->main->set_coturn_port(coturn_server_port_self_); } void GuiApplication::BindMainCallbacks() { @@ -1388,7 +1387,6 @@ void GuiApplication::BindMainCallbacks() { main->on_save_self_hosted_settings([this] { const std::string host(ui_->main->get_server_host()); const auto signal_port = ParsePort(ui_->main->get_server_port()); - const auto coturn_port = ParsePort(ui_->main->get_coturn_port()); if (!host.empty()) { config_center_->SetServerHost(host); std::memset(signal_server_ip_self_, 0, sizeof(signal_server_ip_self_)); @@ -1405,25 +1403,14 @@ void GuiApplication::BindMainCallbacks() { std::snprintf(signal_server_port_, sizeof(signal_server_port_), "%d", *signal_port); } - if (coturn_port) { - config_center_->SetCoturnServerPort(*coturn_port); - std::snprintf(coturn_server_port_self_, sizeof(coturn_server_port_self_), - "%d", *coturn_port); - std::snprintf(coturn_server_port_, sizeof(coturn_server_port_), "%d", - *coturn_port); - } }); main->on_cancel_self_hosted_settings([this] { const std::string host = config_center_->GetSignalServerHost(); ui_->main->set_server_host(UiText(host)); const int signal_port = config_center_->GetSignalServerPort(); - const int coturn_port = config_center_->GetCoturnServerPort(); ui_->main->set_server_port(signal_port > 0 ? UiText(std::to_string(signal_port)) : slint::SharedString{}); - ui_->main->set_coturn_port(coturn_port > 0 - ? UiText(std::to_string(coturn_port)) - : slint::SharedString{}); }); main->on_open_download([this] { OpenUrl("https://crossdesk.cn"); }); main->on_connection_cancel([this] { @@ -2962,9 +2949,6 @@ void GuiApplication::SaveSettingsFromUi() { if (const auto port = ParsePort(main->get_server_port())) { config_center_->SetServerPort(*port); } - if (const auto port = ParsePort(main->get_coturn_port())) { - config_center_->SetCoturnServerPort(*port); - } language_button_value_last_ = language_button_value_; video_quality_button_value_last_ = video_quality_button_value_; diff --git a/apps/desktop/src/gui/assets/localization/localization_data.h b/apps/desktop/src/gui/assets/localization/localization_data.h index ea6a726c..03726883 100644 --- a/apps/desktop/src/gui/assets/localization/localization_data.h +++ b/apps/desktop/src/gui/assets/localization/localization_data.h @@ -149,8 +149,6 @@ struct TranslationRow { "Server Address:", u8"Адрес сервера:") \ X(self_hosted_server_port, u8"信令服务端口:", \ "Signal Service Port:", u8"Порт сигнального сервиса:") \ - X(self_hosted_server_coturn_server_port, u8"中继服务端口:", \ - "Relay Service Port:", u8"Порт реле-сервиса:") \ X(ok, u8"确认", "OK", u8"ОК") \ X(cancel, u8"取消", "Cancel", u8"Отмена") \ X(new_password, u8"请输入六位密码:", \ diff --git a/apps/desktop/src/gui/runtime/gui_runtime.cpp b/apps/desktop/src/gui/runtime/gui_runtime.cpp index 4973c78c..1fb70e4c 100644 --- a/apps/desktop/src/gui/runtime/gui_runtime.cpp +++ b/apps/desktop/src/gui/runtime/gui_runtime.cpp @@ -34,12 +34,10 @@ int GuiRuntime::CreateConnectionPeer() { std::string signal_server_ip; int signal_server_port; - int coturn_server_port; if (config_center_->IsSelfHosted()) { signal_server_ip = config_center_->GetSignalServerHost(); signal_server_port = config_center_->GetSignalServerPort(); - coturn_server_port = config_center_->GetCoturnServerPort(); std::string current_self_hosted_ip = config_center_->GetSignalServerHost(); const bool use_cached_id = settings_.LoadCachedSelfHostedIdentity(); @@ -64,7 +62,6 @@ int GuiRuntime::CreateConnectionPeer() { } else { signal_server_ip = config_center_->GetDefaultServerHost(); signal_server_port = config_center_->GetDefaultSignalServerPort(); - coturn_server_port = config_center_->GetDefaultCoturnServerPort(); settings_.ActivateCachedPublicIdentity(); params_.user_id = client_id_with_password_; } @@ -115,34 +112,11 @@ int GuiRuntime::CreateConnectionPeer() { } else { signal_server_port_self_[0] = '\0'; } - int coturn_port = config_center_->GetCoturnServerPort(); - if (coturn_port > 0) { - strncpy(coturn_server_port_self_, std::to_string(coturn_port).c_str(), - sizeof(coturn_server_port_self_) - 1); - coturn_server_port_self_[sizeof(coturn_server_port_self_) - 1] = '\0'; - } else { - coturn_server_port_self_[0] = '\0'; - } - // peer config strncpy((char *)params_.signal_server_ip, signal_server_ip.c_str(), sizeof(params_.signal_server_ip) - 1); params_.signal_server_ip[sizeof(params_.signal_server_ip) - 1] = '\0'; params_.signal_server_port = signal_server_port; - strncpy((char *)params_.stun_server_ip, signal_server_ip.c_str(), - sizeof(params_.stun_server_ip) - 1); - params_.stun_server_ip[sizeof(params_.stun_server_ip) - 1] = '\0'; - params_.stun_server_port = coturn_server_port; - strncpy((char *)params_.turn_server_ip, signal_server_ip.c_str(), - sizeof(params_.turn_server_ip) - 1); - params_.turn_server_ip[sizeof(params_.turn_server_ip) - 1] = '\0'; - params_.turn_server_port = coturn_server_port; - // TURN credentials are issued by the signaling server after login. Keep the - // initial values empty so a reusable static password is never embedded in - // the client binary. - params_.turn_server_username[0] = '\0'; - params_.turn_server_password[0] = '\0'; - strncpy(params_.log_path, dll_log_path_.c_str(), sizeof(params_.log_path) - 1); params_.log_path[sizeof(params_.log_path) - 1] = '\0'; diff --git a/apps/desktop/src/gui/runtime/runtime_state.h b/apps/desktop/src/gui/runtime/runtime_state.h index c4fca9f2..464df2b1 100644 --- a/apps/desktop/src/gui/runtime/runtime_state.h +++ b/apps/desktop/src/gui/runtime/runtime_state.h @@ -139,7 +139,6 @@ struct UserSettingsState { bool enable_srtp_ = false; char signal_server_ip_[256] = "api.crossdesk.cn"; char signal_server_port_[6] = "9099"; - char coturn_server_port_[6] = "3478"; bool enable_self_hosted_ = false; int language_button_value_last_ = 0; int video_quality_button_value_last_ = 0; @@ -158,7 +157,6 @@ struct UserSettingsState { std::string file_transfer_save_path_last_; char signal_server_ip_self_[256] = ""; char signal_server_port_self_[6] = ""; - char coturn_server_port_self_[6] = ""; bool settings_window_pos_reset_ = true; bool self_hosted_server_config_window_pos_reset_ = true; std::string selected_current_file_path_; diff --git a/apps/desktop/src/gui/ui/main_window.slint b/apps/desktop/src/gui/ui/main_window.slint index 61d20307..8de436a1 100644 --- a/apps/desktop/src/gui/ui/main_window.slint +++ b/apps/desktop/src/gui/ui/main_window.slint @@ -54,7 +54,6 @@ export global UiStrings { in-out property default-desktop: "Desktop"; in-out property server-host: "Server host"; in-out property server-port: "Signal port"; - in-out property coturn-port: "TURN port"; in-out property version: "Version"; in-out property copyright: "© 2026 by JUNKUN DI. All right reserved."; in-out property license: "Licensed under GNU GPL v3."; @@ -250,7 +249,6 @@ export component MainWindow inherits Window { in-out property file-save-path: ""; in-out property server-host: ""; in-out property server-port: ""; - in-out property coturn-port: ""; in property settings-session-active: false; // Keep the setting visible on every platform. Unsupported builds expose it // as disabled so the fixed settings layout never turns into a blank row. @@ -1519,7 +1517,7 @@ export component MainWindow inherits Window { x: root.compact-language ? 190px : 140px; y: 105px; width: root.compact-language ? 260px : 360px; - height: 168px; + height: 138px; border-radius: 7px; Rectangle { @@ -1559,21 +1557,8 @@ export component MainWindow inherits Window { LineEdit { x: 1px; y: 1.5px; width: parent.width - 2px; height: parent.height - 2px; text <=> root.server-port; input-type: InputType.number; font-size: ImGuiFontStyle.body; } LineEditFocusUnderlineMask { x: 5px; y: parent.height - 3px; width: parent.width - 10px; } } - Text { x: 8px; y: 91px; width: root.compact-language ? 88px : 165px; height: 24px; text: UiStrings.coturn-port; font-size: ImGuiFontStyle.body; overflow: elide; vertical-alignment: center; } - Rectangle { - x: root.compact-language ? 100px : 173px; - y: 90px; - width: root.compact-language ? 152px : 179px; - height: 24px; - background: white; - border-width: 1px; - border-color: ImGuiLineStyle.border; - border-radius: 4px; - LineEdit { x: 1px; y: 1.5px; width: parent.width - 2px; height: parent.height - 2px; text <=> root.coturn-port; input-type: InputType.number; font-size: ImGuiFontStyle.body; } - LineEditFocusUnderlineMask { x: 5px; y: parent.height - 3px; width: parent.width - 10px; } - } - CompactButton { x: root.compact-language ? 93px : 135px; y: 130px; primary: true; text: UiStrings.ok; clicked => { root.save-self-hosted-settings(); root.self-host-settings-open = false; } } - CompactButton { x: root.compact-language ? 134px : 176px; y: 130px; width: root.compact-language ? 34px : 56px; text: UiStrings.cancel; clicked => { root.cancel-self-hosted-settings(); root.self-host-settings-open = false; } } + CompactButton { x: root.compact-language ? 93px : 135px; y: 100px; primary: true; text: UiStrings.ok; clicked => { root.save-self-hosted-settings(); root.self-host-settings-open = false; } } + CompactButton { x: root.compact-language ? 134px : 176px; y: 100px; width: root.compact-language ? 34px : 56px; text: UiStrings.cancel; clicked => { root.cancel-self-hosted-settings(); root.self-host-settings-open = false; } } } } diff --git a/apps/desktop/src/gui/ui/ui_localization.h b/apps/desktop/src/gui/ui/ui_localization.h index b00e15f3..9a8c6c88 100644 --- a/apps/desktop/src/gui/ui/ui_localization.h +++ b/apps/desktop/src/gui/ui/ui_localization.h @@ -78,8 +78,6 @@ inline int ApplyMainWindowStrings( Text(localization::self_hosted_server_address[language])); strings.set_server_port( Text(localization::self_hosted_server_port[language])); - strings.set_coturn_port( - Text(localization::self_hosted_server_coturn_server_port[language])); strings.set_version(Text(localization::version[language])); strings.set_signal_connected(Text(localization::signal_connected[language])); strings.set_signal_disconnected( diff --git a/apps/desktop/src/gui/views/windows/server_settings_window.cpp b/apps/desktop/src/gui/views/windows/server_settings_window.cpp index 2cb67328..e4a38f0b 100644 --- a/apps/desktop/src/gui/views/windows/server_settings_window.cpp +++ b/apps/desktop/src/gui/views/windows/server_settings_window.cpp @@ -36,12 +36,12 @@ int GuiApplication::SelfHostedServerWindow() { ImGui::SetNextWindowPos( ImVec2(io.DisplaySize.x * 0.298f, io.DisplaySize.y * 0.25f)); ImGui::SetNextWindowSize( - ImVec2(io.DisplaySize.x * 0.407f, io.DisplaySize.y * 0.35f)); + ImVec2(io.DisplaySize.x * 0.407f, io.DisplaySize.y * 0.29f)); } else { ImGui::SetNextWindowPos( ImVec2(io.DisplaySize.x * 0.27f, io.DisplaySize.y * 0.3f)); ImGui::SetNextWindowSize( - ImVec2(io.DisplaySize.x * 0.465f, io.DisplaySize.y * 0.35f)); + ImVec2(io.DisplaySize.x * 0.465f, io.DisplaySize.y * 0.29f)); } self_hosted_server_config_window_pos_reset_ = false; @@ -101,25 +101,6 @@ int GuiApplication::SelfHostedServerWindow() { IM_ARRAYSIZE(signal_server_port_self_)); } - ImGui::Separator(); - - { - ImGui::AlignTextToFramePadding(); - ImGui::Text("%s", localization::self_hosted_server_coturn_server_port - [localization_language_index_] - .c_str()); - ImGui::SameLine(); - if (ConfigCenter::LANGUAGE::CHINESE == localization_language_) { - ImGui::SetCursorPosX(title_bar_button_width_ * 2.5f); - } else { - ImGui::SetCursorPosX(title_bar_button_width_ * 3.43f); - } - ImGui::SetNextItemWidth(title_bar_button_width_ * 3.8f); - - ImGui::InputText("##coturn_server_port_self_", coturn_server_port_self_, - IM_ARRAYSIZE(coturn_server_port_self_)); - } - if (stream_window_inited_) { ImGui::EndDisabled(); } @@ -141,17 +122,12 @@ int GuiApplication::SelfHostedServerWindow() { config_center_->SetServerHost(signal_server_ip_self_); config_center_->SetServerPort(atoi(signal_server_port_self_)); - config_center_->SetCoturnServerPort(atoi(coturn_server_port_self_)); strncpy(signal_server_ip_, signal_server_ip_self_, sizeof(signal_server_ip_) - 1); signal_server_ip_[sizeof(signal_server_ip_) - 1] = '\0'; strncpy(signal_server_port_, signal_server_port_self_, sizeof(signal_server_port_) - 1); signal_server_port_[sizeof(signal_server_port_) - 1] = '\0'; - strncpy(coturn_server_port_, coturn_server_port_self_, - sizeof(coturn_server_port_) - 1); - coturn_server_port_[sizeof(coturn_server_port_) - 1] = '\0'; - self_hosted_server_config_window_pos_reset_ = true; } @@ -173,14 +149,6 @@ int GuiApplication::SelfHostedServerWindow() { } else { signal_server_port_self_[0] = '\0'; } - int coturn_port = config_center_->GetCoturnServerPort(); - if (coturn_port > 0) { - strncpy(coturn_server_port_self_, std::to_string(coturn_port).c_str(), - sizeof(coturn_server_port_self_) - 1); - coturn_server_port_self_[sizeof(coturn_server_port_self_) - 1] = '\0'; - } else { - coturn_server_port_self_[0] = '\0'; - } } ImGui::SetWindowFontScale(1.0f); diff --git a/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.h b/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.h index 4539180a..b2adb70e 100644 --- a/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.h +++ b/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.h @@ -100,7 +100,6 @@ typedef NS_ENUM(NSInteger, CrossDeskVideoAdaptationPolicy) { - (void)configureWithSignalHost:(NSString *)host signalPort:(NSInteger)signalPort - turnPort:(NSInteger)turnPort enableSRTP:(BOOL)enableSRTP; - (void)setHardwareAccelerationEnabled:(BOOL)enabled; - (void)setVideoAdaptationPolicy:(CrossDeskVideoAdaptationPolicy)policy; diff --git a/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.mm b/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.mm index 0d080531..1c65b386 100644 --- a/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.mm +++ b/apps/ios/CrossDeskMobile/Bridge/CrossDeskRTCBridge.mm @@ -75,7 +75,6 @@ struct RTCState { CallbackContext controller_context; std::string signal_host; int signal_port = 0; - int turn_port = 0; bool enable_srtp = false; bool hardware_acceleration = true; VideoDegradationPreference video_adaptation_policy = @@ -332,14 +331,6 @@ Params MakeParams(const RTCState &state, const std::string &user_id, CopyCString(params.signal_server_ip, sizeof(params.signal_server_ip), state.signal_host); params.signal_server_port = state.signal_port; - CopyCString(params.stun_server_ip, sizeof(params.stun_server_ip), - state.signal_host); - params.stun_server_port = state.turn_port; - CopyCString(params.turn_server_ip, sizeof(params.turn_server_ip), - state.signal_host); - params.turn_server_port = state.turn_port; - params.turn_server_username[0] = '\0'; - params.turn_server_password[0] = '\0'; CopyCString(params.log_path, sizeof(params.log_path), state.log_path); params.hardware_acceleration = state.hardware_acceleration; params.native_video_output = true; @@ -442,13 +433,12 @@ Params MakeParams(const RTCState &state, const std::string &user_id, - (void)configureWithSignalHost:(NSString *)host signalPort:(NSInteger)signalPort - turnPort:(NSInteger)turnPort enableSRTP:(BOOL)enableSRTP { NSString *trimmed = [host stringByTrimmingCharactersInSet: NSCharacterSet.whitespaceAndNewlineCharacterSet]; const char *host_c_string = trimmed.UTF8String; const std::string host_value = host_c_string ? host_c_string : ""; - if (host_value.empty() || signalPort <= 0 || turnPort <= 0) return; + if (host_value.empty() || signalPort <= 0) return; NSString *cache = NSSearchPathForDirectoriesInDomains( NSCachesDirectory, NSUserDomainMask, YES) @@ -465,7 +455,6 @@ Params MakeParams(const RTCState &state, const std::string &user_id, dispatch_async(_rtcQueue, ^{ const bool unchanged = self->_state->signal_host == host_value && self->_state->signal_port == signalPort && - self->_state->turn_port == turnPort && self->_state->enable_srtp == enableSRTP && self->_state->identity_peer != nullptr; if (unchanged) return; @@ -474,7 +463,6 @@ Params MakeParams(const RTCState &state, const std::string &user_id, [self destroyIdentityPeer]; self->_state->signal_host = host_value; self->_state->signal_port = static_cast(signalPort); - self->_state->turn_port = static_cast(turnPort); self->_state->enable_srtp = enableSRTP; self->_state->log_path = log_path; self->_state->identity_ready = false; diff --git a/apps/ios/CrossDeskMobile/ContentView.swift b/apps/ios/CrossDeskMobile/ContentView.swift index a91a7415..2e760218 100644 --- a/apps/ios/CrossDeskMobile/ContentView.swift +++ b/apps/ios/CrossDeskMobile/ContentView.swift @@ -716,8 +716,6 @@ private struct ServerSettingsView: View { .autocorrectionDisabled() TextField("信令端口", text: $session.signalPort) .keyboardType(.numberPad) - TextField("STUN/TURN 端口", text: $session.turnPort) - .keyboardType(.numberPad) } Section { Toggle("启用 SRTP", isOn: $session.enableSRTP) diff --git a/apps/ios/CrossDeskMobile/RemoteSessionModel.swift b/apps/ios/CrossDeskMobile/RemoteSessionModel.swift index 2ef08dfe..3c52dc67 100644 --- a/apps/ios/CrossDeskMobile/RemoteSessionModel.swift +++ b/apps/ios/CrossDeskMobile/RemoteSessionModel.swift @@ -358,7 +358,6 @@ private final class RemoteAudioPlayer { final class RemoteSessionModel: NSObject, ObservableObject, CrossDeskRTCBridgeDelegate { @Published var signalHost = "api.crossdesk.cn" @Published var signalPort = "9099" - @Published var turnPort = "3478" @Published var enableSRTP = false @Published var mouseControlMode = MouseControlMode.saved { didSet { mouseControlMode.save() } @@ -425,7 +424,6 @@ final class RemoteSessionModel: NSObject, ObservableObject, CrossDeskRTCBridgeDe private struct BridgeConfiguration: Equatable { let host: String let signalPort: Int - let turnPort: Int let enableSRTP: Bool } private var bridgeConfiguration: BridgeConfiguration? @@ -453,14 +451,14 @@ final class RemoteSessionModel: NSObject, ObservableObject, CrossDeskRTCBridgeDe @discardableResult func configureBridge() -> Bool { let host = signalHost.trimmingCharacters(in: .whitespacesAndNewlines) - guard let signal = Int(signalPort), let turn = Int(turnPort), - (1...65535).contains(signal), (1...65535).contains(turn), + guard let signal = Int(signalPort), + (1...65535).contains(signal), !host.isEmpty else { signalStatus = "服务器配置无效" return false } let configuration = BridgeConfiguration(host: host, signalPort: signal, - turnPort: turn, enableSRTP: enableSRTP) + enableSRTP: enableSRTP) if bridgeConfiguration != configuration { bridgeConfiguration = configuration signalConnected = false @@ -475,7 +473,6 @@ final class RemoteSessionModel: NSObject, ObservableObject, CrossDeskRTCBridgeDe bridge.setVideoAdaptationPolicy(videoAdaptationPolicy.bridgeValue) bridge.configure(withSignalHost: host, signalPort: signal, - turnPort: turn, enableSRTP: enableSRTP) return true } diff --git a/deps/submodules/minirtc b/deps/submodules/minirtc index 5fc313c1..9313ae8b 160000 --- a/deps/submodules/minirtc +++ b/deps/submodules/minirtc @@ -1 +1 @@ -Subproject commit 5fc313c10208ac5a52f275e650b5ee10913ac625 +Subproject commit 9313ae8b926daee55ebdcb9a330154f3c923097e