mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-17 17:28:26 +00:00
Handle incoming messages from our other devices in public chats.
This commit is contained in:
parent
55ea9869a8
commit
848cab8677
@ -25,6 +25,8 @@ import org.whispersystems.signalservice.api.push.SignalServiceAddress
|
|||||||
import org.whispersystems.signalservice.loki.api.LokiPublicChat
|
import org.whispersystems.signalservice.loki.api.LokiPublicChat
|
||||||
import org.whispersystems.signalservice.loki.api.LokiPublicChatAPI
|
import org.whispersystems.signalservice.loki.api.LokiPublicChatAPI
|
||||||
import org.whispersystems.signalservice.loki.api.LokiPublicChatMessage
|
import org.whispersystems.signalservice.loki.api.LokiPublicChatMessage
|
||||||
|
import org.whispersystems.signalservice.loki.api.LokiStorageAPI
|
||||||
|
import org.whispersystems.signalservice.loki.utilities.get
|
||||||
import org.whispersystems.signalservice.loki.utilities.successBackground
|
import org.whispersystems.signalservice.loki.utilities.successBackground
|
||||||
|
|
||||||
class LokiPublicChatPoller(private val context: Context, private val group: LokiPublicChat) {
|
class LokiPublicChatPoller(private val context: Context, private val group: LokiPublicChat) {
|
||||||
@ -199,12 +201,15 @@ class LokiPublicChatPoller(private val context: Context, private val group: Loki
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
api.getMessages(group.channel, group.server).successBackground { messages ->
|
api.getMessages(group.channel, group.server).successBackground { messages ->
|
||||||
// Process messages in the background
|
if (messages.isNotEmpty()) {
|
||||||
messages.forEach { message ->
|
val ourDevices = LokiStorageAPI.shared.getAllDevicePublicKeys(userHexEncodedPublicKey).get(setOf())
|
||||||
if (message.hexEncodedPublicKey != userHexEncodedPublicKey) {
|
// Process messages in the background
|
||||||
processIncomingMessage(message)
|
messages.forEach { message ->
|
||||||
} else {
|
if (ourDevices.contains(message.hexEncodedPublicKey)) {
|
||||||
processOutgoingMessage(message)
|
processOutgoingMessage(message)
|
||||||
|
} else {
|
||||||
|
processIncomingMessage(message)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}.fail {
|
}.fail {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user