금칙어 설정
콘솔에서 설정한 필터링 단어를 적용합니다.
콘솔 필터링 설정

- 콘솔 > 채팅 > 설정 으로 접속 합니다.
- 필터링에 필요한 단어를 추가합니다.
- 필터링 단어를 쉼표로 구분 하여야 합니다.
- 저장 버튼을 클릭 합니다.
메서드 정보
| 메서드 | 설명 |
|---|---|
| FetchFilterWords() | 서버에서 금칙어 목록을 가져옵니다 |
| Filter(const FString& Message, TCHAR Separator = TEXT('*')) | 메시지에 금칙어 필터를 적용합니다 |
파라미터
Filter 메서드
| 파라미터 | 타입 | 설명 |
|---|---|---|
| Message | FString | 필터링할 메시지 |
| Separator | TCHAR | 금칙어를 대체할 문자 (기본값: '*') |
코드 예제
void UMyGame::OnConnected()
{
UE_LOG(LogTemp, Log, TEXT("Chat Connected"));
// 연결 성공 시 금칙어 목록 가져오기
AChatManager::GetInstance()->FetchFilterWords();
AChatManager::GetInstance()->Subscribe(TEXT("CH01"));
}
void UMyGame::SendMessage(const FString& Channel, const FString& Message)
{
// 금칙어 필터 적용하여 메시지 전송
FString FilteredMsg = AChatManager::GetInstance()->Filter(Message);
AChatManager::GetInstance()->SendPublicMessage(Channel, FilteredMsg);
}
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);
}
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);
}
void UMyGame::OnNotifyMessage(const FChatUserInfo& Sender, const FString& Message)
{
FString FilteredMsg = AChatManager::GetInstance()->Filter(Message);
UE_LOG(LogTemp, Log, TEXT("[시스템] %s"), *FilteredMsg);
}