본문으로 건너뛰기

금칙어 설정

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

콘솔 필터링 설정

필터링 설정

  1. 콘솔 > 채팅 > 설정 으로 접속 합니다.
  2. 필터링에 필요한 단어를 추가합니다.
  3. 필터링 단어를 쉼표로 구분 하여야 합니다.
  4. 저장 버튼을 클릭 합니다.

메서드 정보

메서드설명
FetchFilterWords()서버에서 금칙어 목록을 가져옵니다
Filter(const FString& Message, TCHAR Separator = TEXT('*'))메시지에 금칙어 필터를 적용합니다

파라미터

Filter 메서드

파라미터타입설명
MessageFString필터링할 메시지
SeparatorTCHAR금칙어를 대체할 문자 (기본값: '*')

코드 예제

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);
}