이 빠른 시작은 사용자가 카탈로그와 인벤토리 아이템에 이미 익숙하다고 가정합니다. 예제 플레이어는 거래하려는 인벤토리 아이템을 이미 소유하고 있어야 합니다.
OpenTrade API를 호출하는 것입니다. 선물 수신자를 식별하는 playfabId와 현재 인벤토리에 아이템이 있는 플레이어의 ItemInstanceID가 필요합니다.
secondPlayerId: 선물 수신자를 식별하는 고유 문자열입니다(PlayFabId).
myItemInstanceId: 현재 플레이어가 소유한 아이템 인스턴스를 식별하는 고유 문자열입니다(InstanceID).
모든 거래는 공개 정보입니다. 모든 플레이어는 다른 플레이어의 오픈 거래와 다른 플레이어의 거래 기록을 볼 수 있습니다(해당 플레이어의
playFabId를 알고 있는 경우).LogSuccess 콜백은 result.Trade.TradeId를 평가하고, firstPlayFabId와 tradeId를 두 번째 플레이어에게 모두 전송해야 합니다. 저장되지 않으면 두 번째 플레이어는 거래를 평가하거나 수락할 수 없습니다.
현재 미리 보기에서는 거래가 동시 작업으로부터 스레드로부터 안전하도록 해야 합니다. 스레드로부터 안전한 옵션에는 사용자 지정 게임 서버와 CloudScript를 통해 외부 데이터베이스/시스템으로의 Webhook 호출이 포함됩니다. 스레드로부터 안전하지 않은 옵션은 플레이어 데이터 키를 직접 수정하는 CloudScript로 구축할 수 있습니다. 후자의 옵션에는 동시 거래 목록 업데이트가 올바르게 처리되지 않을 수 있는 동시성 문제가 있습니다.
playFabId와 tradeId를 두 번째 플레이어에게 전송한 후, 두 번째 플레이어는 GetTradeStatus 요청을 통해 거래 요구 사항을 검토할 수 있습니다(선물인지 확인).
가장 관련 있는 TradeStatus 값은 Open, Filled, Canceled입니다. 다른 모든 상태는 중간 상태입니다. 거래는 호출 간에 상당한 시간 동안 이러한 중간 상태에 머무를 수 있습니다. 최근에 수정된 거래는 즉시 사용할 수 없을 수 있습니다.
AcceptGiftFrom 함수는 첫 번째 플레이어의 인벤토리에서 두 번째 플레이어에게 선물 아이템을 이전합니다.