feat(user-creator-chat): 미접속 채팅 푸시 deep link를 적용한다

This commit is contained in:
2026-06-19 03:57:25 +09:00
parent 7f13cccde0
commit 8b80ca6344
2 changed files with 14 additions and 13 deletions

View File

@@ -4,6 +4,7 @@ import com.amazonaws.services.s3.model.ObjectMetadata
import com.fasterxml.jackson.databind.ObjectMapper import com.fasterxml.jackson.databind.ObjectMapper
import kr.co.vividnext.sodalive.aws.s3.S3Uploader import kr.co.vividnext.sodalive.aws.s3.S3Uploader
import kr.co.vividnext.sodalive.common.SodaException import kr.co.vividnext.sodalive.common.SodaException
import kr.co.vividnext.sodalive.fcm.FcmDeepLinkValue
import kr.co.vividnext.sodalive.fcm.FcmEvent import kr.co.vividnext.sodalive.fcm.FcmEvent
import kr.co.vividnext.sodalive.fcm.FcmEventType import kr.co.vividnext.sodalive.fcm.FcmEventType
import kr.co.vividnext.sodalive.fcm.notification.PushNotificationCategory import kr.co.vividnext.sodalive.fcm.notification.PushNotificationCategory
@@ -223,9 +224,8 @@ class UserCreatorChatService(
senderMemberId = sender.id, senderMemberId = sender.id,
args = listOf(sender.nickname), args = listOf(sender.nickname),
recipients = listOf(opponent.id!!), recipients = listOf(opponent.id!!),
roomId = message.chatRoom.id, deepLinkValue = FcmDeepLinkValue.CHAT,
messageId = message.id, deepLinkId = message.chatRoom.id
chatType = USER_CREATOR_CHAT_TYPE
) )
) )
} }
@@ -287,8 +287,4 @@ class UserCreatorChatService(
val senderParticipant: UserCreatorChatParticipant, val senderParticipant: UserCreatorChatParticipant,
val opponentParticipant: UserCreatorChatParticipant val opponentParticipant: UserCreatorChatParticipant
) )
companion object {
private const val USER_CREATOR_CHAT_TYPE = "USER_CREATOR"
}
} }

View File

@@ -3,6 +3,7 @@ package kr.co.vividnext.sodalive.v2.usercreatorchat
import com.amazonaws.services.s3.model.ObjectMetadata import com.amazonaws.services.s3.model.ObjectMetadata
import com.fasterxml.jackson.databind.ObjectMapper import com.fasterxml.jackson.databind.ObjectMapper
import kr.co.vividnext.sodalive.aws.s3.S3Uploader import kr.co.vividnext.sodalive.aws.s3.S3Uploader
import kr.co.vividnext.sodalive.fcm.FcmDeepLinkValue
import kr.co.vividnext.sodalive.fcm.FcmEvent import kr.co.vividnext.sodalive.fcm.FcmEvent
import kr.co.vividnext.sodalive.fcm.FcmEventType import kr.co.vividnext.sodalive.fcm.FcmEventType
import kr.co.vividnext.sodalive.member.Member import kr.co.vividnext.sodalive.member.Member
@@ -195,9 +196,11 @@ class UserCreatorChatServiceTest {
Mockito.verify(eventPublisher).publishEvent(eventCaptor.capture()) Mockito.verify(eventPublisher).publishEvent(eventCaptor.capture())
assertEquals(FcmEventType.INDIVIDUAL, eventCaptor.value.type) assertEquals(FcmEventType.INDIVIDUAL, eventCaptor.value.type)
assertEquals(listOf(2L), eventCaptor.value.recipients) assertEquals(listOf(2L), eventCaptor.value.recipients)
assertEquals(10L, eventCaptor.value.roomId) assertEquals(null, eventCaptor.value.roomId)
assertEquals(204L, eventCaptor.value.messageId) assertEquals(null, eventCaptor.value.messageId)
assertEquals("USER_CREATOR", eventCaptor.value.chatType) assertEquals(null, eventCaptor.value.chatType)
assertEquals(FcmDeepLinkValue.CHAT, eventCaptor.value.deepLinkValue)
assertEquals(10L, eventCaptor.value.deepLinkId)
Mockito.verifyNoInteractions(roomMessageBroker) Mockito.verifyNoInteractions(roomMessageBroker)
} }
@@ -255,9 +258,11 @@ class UserCreatorChatServiceTest {
Mockito.verify(eventPublisher).publishEvent(eventCaptor.capture()) Mockito.verify(eventPublisher).publishEvent(eventCaptor.capture())
assertEquals(FcmEventType.INDIVIDUAL, eventCaptor.value.type) assertEquals(FcmEventType.INDIVIDUAL, eventCaptor.value.type)
assertEquals(listOf(2L), eventCaptor.value.recipients) assertEquals(listOf(2L), eventCaptor.value.recipients)
assertEquals(10L, eventCaptor.value.roomId) assertEquals(null, eventCaptor.value.roomId)
assertEquals(206L, eventCaptor.value.messageId) assertEquals(null, eventCaptor.value.messageId)
assertEquals("USER_CREATOR", eventCaptor.value.chatType) assertEquals(null, eventCaptor.value.chatType)
assertEquals(FcmDeepLinkValue.CHAT, eventCaptor.value.deepLinkValue)
assertEquals(10L, eventCaptor.value.deepLinkId)
Mockito.verifyNoInteractions(roomMessageBroker) Mockito.verifyNoInteractions(roomMessageBroker)
} }