메시지 전송
채널에 메시지를 전송합니다.
공개 메시지 전송
특정 채널에 메시지를 전송합니다. 전송된 메시지는 해당 채널의 모든 구독자에게 전달됩니다.
메서드 정보
| 항목 | 내용 |
|---|---|
| 메서드 | AChatManager::GetInstance()->SendPublicMessage(const FString& Channel, const FString& Text) |
| 콜백 | OnPublicMessage(const FChatUserInfo& Sender, const FString& Message) - 메시지 수신 시 호출 |
파라미터
| 파라미터 | 타입 | 설명 |
|---|---|---|
| Channel | FString | 메시지를 전송할 채널 이름 |
| Text | FString | 전송할 메시지 내용 |
코드 예제
void UMyGame::SendPublicMessage(const FString& Channel, const FString& Message)
{
AChatManager::GetInstance()->SendPublicMessage(Channel, Message);
}
void UMyGame::OnPublicMessage(const FChatUserInfo& Sender, const FString& Message)
{
// 수신한 메시지에 금칙어 필터 적용
FString FilteredMsg = AChatManager::GetInstance()->Filter(Message);
UE_LOG(LogTemp, Log, TEXT("[%s] %s"), *Sender.visitorName, *FilteredMsg);
}
비공개 메시지 전송 (귓속말)
특정 사용자에게만 메시지를 전송합니다.
메서드 정보
| 항목 | 내용 |
|---|---|
| 메서드 | AChatManager::GetInstance()->SendPrivateMessage(const FString& TargetUserId, const FString& Text) |
| 콜백 | OnPrivateMessage(const FChatUserInfo& Sender, const FString& Message) - 메시지 수신 시 호출 |
파라미터
| 파라미터 | 타입 | 설명 |
|---|---|---|
| TargetUserId | FString | 메시지를 받을 사용자 ID |
| Text | FString | 전송할 메시지 내용 |
코드 예제
void UMyGame::SendPrivateMessage(const FString& TargetUserId, const FString& Message)
{
AChatManager::GetInstance()->SendPrivateMessage(TargetUserId, Message);
}
void UMyGame::OnPrivateMessage(const FChatUserInfo& Sender, const FString& Message)
{
// 수신한 귓속말에 금칙어 필터 적용
FString FilteredMsg = AChatManager::GetInstance()->Filter(Message);
UE_LOG(LogTemp, Log, TEXT("[귓속말 from %s] %s"), *Sender.visitorName, *FilteredMsg);
}