diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Peers/CreateGroup.swift b/submodules/TelegramCore/Sources/TelegramEngine/Peers/CreateGroup.swift index ad316f9740..17ab901a4f 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Peers/CreateGroup.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Peers/CreateGroup.swift @@ -13,7 +13,7 @@ public enum CreateGroupError { case serverProvided(String) } -func _internal_createGroup(account: Account, title: String, peerIds: [PeerId]) -> Signal { +func _internal_createGroup(account: Account, title: String, peerIds: [PeerId], ttlPeriod: Int32?) -> Signal { return account.postbox.transaction { transaction -> Signal in var inputUsers: [Api.InputUser] = [] for peerId in peerIds { @@ -23,7 +23,13 @@ func _internal_createGroup(account: Account, title: String, peerIds: [PeerId]) - return .single(nil) } } - return account.network.request(Api.functions.messages.createChat(flags: 0, users: inputUsers, title: title, ttlPeriod: nil)) + + var flags: Int32 = 0 + if let _ = ttlPeriod { + flags |= 1 << 0 + } + + return account.network.request(Api.functions.messages.createChat(flags: flags, users: inputUsers, title: title, ttlPeriod: ttlPeriod)) |> mapError { error -> CreateGroupError in if error.errorDescription == "USERS_TOO_FEW" { return .privacy diff --git a/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift b/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift index adf154a3d7..3a56c20cbe 100644 --- a/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift +++ b/submodules/TelegramCore/Sources/TelegramEngine/Peers/TelegramEnginePeers.swift @@ -137,8 +137,8 @@ public extension TelegramEngine { return _internal_convertGroupToSupergroup(account: self.account, peerId: peerId) } - public func createGroup(title: String, peerIds: [PeerId]) -> Signal { - return _internal_createGroup(account: self.account, title: title, peerIds: peerIds) + public func createGroup(title: String, peerIds: [PeerId], ttlPeriod: Int32?) -> Signal { + return _internal_createGroup(account: self.account, title: title, peerIds: peerIds, ttlPeriod: ttlPeriod) } public func createSecretChat(peerId: PeerId) -> Signal {