본문으로 건너뛰기

특정 플레이어에게 아이템 전송

우편함으로 특정 플레이어에게 아이템을 전송합니다.

URL 확인

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

API 정보

  • URL: https://service-api.playnanoo.com/inbox/v20220901/send/player
  • Method: PUT
  • 인증 필요: 예

요청 파라미터

파라미터타입필수설명
table_codestring필수테이블 코드
itemsarray필수전송할 아이템 배열
periodnumber필수유효 기간 (초 단위)
player_idstring필수수신자 플레이어 ID

응답 데이터

Res 클래스

필드타입설명
statusFString처리 상태

코드 예제

void UMyGame::SendInboxItemToPlayer(const FString& TableCode, const FString& PlayerId, int32 Period)
{
// items 배열 생성
TArray<TSharedPtr<FJsonValue>> ItemsArray;

TSharedPtr<FJsonObject> Item = MakeShareable(new FJsonObject());
Item->SetStringField(TEXT("item_code"), TEXT("ITEM_001"));
Item->SetNumberField(TEXT("item_count"), 1);
ItemsArray.Add(MakeShareable(new FJsonValueObject(Item)));

// 플레이어 정보가 포함된 요청 바디 생성
TSharedPtr<FJsonObject> Body = FPlayNANOOHelper::CreateRequestBody();
Body->SetStringField(TEXT("table_code"), TableCode);
Body->SetArrayField(TEXT("items"), ItemsArray);
Body->SetNumberField(TEXT("period"), Period);
Body->SetStringField(TEXT("player_id"), PlayerId);

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

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

Request->OnProcessRequestComplete().BindLambda(
[](FHttpRequestPtr Req, FHttpResponsePtr Res, bool bSuccess)
{
if (bSuccess && Res.IsValid())
{
UE_LOG(LogTemp, Log, TEXT("특정 플레이어에게 우편함 아이템 전송 성공"));
}
});

Request->ProcessRequest();
}
플레이어 ID

player_id는 수신자의 고유 플레이어 ID입니다.