敏感词设置
应用在控制台中设置的过滤词。
控制台过滤设置

- 控制台 > 聊天 > 设置 为访问 。
- 添加需要过滤的词汇。
- 过滤词汇需要用逗号分隔。
- 点击保存按钮。
方法 信息
| 方法 | 说明 |
|---|---|
| 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);
}