some ad fixes

This commit is contained in:
Mikhail Filimonov 2025-03-18 14:40:45 +04:00
parent f7b7fc151a
commit e6f9f2e2e6
2 changed files with 17 additions and 1 deletions

View File

@ -53,7 +53,7 @@ func _internal_searchAdPeers(account: Account, query: String) -> Signal<[AdPeer]
for peer in peers {
switch peer {
case let .sponsoredPeer(_, randomId, apiPeer, sponsorInfo, additionalInfo):
guard let peer = parsedPeers.peers[apiPeer.peerId] else {
guard let peer = parsedPeers.get(apiPeer.peerId) else {
continue
}
result.append(
@ -73,3 +73,15 @@ func _internal_searchAdPeers(account: Account, query: String) -> Signal<[AdPeer]
}
}
}
func _internal_markAsSeen(account: Account, opaqueId: Data) -> Signal<Never, NoError> {
let signal: Signal<Never, NoError> = account.network.request(Api.functions.messages.viewSponsoredMessage(randomId: Buffer(data: opaqueId)))
|> `catch` { _ -> Signal<Api.Bool, NoError> in
return .single(.boolFalse)
}
|> ignoreValues
return signal
}

View File

@ -1526,6 +1526,10 @@ public extension TelegramEngine {
return _internal_searchAdPeers(account: self.account, query: query)
}
public func markAsSeen(ad opaqueId: Data) -> Signal<Never, NoError> {
return _internal_markAsSeen(account: self.account, opaqueId: opaqueId)
}
public func isPremiumRequiredToContact(_ peerIds: [EnginePeer.Id]) -> Signal<[EnginePeer.Id: RequirementToContact], NoError> {
return _internal_updateIsPremiumRequiredToContact(account: self.account, peerIds: peerIds)
}