- 인쇄
쿠폰 클릭 이벤트 (쿠폰 연동 관련 제어)
- 인쇄
Shoplive에서 제공하는 쿠폰 팝업을 고객사의 쿠폰 시스템과 연동하기 위한 가이드입니다.
LINK / LINK (New window)
쿠폰 클릭 이벤트를 Link 또는 Link (New window) (새창열기)로 설정한 경우 쿠폰 연동 방법입니다.
messageCallback
쿠폰 클릭 시 호출되는 messageCallback
입니다. 이를 통해 각 이벤트에 대한 custom action을 정의할 수 있습니다.
Action | Payload | Description |
---|---|---|
LINK | json object | 쿠폰 클릭 이벤트를 Link로 설정한 경우 호출됩니다. 별도로 구현(override)하지 않는 경우 웹에서는 페이지 자체가 이동되며 (현재 라이브 페이지 이탈) 앱(SDK)의 경우 PIP 모드로 진입하고 NAVIGATION이 호출됩니다. |
LINK_NEW_WINDOW | json object | 쿠폰 클릭이벤트를 Link(New window)로 설정한 경우 호출됩니다. 별도로 구현(override)하지 않는 경우 웹에서는 새 창에 linkUrl을 띄우며 앱(SDK)의 경우 PIP 모드로 진입하고 NAVIGATION이 호출됩니다. |
Payload 객체
Property name | Type | Example | Description |
---|---|---|---|
campaignKey | string | “asdf1234” | 방송의 고유번호 |
popupResourceId | string | “1234” | 팝업의 고유번호 |
type | string | “COUPON” | ”BANNER” | ”NOTICE” | 팝업의 종류 |
url | string | “https://shoplive.cloud” | link url |
샘플 코드
플레이어에서 쿠폰을 클릭했을 때 link url에 parameter 추가 후 해당 페이지로 이동하려는 경우 아래와 같이 LINK
혹은 LINK_NEW_WINDOW
를 정의할 수 있습니다.
현재 창에서 페이지를 여는 경우 location.href
를 사용하고,
새 창에서 페이지를 여는 경우 window.open
을 사용해야 합니다.
Download coupon
쿠폰 클릭 이벤트를 쿠폰 다운로드(Download coupon)로 선택한 경우 쿠폰 연동 방법입니다.
messageCallback
쿠폰 클릭 시 호출되는 messageCallback
입니다. 이를 통해 쿠폰 다운로드(Download coupon) 이벤트에 대한 custom action을 정의할 수 있습니다.
Action | Payload | Description |
---|---|---|
DOWNLOAD_COUPON | json object | 쿠폰을 클릭할 때 Coupon code 값과 함께 팝업 타입을 전달합니다. 팝업 타입: BANNER | COUPON | NOTICE |
Payload 객체
Property name | Type | Example | Description |
---|---|---|---|
campaignKey | string | “asdf1234” | 방송의 고유번호 |
coupon | string | “12341234” | 쿠폰 번호 |
popupResourceId | string | “1234” | 팝업의 고유번호 |
type | string | “COUPON” | ”BANNER” | ”NOTICE” | 팝업의 종류 |
샘플 코드
플레이어에서 쿠폰을 클릭 했을 때, 고객사 서버의 API를 호출해 쿠폰 다운로드를 처리 하려는 경우 아래와 같이 DOWNLOAD_COUPON
을 정의할 수 있습니다.
fetch
로 고객사 서버의 API를 호출해 쿠폰 다운로드를 처리하고, 처리 결과에 따라 쿠폰 UI를 조작(숨김/노출/흐리게) 할 수 있습니다.
User define
쿠폰 클릭 이벤트를 사용자 정의(User define)로 선택한 경우 쿠폰 연동 방법입니다.
고객사에서 필요한 정보를 JSON 형식으로 정의해 payload 객체에 추가할 수 있습니다.
messageCallback
쿠폰 클릭 시 호출되는 messageCallback
입니다. 이를 통해 사용자 정의(User define) 이벤트에 대한 custom action을 정의할 수 있습니다.
Action | Payload | Description |
---|---|---|
CUSTOM_ACTION | json object | 쿠폰을 클릭할 때 사용자가 정의한 |
Payload 객체
CUSTOM_ACTION의 payload 객체에는 쿠폰 Edit 창에서 사용자가 정의한 Payload 객체가 포함되어 있습니다.
Property name | Type | Example | Description |
---|---|---|---|
campaignKey | string | “asdf1234” | 방송의 고유번호 |
id | string | “1234” | 팝업의 고유번호 |
payload | object | { “coupon”: “12341234”, “url”: “https://shoplive.cloud”, … } | 사용자가 정의한 payload 객체 |
type | string | “COUPON” | ”BANNER” | ”NOTICE” | 팝업의 종류 |
샘플 코드
플레이어에서 쿠폰을 클릭 했을 때, 아래와 같이 사용자 정의 payload
객체를 사용해 CUSTOM_ACTION
을 정의할 수 있습니다.
쿠폰 Edit 창에서 사용자 정의 payload
를 {"coupon": "12341234", "url": "https://shoplive.cloud/sample_coupon"} 처럼 정의하고, CUSTOM_ACTION
이벤트 발생 시 사용자 정의 payload
객체를 사용해 수동으로 이벤트를 처리하는 예시입니다.
클립보드에 쿠폰 복사 기능이 필요한 경우에 아래 샘플과 같이 DOWNLOAD_COUPON
을 정의할 수 있습니다.
클립보드에 쿠폰복사 샘플