스마트 스크립트 기능 이해하기

설정이 마케터의 요구 사항에 따라 완료되면 스마트 스크립트는 정확한 웹-앱 어트리뷰션을 제공할 수 있습니다. 그러나 개발자가 추가로 변경해야 하는 경우 스크립트를 사용자 지정할 수 있습니다. 아래 섹션에서는 스크립트 내의 다양한 속성과 기능을 설명하고 예시를 보여줍니다.

스마트 스크립트 함수

로그 레벨 설정

필요한 경우 setLogLevel 함수를 사용하여 브라우저의 콘솔에서 로깅 레벨을 설정합니다. createLink 함수를 호출하기 전에 이 함수를 호출하시기 바랍니다. 인수는 debug, warn, error 또는 none입니다. 기본 로그 레벨 값은 debug입니다.

AdjustSmartScript.setLogLevel('warn')

링크 생성

createLink 함수를 사용하여 지정된 매핑 객체 속성이 있는 Adjust 링크를 생성할 수 있습니다.

const mapping = { /* mapping object properties */ }
AdjustSmartScript.createLink(mapping)

스크립트 버전 받기

getVersion 함수를 사용하여 스마트 스크립트 버전을 확인할 수 있습니다.

AdjustSmartScript.getVersion()

매핑 객체 속성

mapping 객체를 createLink 메서드로 전달해야 합니다. mapping 객체에서 다음의 속성을 정의해야 합니다.

defaultLinkToken (string)
해당 네트워크 링크 토큰이 없거나 네트워크 구성이 제공되지 않은 경우 링크 토큰이 사용됩니다.

campaign (object)
캠페인 정보를 포함하는 객체.
adgroup (object)
광고그룹 정보를 포함하는 객체.
creative (object)
어트리뷰션 정보를 포함하는 객체.

campaign, adgroup, creative 객체는 다음의 속성을 포함해야 합니다.

in (string | string[])
캠페인, 광고그룹 또는 크리에이티브의 이름으로 사용할 URL 검색 쿼리 문자열의 키인 문자열 또는 문자열의 배열입니다.
배열이 전달된 경우 스크립트는 GET 파라미터에서 해당하는 이름을 찾고, 있는 경우 모든 이름을 transform 함수에 전달합니다. 그렇지 않은 경우 스크립트는 비어있지 않은 첫 번째 값을 캠페인, 광고그룹 또는 크리에이티브 이름으로 씁니다.

다음 속성도 제공할 수 있습니다.

transform (function)
in 값으로 호출된 함수입니다. 이 함수는 캠페인, 광고그룹 또는 크리에이티브의 최종 이름인 문자열 값을 반환합니다. transform 함수가 문자열을 반환하지 않거나 오류가 발생한 경우 스크립트는 비어있지 않은 첫 번째 값을 캠페인, 광고그룹 또는 크리에이티브 이름으로 씁니다.
defaultValue (string)
transform 함수에서 in 값을 찾을 수 없는 경우에 사용됩니다.

딥링킹을 도입한 경우 mapping 객체에서 다음 파라미터를 정의해야 합니다.

domain (string)
브랜드 도메인. 딥링킹을 도입하지 않은 경우 브랜드 도메인을 정의할 수 있습니다. 도메인이 지정되지 않은 경우 app.adjust.com 링크가 생성됩니다.

iosAppSchema (string)
iOS APP SCHEME.

androidAppSchema (string)
Android APP SCHEME.

딥링킹을 도입한 경우 다음 파라미터를 정의할 수 있습니다.

iosDeeplinkPath (string)
iOS 딥링크 경로.

androidDeeplinkPath (string)
Android 딥링크 경로.

mapping 객체에서 다음 파라미터를 정의할 수 있습니다.

inputUrl (string)
모바일 웹 랜딩 페이지 URL. 값을 제공하지 않으면 스크립트는 window.location.href 값을 현재 페이지 URL로 사용합니다.

label (객체`) 이 파라미터를 사용하면 커스텀 데이터를 전송할 수 있습니다. 자세한 내용은 헬프 센터 문서를 확인하시기 바랍니다.


networks (object)
네트워크 정보를 포함하는 키-값 객체.

networks 객체는 네트워크 이름을 나타내는 키를 1개 이상 포함해야 합니다. 다음은 지원되는 키입니다.

  • meta
  • google_ads

값은 다음 속성을 포함하는 객체여야 합니다.

linkToken (string)
키에 정의된 네트워크의 링크 토큰.

customParameters (object)
커스텀 파라미터 정보를 포함하는 객체.

customParameters 객체는 다음 속성을 포함해야 합니다.

in (string | string[])
사용자 지정 이름으로 사용될 URL 검색 쿼리 문자열의 키인 문자열 또는 문자열의 배열입니다.
배열이 전달된 경우 스크립트는 GET 파라미터에서 해당하는 이름을 찾고, 있는 경우 모든 이름을 transform 함수에 전달합니다. 그렇지 않은 경우 스크립트는 비어있지 않은 첫 번째 값을 사용자 지정 이름으로 씁니다.
out (string)
Adjust 링크에 기록될 커스텀 파라미터의 이름을 지정하는 문자열입니다.

다음 속성도 제공할 수 있습니다.

transform (function)
in 값으로 호출된 함수입니다. 이 함수는 최종 사용자 지정 이름인 문자열 값을 반환합니다. transform 함수가 문자열을 반환하지 않거나 오류가 발생한 경우 비어있지 않은 첫 번째 값이 사용자 지정 이름으로 기록됩니다.
defaultValue (string)
transform 함수에서 in 값을 찾을 수 없는 경우에 사용됩니다.

예시

링크 토큰 및 캠페인 파라미터 사용

네트워크 속성을 사용하여 여러 파트너에 대한 링크 토큰 설정

Adjust 링크에서 값을 다시 작성하려면 transform 및 defaultValue 속성 사용

Adjust 링크에 커스텀 파라미터 쓰기

딥링크 생성

스마트 스크립트 테스트

스마트 스크립트는 브라우저의 콘솔에서 로그를 출력합니다. 특정 매핑에서 스크립트가 어떻게 작동하는지 테스트하고, 올바른 링크가 생성되는지 확인하는 것이 좋습니다.

  1. 브라우저에서 개발자 도구 콘솔로 이동합니다.
  2. 스마트 스크립트를 구현한 웹 페이지로 이동합니다.
  3. [adjust-smart-script] 접두사가 있는 로그가 없는 경우 페이지를 새로고침합니다. 여전히 로그가 표시되지 않으면 다음을 확인합니다.
    • 코드는 AdjustSmartScript.setLogLevel('error') 또는 AdjustSmartScript.setLogLevel('none')을 호출하여 로깅을 억제하지 않습니다.
    • 코드는 AdjustSmartScript.createLink(params) 함수를 호출합니다.

inputUrl 속성의 여러 값을 사용하여 다양한 사용 사례를 테스트할 수 있습니다. 예를 들어 Meta 캠페인을 진행 중이고 오가닉 사용자가 랜딩 페이지를 방문할 것으로 예상되는 경우, 캠페인과 Meta 파라미터가 포함된 URL과 추가 파라미터가 없는 또 다른 URL을 가질 수 있습니다.

예시 로그:

[adjust-smart-script]: No networks configured
[adjust-smart-script]: Use defaultLinkToken to create adjust link
[adjust-smart-script]: Found value for campaign is new_campaign
[adjust-smart-script]: Found value for adgroup is some_adset
[adjust-smart-script]: Found value for creative is logo_image
[adjust-smart-script]: Transformed value for ref_code is id+my_product
[adjust-smart-script]: Misconfigured deep link: no valid androidAppSchema provided