이벤트

DFINERY SDK를 사용하여 사용자 이벤트를 기록하는 방법입니다. SDK 연동이 선행되어야 합니다.

시작하기 전에

이벤트 연동하기 전에 DFINERY 콘솔에서 이벤트 등록이 필요합니다. 이벤트 등록은 콘솔의 부가 설정 > 데이터 연동 > 이벤트 관리 > 이벤트 목록 페이지로 이동 후 이벤트 생성 버튼을 눌러 표준 & 커스텀 이벤트를 생성할 수 있습니다.

이벤트 기록

logEvent 메소드를 사용하여 유저의 이벤트를 기록합니다. 표준 이벤트는 상수를 제공합니다.

logEvent(eventName);

logEvent(eventName, properties);

각각의 매개변수는 다음을 의미합니다.

  • eventName : 이벤트 이름

  • properties : 이벤트 속성

이벤트 기록 예시

// 이벤트만 기록할 경우 ex) 상수 사용시
Dfinery.logEvent(DFEvent.LOGIN);

// 또는 이벤트 속성명을 직접 입력해도 됩니다.
Dfinery.logEvent("df_login");

// 이벤트 속성과 함께 기록할 경우 ex) 회원가입
const properties = {};
properties[DFEventProperty.SIGN_CHANNEL] = "Kakao";
Dfinery.logEvent(DFEvent.SIGN_UP, properties);

표준 이벤트 & 상품 속성

표준 이벤트와 표준 이벤트 속성, 상품 속성은 아래와 같습니다. 이벤트 이름으로도 사용가능합니다.

표준 이벤트

표준 이벤트 이름은 다음과 같이 사전 정의된 정적 상수로 제공됩니다.

상수
이벤트명
표기명

DFEvent.LOGIN

df_login

로그인

DFEvent.LOGOUT

df_logout

로그아웃

DFEvent.SIGN_UP

df_sign_up

회원가입

DFEvent.PURCHASE

df_purchase

구매

DFEvent.VIEW_HOME

df_view_home

홈 화면 조회

DFEvent.VIEW_PRODUCT_DETAILS

df_view_product_details

상품 상세보기

DFEvent.ADD_TO_CART

df_add_to_cart

장바구니 담기

DFEvent.ADD_TO_WISHLIST

df_add_to_wishlist

관심상품 추가

DFEvent.REFUND

df_refund

주문취소하기

DFEvent.VIEW_SEARCH_RESULT

df_view_search_result

상품 검색하기

DFEvent.SHARE_PRODUCT

df_share_product

상품 공유하기

DFEvent.VIEW_LIST

df_view_list

상품 목록 조회

DFEvent.VIEW_CART

df_view_cart

장바구니 조회

DFEvent.ADD_PAYMENT_INFO

df_add_payment_info

구매 정보 입력

DFEvent.REMOVE_CART

df_remove_cart

장바구니 삭제

표준 이벤트 속성

표준 이벤트의 속성 명의 경우 다음과 같이 이벤트 속성 명이 사전 정의된 정적 상수로 제공됩니다.

상수
이벤트 속성명
표기명

DFEventProperty.ITEMS

df_items

상품

DFEventProperty.TOTAL_REFUND_AMOUNT

df_total_refund_amount

환불(취소) 총액

DFEventProperty.ORDER_ID

df_order_id

주문 번호(ID)

DFEventProperty.DELIVERY_CHARGE

df_delivery_charge

배송료

DFEventProperty.PAYMENT_METHOD

df_payment_method

결제 방법

DFEventProperty.TOTAL_PURCHASE_AMOUNT

df_total_purchase_amount

주문 총액

DFEventProperty.SHARING_CHANNEL

df_sharing_channel

상품공유 채널

DFEventProperty.SIGN_CHANNEL

df_sign_channel

상품 할인가

DFEventProperty.KEYWORD

df_keyword

검색 키워드

상품 속성

DFEventProperty.ITEMS 내에 배열로 적재되는 상품에 대한 기 정의된 속성 값에 대한 정보입니다. ITEM_ID, ITEM_NAME, ITEM_PRICE, ITEM_QUANTITY, ITEM_DISCOUNT는 필수 값으로 반드시 포함해야 합니다.

상수
이벤트 속성명
타입
설명
필수

DFEventProperty.ITEM_ID

df_item_id

String

상품 번호(ID)

DFEventProperty.ITEM_NAME

df_item_name

String

상품 명

DFEventProperty.ITEM_PRICE

df_price

Number

상품 단가

DFEventProperty.ITEM_QUANTITY

df_quantity

Number

상품 수량

DFEventProperty.ITEM_DISCOUNT

df_discount

Number

상품 할인가

DFEventProperty.ITEM_CATEGORY1

df_category1

String

상품 카테고리1

DFEventProperty.ITEM_CATEGORY2

df_category2

String

상품 카테고리2

DFEventProperty.ITEM_CATEGORY3

df_category3

String

상품 카테고리3

DFEventProperty.ITEM_CATEGORY4

df_category4

String

상품 카테고리4

DFEventProperty.ITEM_CATEGORY5

df_category5

String

상품 카테고리5

표준 이벤트 사용 예시

로그인

유저가 로그인하는 동작을 나타내는 이벤트입니다. 로그인 이벤트를 호출하기 전에 유저의 Identity를 설정하면 해당 유저의 Login이벤트로 측정할 수 있습니다. 비동기(async) 함수내에서 setIdentity 함수 실행 후에 logEvent 함수가 호출되어야 합니다.

async function DfineryLogin() {
  // 유저 식별 정보 설정
  await Dfinery.setIdentity(DFIdentity.EXTERNAL_ID, "TestUserId");
  // 로그인 이벤트
  Dfinery.logEvent(DFEvent.LOGIN);
}

로그아웃

유저가 로그아웃하는 동작을 나타내는 이벤트입니다.

Dfinery.logEvent(DFEvent.LOGOUT);

회원가입

유저가 회원으로 가입하는 동작을 나타내는 이벤트입니다.

const properties = {};
properties[DFEventProperty.SIGN_CHANNEL] = "Kakao";
Dfinery.logEvent(DFEvent.SIGN_UP, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.SIGN_CHANNEL

String

회원가입 채널

구매

유저가 상품이나 서비스를 구매하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 6;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
properties[DFEventProperty.PAYMENT_METHOD] = "BankTransfer";
properties[DFEventProperty.ORDER_ID] = "Order-123";
properties[DFEventProperty.TOTAL_PURCHASE_AMOUNT] = 30000;
properties[DFEventProperty.DELIVERY_CHARGE] = 2500;
properties[DFEventProperty.DISCOUNT] = 3000;

Dfinery.logEvent(DFEvent.PURCHASE, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

DFEventProperty.ORDER_ID

String

주문 번호(ID)

DFEventProperty.PAYMENT_METHOD

String

결제 방법

DFEventProperty.TOTAL_PURCHASE_AMOUNT

NUMBER

주문 총액

DFEventProperty.DELIVERY_CHARGE

NUMBER

배송료

DFEventProperty.DISCOUNT

NUMBER

상품할인가

홈 화면 조회

유저가 앱의 홈 화면을 조회하는 동작을 나타내는 이벤트입니다.

const properties = {};
properties["key"] = "value"; //사용자 정의 속성 값(Optional)
Dfinery.logEvent(DFEvent.VIEW_HOME, properties);

상품 상세 보기

유저가 특정 상품의 상세 정보를 조회하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
Dfinery.logEvent(DFEvent.VIEW_PRODUCT_DETAILS, properties);

장바구니 담기

유저가 상품을 장바구니에 담는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
Dfinery.logEvent(DFEvent.ADD_TO_CART, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

관심 상품 추가

유저가 상품을 관심 목록에 추가하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
Dfinery.logEvent(DFEvent.ADD_TO_WISHLIST, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

주문 취소하기

유저가 구매한 주문을 취소하고 환불하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
Dfinery.logEvent(DFEvent.REFUND, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

DFEventProperty.TOTAL_REFUND_AMOUNT

NUMBER

환불 총액

상품 검색하기

유저가 상품을 검색하여 결과를 확인하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 16000;
item[DFEventProperty.ITEM_DISCOUNT] = 700;
item[DFEventProperty.ITEM_QUANTITY] = 10;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
properties[DFEventProperty.KEYWORD] = "사또밥";

Dfinery.logEvent(DFEvent.VIEW_SEARCH_RESULT, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

DFEventProperty.KEYWORD

String

검색 키워드

상품 공유하기

유저가 상품을 공유하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
properties[DFEventProperty.SHARING_CHANNEL] = "Facebook";

Dfinery.logEvent(DFEvent.SHARE_PRODUCT, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

DFEventProperty.SHARING_CHANNEL

String

상품 공유 채널

상품 목록 조회

유저가 상품 목록을 조회하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;

Dfinery.logEvent(DFEvent.VIEW_LIST, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

장바구니 조회

유저가 장바구니를 조회하는 동작을 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);
//itemList.push(item2); 아이템이 2개 이상인경우 추가로 입력

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;

Dfinery.logEvent(DFEvent.VIEW_CART, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

구매 정보 입력

유저가 구매 정보를 입력하는 동작을 나타내는 이벤트입니다.

const properties = {};
properties["key"] = "value"; //사용자 정의 속성 값(Optional)
Dfinery.logEvent(DFEvent.ADD_PAYMENT_INFO, properties);

장바구니 삭제

유저가 장바구니에 담긴 상품을 제거하는 나타내는 이벤트입니다.

const item = {};
item[DFEventProperty.ITEM_ID] = "상품번호";
item[DFEventProperty.ITEM_NAME] = "상품이름";
item[DFEventProperty.ITEM_PRICE] = 5000;
item[DFEventProperty.ITEM_DISCOUNT] = 500;
item[DFEventProperty.ITEM_QUANTITY] = 5;
item[DFEventProperty.ITEM_CATEGORY1] = "식품";
item[DFEventProperty.ITEM_CATEGORY2] = "과자";

const itemList = [];
itemList.push(item);

const properties = {};
properties[DFEventProperty.ITEMS] = itemList;
Dfinery.logEvent(DFEvent.REMOVE_CART, properties);

표준 이벤트 속성

이름
타입
설명
필수

DFEventProperty.ITEMS

Array

커스텀 이벤트

사용자가 직접 임의의 이벤트 명칭과 속성을 입력하여 반영하는 이벤트입니다. 표준 이벤트에도 디파이너리 콘솔에서 커스텀 속성을 추가하여 사용할 수 있습니다.

속성이 없을 경우

Dfinery.logEvent("CUSTOM_EVENT_NAME", null);

속성이 있을 경우

const properties = {};
properties["CUSTOM_PROPERTY_KEY"] = "CUSTOM_PROPERTY_VALUE"; //사용자 정의 속성 값(Optional)
Dfinery.logEvent("CUSTOM_EVENT_NAME", properties);

자동으로 수집되는 데이터

DFINERY SDK는 다음의 정보에 대해서 자동으로 수집합니다.

해당 값은 브라우저의 환경 및 종류에 따라 수집되지 않을 수 있습니다.

  • 브라우저

  • 브라우저의 버젼

  • OS

  • 설정된 언어

  • 설정된 Time Zone Offset

  • Url

  • Referer

  • utm 파라미터

Last updated