개인화에 Adobe Target 및 Web SDK 사용

Adobe Experience Platform Web SDK은(는) Adobe Target에서 관리되는 개인화된 경험을 웹 채널에 전달하고 렌더링할 수 있습니다. VEC(시각적 경험 작성기)라고 하는 WYSIWYG 편집기나 양식 기반 경험 작성기 비시각적 인터페이스를 사용하여 활동 및 개인화 경험을 만들고, 활성화하고, 전달할 수 있습니다.

IMPORTANT
at.js 2.x에서 Platform Web SDK로 Target 마이그레이션 자습서를 사용하여 Target 구현을 Platform Web SDK로 마이그레이션하는 방법에 대해 알아봅니다.
Web SDK를 사용하여 Adobe Experience Cloud 구현 자습서를 사용하여 Target을 처음 구현하는 방법을 알아봅니다. Target에 대한 자세한 내용은 Platform Web SDK로 Target 설정이라는 자습서 섹션을 참조하십시오.

다음 기능이 테스트되었으며 현재 Target에서 지원됩니다.

Web SDK 시스템 다이어그램

다음 다이어그램은 Target 및 Web SDK Edge Decisioning의 워크플로를 이해하는 데 도움이 됩니다.

Platform Web SDK를 사용한 Adobe Target Edge 의사 결정 다이어그램

호출
세부 정보
1
장치가 Web SDK을(를) 로드합니다. Web SDK이(가) XDM 데이터, 데이터스트림 환경 ID, 전달된 매개 변수 및 고객 ID(선택 사항)를 사용하여 Edge Network에 요청을 보냅니다. 페이지(또는 컨테이너)가 미리 숨겨져 있습니다.
2
Edge Network은 Edge Services에 요청을 전송하여 방문자 ID, 동의 및 지리적 위치 및 장치에 친숙한 이름과 같은 기타 방문자 컨텍스트 정보로 보강합니다.
3
Edge Network이 방문자 ID 및 전달된 매개 변수와 함께 보강된 개인화 요청을 Target 에지에 보냅니다.
4
프로필 스크립트가 실행된 다음 Target 프로필 저장소에 공급됩니다. 프로필 저장소는 대상 라이브러리의 세그먼트(예: Adobe Analytics, Adobe Audience Manager, Adobe Experience Platform에서 공유된 세그먼트)를 가져옵니다.
5
Target은(는) URL 요청 매개 변수 및 프로필 데이터를 기반으로 현재 페이지 보기 및 향후 프리페치된 보기에 대해 방문자에게 표시할 활동 및 경험을 결정합니다. Target이(가) Edge Network에게 다시 보냅니다.
6
a. Edge Network은 추가적인 개인화를 위한 프로필 값을 선택적으로 포함하여 개인화 응답을 다시 페이지로 전송합니다. 현재 페이지의 개인화된 콘텐츠는 기본 콘텐츠의 플리커 없이 가능한 한 빨리 나타납니다.
b. SPA(단일 페이지 애플리케이션)에서 사용자 작업의 결과로 표시되는 보기의 개인화된 콘텐츠는 캐시되므로 보기가 트리거될 때 추가적인 서버 호출 없이 즉시 적용될 수 있습니다.
c입니다. Edge Network은 방문자 ID와 동의, 세션 ID, ID, 쿠키 확인, 개인화와 같은 쿠키의 다른 값을 보냅니다.
7
Web SDK는 디바이스에서 Edge Network으로 알림을 전송합니다.
8
Edge Network이 Analytics for Target (A4T) 세부 사항(활동, 경험 및 전환 메타데이터)을 Analytics 에지에 전달합니다.

Adobe Target 사용

Target을(를) 사용하려면 다음을 수행하십시오.

  1. 적절한 클라이언트 코드를 사용하여 데이터스트림에서 Target을(를) 사용하도록 설정하십시오.
  2. 이벤트에 renderDecisions 옵션을 추가합니다.

그런 다음 선택적으로 다음 옵션을 추가할 수도 있습니다.

  • decisionScopes: 이 옵션을 이벤트에 추가하여 특정 활동(양식 기반 작성기로 만든 활동에 유용함)을 검색합니다.
  • 코드 조각 사전 숨김: 페이지의 특정 부분만 숨깁니다.

Adobe Target VEC 사용

VEC를 Web SDK 구현과 함께 사용하려면 Firefox 또는 Chrome VEC Helper 확장 프로그램을 설치하고 활성화하십시오.

자세한 내용은 Adobe Target 안내서 ​에서 시각적 경험 작성기 Helper 확장 기능을 참조하십시오.

개인화된 콘텐츠 렌더링

자세한 내용은 개인화 콘텐츠 렌더링을 참조하십시오.

XDM의 대상

Web SDK을(를) 통해 전달되는 Target 활동에 대한 대상을 정의할 때 XDM을(를) 정의하고 사용해야 합니다. XDM 스키마, 클래스 및 스키마 필드 그룹을 정의한 후에는 타깃팅을 위해 XDM 데이터로 정의된 Target 대상 규칙을 만들 수 있습니다. Target 내에서 XDM 데이터는 Audience Builder에 사용자 지정 매개 변수로 표시됩니다. XDM은 점 표기법을 사용하여 serialize됩니다(예: web.webPageDetails.name).

사용자 지정 매개 변수 또는 사용자 프로필을 사용하는 사전 정의된 대상이 있는 Target 활동이 있는 경우 SDK를 통해 해당 활동이 올바르게 전달되지 않습니다. 사용자 지정 매개 변수 또는 사용자 프로필을 사용하는 대신 XDM을 사용해야 합니다. 그러나 XDM이 필요하지 않은 Web SDK을(를) 통해 지원되는 기본 대상 타깃팅 필드가 있습니다. 이러한 필드는 XDM이 필요하지 않은 Target UI에서 사용할 수 있습니다.

  • 타겟 라이브러리
  • 지역
  • 네트워크
  • 운영 체제
  • 사이트 페이지
  • 브라우저
  • 트래픽 소스
  • 시간대

자세한 내용은 Adobe Target 안내서 ​의 대상 범주를 참조하십시오.

응답 토큰

응답 토큰은 Google 또는 Facebook과 같은 서드파티로 메타데이터를 전송하는 데 사용됩니다. 응답 토큰이 반환됩니다
propositions -> items 내의 meta 필드에서 다음을 수행합니다. 다음은 샘플입니다.

{
  "id": "AT:eyJhY3Rpdml0eUlkIjoiMTI2NzM2IiwiZXhwZXJpZW5jZUlkIjoiMCJ9",
  "scope": "__view__",
  "scopeDetails": ...,
  "renderAttempted": true,
  "items": [
    {
      "id": "0",
      "schema": "https://ns.adobe.com/personalization/dom-action",
      "meta": {
        "experience.id": "0",
        "activity.id": "126736",
        "offer.name": "Default Content",
        "offer.id": "0"
      }
    }
  ]
}

응답 토큰을 수집하려면 alloy.sendEvent 약속을 구독하고 propositions을(를) 반복한 다음 items -> meta에서 세부 정보를 추출해야 합니다.

proposition마다 proposition이(가) 렌더링되었는지 여부를 나타내는 renderAttempted 부울 필드가 있습니다. 아래 샘플을 참조하십시오.

alloy("sendEvent",
  {
    "renderDecisions": true,
    "decisionScopes": [
      "hero-container"
    ]
  }).then(result => {
    const { propositions } = result;

    // filter rendered propositions
    const renderedPropositions = propositions.filter(proposition => proposition.renderAttempted === true);

    // collect the item metadata that represents the response tokens
    const collectMetaData = (items) => {
      return items.filter(item => item.meta !== undefined).map(item => item.meta);
    }

    const pageLoadResponseTokens = renderedPropositions
      .map(proposition => collectMetaData(proposition.items))
      .filter(e => e.length > 0)
      .flatMap(e => e);
  });

자동 렌더링이 활성화된 경우 제안 배열에 다음이 포함됩니다.

페이지 로드 시:

  • renderAttempted 플래그가 false(으)로 설정된 양식 기반 작성기 기반 propositions
  • renderAttempted 플래그가 true(으)로 설정된 시각적 경험 작성기 기반 제안
  • renderAttempted 플래그가 true(으)로 설정된 단일 페이지 애플리케이션 보기에 대한 시각적 경험 작성기 기반 제안

보기 - 변경(캐시된 보기):

  • renderAttempted 플래그가 true(으)로 설정된 단일 페이지 애플리케이션 보기에 대한 시각적 경험 작성기 기반 제안

자동 렌더링이 비활성화되면 제안 배열에 다음이 포함됩니다.

페이지 로드 시:

  • renderAttempted 플래그가 false(으)로 설정된 Form-based Composer 기반 propositions
  • renderAttempted 플래그가 false(으)로 설정된 Visual Experience Composer 기반 제안
  • renderAttempted 플래그가 false(으)로 설정된 단일 페이지 응용 프로그램 보기에 대한 Visual Experience Composer 기반 제안

보기 - 변경(캐시된 보기):

  • renderAttempted 플래그가 false(으)로 설정된 단일 페이지 애플리케이션 보기에 대한 시각적 경험 작성기 기반 제안

단일 프로필 업데이트

Web SDK을(를) 사용하면 프로필을 Target 프로필로 업데이트하고 Web SDK을(를) 경험 이벤트로 업데이트할 수 있습니다.

Target 프로필을 업데이트하려면 프로필 데이터가 다음과 함께 전달되었는지 확인하십시오.

  • "data {" 아래
  • "__adobe.target" 아래
  • 접두사 "profile."
유형
설명
renderDecisions
부울
DOM 작업을 해석해야 하는지 여부를 개인화 구성 요소에 지시합니다.
decisionScopes
배열 <String>
결정을 검색할 범위 목록
xdm
오브젝트
웹 SDK에 경험 이벤트로 전송되는 XDM 형식의 데이터
data
오브젝트
대상 클래스 아래의 Target 솔루션으로 전송된 임의의 키/값 쌍입니다.

콘텐츠가 최종 사용자에게 표시될 때까지 프로필 또는 엔터티 매개 변수 저장 지연

콘텐츠가 표시될 때까지 프로필의 기록 특성을 지연하려면 요청에서 data.adobe.target._save=false을(를) 설정하십시오.

예를 들어 웹 사이트에는 웹 사이트의 세 범주 링크(남성, 여성 및 아동)에 해당하는 세 가지 결정 범위가 포함되어 있으며 사용자가 최종적으로 방문한 범주를 추적하려고 합니다. 콘텐츠가 요청될 때 범주가 지속되지 않도록 __save 플래그를 false(으)로 설정하여 이러한 요청을 보냅니다. 콘텐츠가 시각화되면 기록할 해당 특성에 대한 적절한 페이로드(eventTokenstateToken 포함)를 보냅니다.

아래 예제에서는 trackEvent 스타일 메시지를 보내고, 프로필 스크립트를 실행하고, 속성을 저장하고, 이벤트를 즉시 기록합니다.

alloy ( "sendEvent" , {
  renderDecisions : true,
  data : {
    __adobe : {
      target : {
        "profile.gender" : "female",
        "profile.age" : 30,
        "entity.name" : "T-shirt" ,
        "entity.id" : "1234" ,
        "track": {
          "scopes": [ "mbox1", "mbox2"],
          "type": "display|click|..."
        }
      }
    }
  }
} ) ;
NOTE
__save 지시문이 생략되면 나머지 요청이 미리 설정된 개인화인 경우에도 요청이 실행된 것처럼 프로필 및 엔티티 속성이 즉시 저장됩니다. __save 지시문은 프로필 및 엔터티 특성에만 관련이 있습니다. 추적 개체가 있으면 __save 지시문이 무시됩니다. 데이터가 즉시 저장되고 알림이 기록됩니다.

프로필 데이터가 있는 sendEvent

alloy("sendEvent", {
   renderDecisions: true|false,
   xdm: { // Experience Event XDM data },
   data: { // Freeform data }
});

Adobe Target에 프로필 특성을 보내는 방법:

alloy("sendEvent", {
  "renderDecisions": true,
  "data": {
    "__adobe": {
      "target": {
        "profile.gender": "female",
        "profile.age": 30
      }
    }
  }
});

권장 사항 요청

다음 표에는 Recommendations 특성과 각 특성이 Web SDK을(를) 통해 지원되는지 여부가 나열되어 있습니다.

카테고리
속성
지원 상태
Recommendations - 기본 엔티티 속성
entity.id
지원됨
entity.name
지원됨
entity.categoryId
지원됨
entity.pageUrl
지원됨
entity.thumbnailUrl
지원됨
entity.message
지원됨
entity.value
지원됨
entity.inventory
지원됨
entity.brand
지원됨
entity.margin
지원됨
entity.event.detailsOnly
지원됨
Recommendations - 사용자 지정 엔티티 속성
entity.yourCustomAttributeName
지원됨
Recommendations - 예약된 mbox/페이지 매개 변수
excludedIds
지원됨
cartIds
지원됨
productPurchasedId
지원됨
카테고리 관심도에 대한 페이지 또는 항목 카테고리
user.categoryId
지원됨

Recommendations 특성을 Adobe Target으로 보내는 방법:

alloy("sendEvent", {
  "renderDecisions": true,
  "data": {
    "__adobe": {
      "target": {
        "entity.id": "123",
        "entity.genre": "Drama"
      }
    }
  }
});

디버깅

mboxTrace 및 mboxDebug는 더 이상 사용되지 않습니다. 대신 Web SDK 디버깅의 메서드를 사용하십시오.

용어

제안: Adobe Target에서 제안은 활동에서 선택한 경험과 상관 관계가 있습니다.

스키마: 결정의 스키마는 Adobe Target의 오퍼 유형입니다.

범위: 결정 범위입니다. Adobe Target에서 범위는 mBox입니다. 글로벌 mBox가 __view__ 범위입니다.

XDM: XDM은 점 표기법으로 serialize된 다음 mBox 매개 변수로 Adobe Target에 삽입됩니다.

recommendation-more-help
ad108910-6329-42f1-aa1d-5920a2b13636