본문으로 건너뛰기

메시지 수신 설정

푸시 메시지의 수신 설정을 변경합니다.

URL 확인

이 API는 service-api.playnanoo.com 도메인을 사용합니다.

API 정보

  • URL: https://service-api.playnanoo.com/push/v20220701/change
  • Method: PUT
  • 인증 필요: 예

요청 파라미터

파라미터타입필수설명
receive_ynstring필수푸시 메시지 수신 여부 ("Y" 또는 "N")
receive_night_ynstring필수야간 푸시 메시지 수신 여부 ("Y" 또는 "N")
야간 푸시

야간 푸시는 오후 09시부터 다음날 오전 08시까지의 푸시 메시지를 의미합니다.

응답 데이터

필드타입설명
Statusstring처리 결과 상태

코드 예제

void UMyGame::ChangePushSettings(bool bReceive, bool bReceiveNight)
{
// 플레이어 정보가 포함된 요청 바디 생성
TSharedPtr<FJsonObject> Body = FPlayNANOOHelper::CreateRequestBody();
Body->SetStringField(TEXT("receive_yn"), bReceive ? TEXT("Y") : TEXT("N"));
Body->SetStringField(TEXT("receive_night_yn"), bReceiveNight ? TEXT("Y") : TEXT("N"));

// JSON 문자열 변환
FString JsonBody = FPlayNANOOHelper::ToJsonString(Body);

// HTTP 요청
TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();
Request->SetURL(TEXT("https://service-api.playnanoo.com/push/v20220701/change"));
Request->SetVerb(TEXT("PUT"));
FPlayNANOOHelper::SetCommonHeaders(Request, true); // 인증 토큰 포함
Request->SetContentAsString(JsonBody);

Request->OnProcessRequestComplete().BindLambda(
[](FHttpRequestPtr Req, FHttpResponsePtr Res, bool bSuccess)
{
if (bSuccess && Res.IsValid())
{
TSharedPtr<FJsonObject> JsonObject;
TSharedRef<TJsonReader<>> Reader = TJsonReaderFactory<>::Create(Res->GetContentAsString());

if (FJsonSerializer::Deserialize(Reader, JsonObject))
{
FString Status = JsonObject->GetStringField(TEXT("Status"));
UE_LOG(LogTemp, Log, TEXT("푸시 설정 변경 성공: %s"), *Status);
}
}
});

Request->ProcessRequest();
}
실시간 설정 반영

이 API를 통해 변경된 설정은 즉시 서버에 반영되며, 다음 푸시 발송부터 적용됩니다.

토큰 유지

설정 변경은 토큰을 삭제하지 않고 수신 여부만 변경합니다. 토큰은 서버에 계속 유지됩니다.

사용자 경험

푸시 알림 설정 UI를 제공하여 사용자가 원하는 대로 알림을 제어할 수 있게 하는 것이 좋습니다.