diff --git a/SessionMessagingKit/Sending & Receiving/MessageSender.swift b/SessionMessagingKit/Sending & Receiving/MessageSender.swift index 1eadc5013..fd280e83c 100644 --- a/SessionMessagingKit/Sending & Receiving/MessageSender.swift +++ b/SessionMessagingKit/Sending & Receiving/MessageSender.swift @@ -205,7 +205,7 @@ public final class MessageSender : NSObject { let timestamp = UInt64(Int64(message.sentTimestamp!) + SnodeAPI.clockOffset) let snodeMessage = SnodeMessage(recipient: message.recipient!, data: base64EncodedData, ttl: message.ttl, timestamp: timestamp) SnodeAPI.sendMessage(snodeMessage, - authenticated: (kind != .closedGroupMessage), + isClosedGroupMessage: (kind == .closedGroupMessage), isConfigMessage: message.isKind(of: ConfigurationMessage.self)) .done(on: DispatchQueue.global(qos: .userInitiated)) { promises in var isSuccess = false diff --git a/SessionSnodeKit/SnodeAPI.swift b/SessionSnodeKit/SnodeAPI.swift index 47e3bca6a..c7e08b069 100644 --- a/SessionSnodeKit/SnodeAPI.swift +++ b/SessionSnodeKit/SnodeAPI.swift @@ -489,18 +489,12 @@ public final class SnodeAPI : NSObject { // MARK: Store - public static func sendConfigMessage(_ message: SnodeMessage) -> Promise> { - return sendMessageWithAuthentication(message, namespace: configNamespace) - } - - public static func sendMessage(_ message: SnodeMessage, authenticated: Bool, isConfigMessage: Bool) -> Promise> { + public static func sendMessage(_ message: SnodeMessage, isClosedGroupMessage: Bool, isConfigMessage: Bool) -> Promise> { if isConfigMessage { - return sendConfigMessage(message) + return sendMessageWithAuthentication(message, namespace: configNamespace) } - if authenticated { - return sendMessageWithAuthentication(message, namespace: defaultNamespace) - } - return sendMessageUnauthenticated(message) + let namespace = isClosedGroupMessage ? unauthenticatedNamespace : defaultNamespace + return sendMessageUnauthenticated(message, namespace: namespace) } private static func sendMessageWithAuthentication(_ message: SnodeMessage, namespace: Int) -> Promise> { @@ -533,13 +527,13 @@ public final class SnodeAPI : NSObject { return promise } - private static func sendMessageUnauthenticated(_ message: SnodeMessage) -> Promise> { + private static func sendMessageUnauthenticated(_ message: SnodeMessage, namespace: Int) -> Promise> { let (promise, seal) = Promise>.pending() let publicKey = Features.useTestnet ? message.recipient.removing05PrefixIfNeeded() : message.recipient Threading.workQueue.async { getTargetSnodes(for: publicKey).map2 { targetSnodes in var parameters = message.toJSON() - parameters["namespace"] = unauthenticatedNamespace + parameters["namespace"] = namespace return Set(targetSnodes.map { targetSnode in attempt(maxRetryCount: maxRetryCount, recoveringOn: Threading.workQueue) { invoke(.sendMessage, on: targetSnode, associatedWith: publicKey, parameters: parameters)