Set receipt for synced messages
This commit is contained in:
@@ -23,5 +23,5 @@ interface ChatMessageDao {
|
||||
fun getChatMessagesByGiftWrapPayloadId(giftWrapPayloadId: Long): ChatMessage?
|
||||
|
||||
@Upsert
|
||||
suspend fun upsert(chatMessage: ChatMessage)
|
||||
suspend fun upsert(chatMessage: ChatMessage): Long
|
||||
}
|
||||
@@ -2,8 +2,10 @@ package ac.cord.auxiliary.compose.database.dao
|
||||
|
||||
import ac.cord.auxiliary.compose.database.AuxDatabase
|
||||
import ac.cord.auxiliary.compose.database.GENESIS_AT
|
||||
import ac.cord.auxiliary.compose.database.model.BroadcastNostrEventReceipt
|
||||
import ac.cord.auxiliary.compose.database.model.BroadcastNostrEventRequest
|
||||
import ac.cord.auxiliary.compose.database.model.ChatMessage
|
||||
import ac.cord.auxiliary.compose.database.model.ChatMessageBroadcastNostrEventReceiptRelation
|
||||
import ac.cord.auxiliary.compose.database.model.ChatRoom
|
||||
import ac.cord.auxiliary.compose.database.model.Connection
|
||||
import ac.cord.auxiliary.compose.database.model.Mention
|
||||
@@ -722,7 +724,7 @@ abstract class NostrDao(
|
||||
}
|
||||
}
|
||||
|
||||
database.chatMessageDao().upsert(
|
||||
val chatMessageId = database.chatMessageDao().upsert(
|
||||
ChatMessage(
|
||||
giftWrapPayloadId = giftWrapPayload.id,
|
||||
senderPublicKey = giftWrapPayload.publicKey,
|
||||
@@ -732,6 +734,22 @@ abstract class NostrDao(
|
||||
content = giftWrapPayload.content,
|
||||
)
|
||||
)
|
||||
|
||||
val broadcastNostrEventReceiptId = database.broadcastNostrEventReceiptDao().upsert(
|
||||
BroadcastNostrEventReceipt(
|
||||
nostrEventId = nostrEvent.id,
|
||||
isAccepted = true,
|
||||
isSync = true,
|
||||
relayURL = relayURL
|
||||
)
|
||||
)
|
||||
|
||||
database.chatMessageBroadcastNostrEventReceiptRelationDao().upsert(
|
||||
ChatMessageBroadcastNostrEventReceiptRelation(
|
||||
broadcastNostrEventReceiptId = broadcastNostrEventReceiptId,
|
||||
chatMessageId = chatMessageId
|
||||
)
|
||||
)
|
||||
} else {
|
||||
logger.w("Failed to setup chatRoom for message")
|
||||
}
|
||||
|
||||
@@ -34,6 +34,7 @@ data class BroadcastNostrEventReceipt(
|
||||
override val nostrEventId: HexKey,
|
||||
override val unsignedNostrEventId: Long? = null,
|
||||
val isAccepted: Boolean,
|
||||
val isSync: Boolean = false,
|
||||
val relayURL: String,
|
||||
val messages: String? = null
|
||||
): NostrEventEntity, UnsignedNostrEventEntity
|
||||
Reference in New Issue
Block a user