@@ -17,6 +17,7 @@ import org.xmtp.android.library.messages.DecryptedMessage
17
17
import org.xmtp.android.library.messages.Envelope
18
18
import org.xmtp.android.library.messages.EnvelopeBuilder
19
19
import org.xmtp.android.library.messages.InvitationV1
20
+ import org.xmtp.android.library.messages.MessageKind
20
21
import org.xmtp.android.library.messages.MessageV1Builder
21
22
import org.xmtp.android.library.messages.Pagination
22
23
import org.xmtp.android.library.messages.SealedInvitation
@@ -46,6 +47,7 @@ import uniffi.xmtpv3.FfiListConversationsOptions
46
47
import uniffi.xmtpv3.FfiMessage
47
48
import uniffi.xmtpv3.FfiMessageCallback
48
49
import uniffi.xmtpv3.GroupPermissions
50
+ import uniffi.xmtpv3.org.xmtp.android.library.codecs.ContentTypeGroupMembershipChange
49
51
import java.util.Date
50
52
import kotlin.time.Duration.Companion.nanoseconds
51
53
import kotlin.time.DurationUnit
@@ -576,7 +578,10 @@ data class Conversations(
576
578
fun streamAllGroupMessages (): Flow <DecodedMessage > = callbackFlow {
577
579
val messageCallback = object : FfiMessageCallback {
578
580
override fun onMessage (message : FfiMessage ) {
579
- trySend(MessageV3 (client, message).decode())
581
+ val decodedMessage = MessageV3 (client, message).decode()
582
+ if (! (decodedMessage.encodedContent.type == ContentTypeGroupMembershipChange && decodedMessage.kind != MessageKind .MEMBERSHIP_CHANGE )) {
583
+ trySend(decodedMessage)
584
+ }
580
585
}
581
586
}
582
587
val stream = libXMTPConversations?.streamAllMessages(messageCallback)
@@ -587,7 +592,10 @@ data class Conversations(
587
592
fun streamAllGroupDecryptedMessages (): Flow <DecryptedMessage > = callbackFlow {
588
593
val messageCallback = object : FfiMessageCallback {
589
594
override fun onMessage (message : FfiMessage ) {
590
- trySend(MessageV3 (client, message).decrypt())
595
+ val decryptedMessage = MessageV3 (client, message).decrypt()
596
+ if (! (decryptedMessage.encodedContent.type == ContentTypeGroupMembershipChange && decryptedMessage.kind != MessageKind .MEMBERSHIP_CHANGE )) {
597
+ trySend(decryptedMessage)
598
+ }
591
599
}
592
600
}
593
601
val stream = libXMTPConversations?.streamAllMessages(messageCallback)
0 commit comments