TPStashEvent.Record

public int Record(
    string method_name,
    params KeyValuePair<string, object>[] param_pairs
);

설명

TPStashEvent 클래스의 메소드명과 파라미터명을 직접 입력하는 메소드입니다.

다음은 Record 메소드에 Join 메소드와 파라미터를 넣은 예시 코드입니다.

예시
TPStashEvent myStashEvent = new TPStashEvent();
KeyValuePair<string, object>[] parameters = new KeyValuePair<string, object>[]
{
    new KeyValuePair<string, object>("player_uuid", "myPlayerID"),
};
myStashEvent.Record("Join", parameters);

호출이 성공한 경우 1이, 실패한 경우 -1이 반환됩니다. 호출에 실패할 경우 유니티 에디터 콘솔 TentuPlay debug mode에서 다음과 같은 메시지가 출력됩니다.

TPError||ERROR inserting table_name: exception_error_message

파라미터 저장소

파라미터 저장소는 Record 메소드를 사용할 때 특정 조건에서 TPStashEvent 클래스 메소드에서 가장 자주 사용되는 파라미터(즉, player_uuidcharacter_uuid)를 생략할 수 있는 기능입니다.

구체적으로 Record 메소드를 이용하여 LoginAsCharacter를 호출하면 player_uuidcharacter_uuid가 파라미터 저장소에 저장되며 이후 Join, LoginApp, 그리고 LoginAsCharacter를 제외한 모든 메소드에서 player_uuidcharacter_uuid 파라미터를 생략할 수 있습니다.

여기서 LoginAsCharacter 메소드가 다른 메소드(Join, LoginApp 제외)보다 먼저 호출되는 것이 중요하며 파라미터 저장소를 쓰더라도 Join, LoginApp, 그리고 LoginAsCharacter 메소드는 여전히 player_uuidcharacter_uuid 파라미터가 필요합니다.

  • 이 파라미터 저장소는 꼭 필요한 경우에만 사용하도록 하십시오. 왜냐하면 파라미터 저장소 값이 메모리에 존재하므로 자칫 예상치 못한 문제가 생길 수 있기 때문입니다.

  • player_uuidcharacter_uuid에 유효한 값이 설정되었는지 확인하십시오. 이 값이 유효하지 않거나 누락되면 데이터가 아예 수집되지 않거나 불완전하게 수집됩니다.

  • 파라미터 저장소에 저장되어있는 player_uuidcharacter_uuidPlayStage 메소드에도 공통으로 적용되지만, PlayStage에서는 character_uuid가 아닌 character_uuids를 받고 있으므로 캐릭터를 여럿 들고 들어가는 게임이라면 PlayStage를 호출할 때 파라미터 리스트에 character_uuids를 추가해야 합니다.

저장소의 값의 변경
  • 파라미터 저장소의 player_uuidcharacter_uuid를 변경하고 싶다면 LoginAsCharacter에서 player_uuidcharacter_uuid를 새로 지정하고 호출해주어야합니다. 이 때 기존값은 새로운 값으로 대체됩니다.

  • player_uuidcharacter_uuid의 두 값은 별개로 지정하거나 수정할 수 없습니다.

  • 파라미터 저장소에 값이 있는 상태에서 어떤 메소드(LoginAsCharacter 제외)의 player_uuidcharacter_uuid의 값을 새로 지정하면 그 지정된 값이 파라미터 값으로 들어가지만 파라미터 저장소의 값에는 영향을 주지 않습니다.

파라미터

이름 설명 필수 여부

method_name

TPStashEvent 클래스 내의 메소드 명

메소드명은 대소문자를 구분하지 않습니다.

필수

param_pairs

키-값 쌍으로 이루어진 파라미터 변수

  • 필수 파라미터가 없는 경우 Record 메소드는 에러(-1)를 리턴합니다.

  • 옵션 파라미터는 선택 사항이나 유효하지 않은 값이 지정되면 에러(-1)를 리턴합니다.

Key는 TPStashEvent 클래스 내 메소드의 파라미터의 이름입니다.

  • 이름은 대소문자를 구분하지 않습니다.

  • param_pairs에 같은 Key를 중복해서 사용할 경우 배열의 순서에 따라 덮어쓰게됩니다.

  • 파라미터가 필수인 경우에만 Key가 필수입니다.

Value는 파라미터의 값입니다.

  • 데이터 타입은 파라미터의 데이터 타입이거나 string입니다.

  • 파라미터가 필수라면 값이 null이 되면 안됩니다.

데이터 타입
이름 설명

String array

빈 배열이 아닌 문자열 배열(string array). 콤마(,)로 구분되기도 함

Enum

각 파라미터의 정해진 열거형으로 상수의 이름, 숫자형 타입, 혹은 숫자 값의 문자열으로 표현됨. 그 외에는 에러를 반환합니다.

필수