알림 보내기(Python)
설명
send_notifications()
은(는) 측정 및 보고를 위해 Adobe Target에게 디스플레이 또는 클릭 알림을 보내는 데 사용됩니다.
execute
개체가 요청 자체에 있으면 자격 있는 활동에 대해 자동으로 노출이 증가합니다.노출을 자동으로 증가시키는 SDK 메서드는 다음과 같습니다.
get_offers()
get_attributes()
요청 내에서 prefetch
개체가 전달되면 prefetch
개체 내에 mbox가 있는 활동에 대한 노출이 자동으로 증가하지 않습니다. Send_notifications()
은(는) 노출 및 전환을 늘리기 위해 미리 가져온 경험에 사용해야 합니다.
방법
send_notifications
target_client.send_notifications(options)
매개 변수
options
의 구조는 다음과 같습니다.
반환
Returns
을(를) 동기적으로 호출하는 경우 TargetDeliveryResponse
(기본값) 또는 콜백으로 호출하는 경우 AsyncResult
을(를) 호출합니다. TargetDeliveryResponse
의 구조는 다음과 같습니다.
예
먼저 home
및 product1
mbox에 대한 콘텐츠를 미리 가져오기 위한 Target Delivery API 요청을 빌드해 보겠습니다.
Python
mboxes = [MboxRequest(name="home"),
MboxRequest(name="product1")]
prefetch = PrefetchRequest(mboxes=mboxes)
delivery_request = DeliveryRequest(prefetch=prefetch)
# Next, we fetch the offers via Target Python SDK getOffers() API
response = target_client.get_offers({ "request": delivery_request })
성공적인 응답에는 요청된 mbox에 대해 미리 가져온 콘텐츠가 포함된 Target Delivery API 응답 개체가 포함됩니다. 샘플 target_response["response"]
개체(dict 형식)는 다음과 같이 나타날 수 있습니다.
Python
{
"status": 200,
"requestId": "e8ac2dbf5f7d4a9f9280f6071f24a01e",
"id": {
"tntId": "08210e2d751a44779b8313e2d2692b96.21_27"
},
"client": "adobetargetmobile",
"edgeHost": "mboxedge21.tt.omtrdc.net",
"prefetch": {
"mboxes": [
{
"index": 0,
"name": "home",
"options": [
{
"type": "html",
"content": "HOME OFFER",
"eventToken": "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==",
"responseTokens": {
"profile.memberlevel": "0",
"geo.city": "dublin",
"activity.id": "302740",
"experience.name": "Experience B",
"geo.country": "ireland"
}
}
],
"state": "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"
},
{
"index": 1,
"name": "product1",
"options": [
{
"type": "html",
"content": "TEST OFFER 1",
"eventToken": "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==",
"responseTokens": {
"profile.memberlevel": "0",
"geo.city": "dublin",
"activity.id": "302740",
"experience.name": "Experience B",
"geo.country": "ireland"
}
}
],
"state": "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"
}
]
}
}
각 Target 콘텐츠 옵션에서 mbox name
및 state
필드와 eventToken
필드를 확인합니다. 각 콘텐츠 옵션이 표시되는 즉시 send_notifications()
요청에 제공해야 합니다. product1
mbox가 브라우저가 아닌 장치에 표시되었다고 가정해 보겠습니다. 알림 요청은 다음과 같이 표시됩니다.
Python
notification_mbox = NotificationMbox(name="product1",
state="J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U")
notification = Notification(
id="1",
type=MetricType.DISPLAY,
timestamp=1621530726000, # Epoch time in milliseconds
mbox=notification_mbox,
tokens=["t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q=="]
)
notification_request = DeliveryRequest(notifications=[notification])
미리 가져오기 응답에 전달된 Target 오퍼에 해당하는 이벤트 토큰과 mbox 상태가 모두 포함되어 있습니다. 알림 요청을 빌드하면 send_notifications()
API 메서드를 통해 Target에 보낼 수 있습니다.
Python
response = target_client.send_notifications({ "request": notification_request })