diff --git a/app/src/main/java/com/vitorpamplona/amethyst/service/relays/Relay.kt b/app/src/main/java/com/vitorpamplona/amethyst/service/relays/Relay.kt index 004b8a58a..002016ec4 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/service/relays/Relay.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/service/relays/Relay.kt @@ -353,9 +353,14 @@ class Relay( if (read) { if (isConnected()) { if (isReady) { - if (filters.isNotEmpty()) { + val relayFilters = + filters.filter { filter -> + activeTypes.any { it in filter.types } + } + + if (relayFilters.isNotEmpty()) { val request = - filters.joinToStringLimited( + relayFilters.joinToStringLimited( separator = ",", limit = 20, prefix = """["REQ","$requestId",""", @@ -423,12 +428,7 @@ class Relay( fun renewFilters() { // Force update all filters after AUTH. Client.allSubscriptions().forEach { - val filters = - it.value.filter { filter -> - activeTypes.any { it in filter.types } - } - - sendFilter(requestId = it.key, filters) + sendFilter(requestId = it.key, it.value) } } diff --git a/app/src/main/java/com/vitorpamplona/amethyst/service/relays/RelayPool.kt b/app/src/main/java/com/vitorpamplona/amethyst/service/relays/RelayPool.kt index af4e8b2c5..2e717f6b5 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/service/relays/RelayPool.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/service/relays/RelayPool.kt @@ -81,7 +81,9 @@ object RelayPool : Relay.Listener { subscriptionId: String, filters: List, ) { - relays.forEach { it.sendFilter(subscriptionId, filters) } + relays.forEach { relay -> + relay.sendFilter(subscriptionId, filters) + } } fun connectAndSendFiltersIfDisconnected() {