Fetch the latest event in Edge Segment | Community
Skip to main content
ChetanyaJain-1
Community Advisor
Community Advisor
October 6, 2022
Solved

Fetch the latest event in Edge Segment

  • October 6, 2022
  • 1 reply
  • 1821 views

Is there a best way to fetch only the latest event of a specific type to evaluate a segment on the edge network for next-page personalization?

 

Here's the situation:

  • Read an event from the site event or edge API server - say score.
  • This score keeps changing based on the browsing behavior (up/down)
  • Based on the score user is segmented into low/med/high probability segment
    • Seg low - score <= 10
    • Seg med - 10 > score <= 25
    • Seg high - score > 25
  • Based on the segment the user falls in, personalization needs to take place

 

Here's what's happening:

  • On the usage of sequence events conditions, it does not support edge evaluation.
  • If we just use the score condition, then the user falls under multiple segments - since the score keeps changing.

Any other thoughts/ideas to deal with this?

 

@danny-miller -> Any help on this is highly appreciated.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Danny-Miller

@chetanyajain-1 This one is tricky and the short answer is I have not found a way.  But let's walk through it.

  1. The Edge only knows about the current hit/event and therefore Edge Segments must use either Profile attributes or a single hit to evaluate
  2. To get a Segment to evaluate using only the "last" hit/event, you have to check that no other hit/event exists.  This removes you from Edge Segments.

Is there a way around this? Sort of.

The behavior you are looking for is handled nicely by Profile (i.e. only keep the last value sent in).  So, if we take that approach, we should pass the score into Profile.  And any Segments built on this will be Edge Segments.  However, today Web SDK doesn't support directly updating the Profile in AEP.  So, we have to stream in the update to an HTTP API connector.

https://experienceleague.adobe.com/docs/experience-platform/sources/connectors/streaming/http.html?lang=en

 

But, the calls to the HTTP API connector will go to the Hub (not the Edge), so there will be a few minute latency before the Streaming Segment runs on the Hub and the update pushed to the Edge.

 

Keep in mind the Streaming Guardrails if you are going to be passing in score updates every page for every visitor. https://experienceleague.adobe.com/docs/experience-platform/ingestion/streaming/overview.html?lang=en#request-per-seconds-(rps)-guidance-on-streaming-ingestion

 

 

1 reply

Danny-Miller
Adobe Employee
Danny-MillerAdobe EmployeeAccepted solution
Adobe Employee
October 6, 2022

@chetanyajain-1 This one is tricky and the short answer is I have not found a way.  But let's walk through it.

  1. The Edge only knows about the current hit/event and therefore Edge Segments must use either Profile attributes or a single hit to evaluate
  2. To get a Segment to evaluate using only the "last" hit/event, you have to check that no other hit/event exists.  This removes you from Edge Segments.

Is there a way around this? Sort of.

The behavior you are looking for is handled nicely by Profile (i.e. only keep the last value sent in).  So, if we take that approach, we should pass the score into Profile.  And any Segments built on this will be Edge Segments.  However, today Web SDK doesn't support directly updating the Profile in AEP.  So, we have to stream in the update to an HTTP API connector.

https://experienceleague.adobe.com/docs/experience-platform/sources/connectors/streaming/http.html?lang=en

 

But, the calls to the HTTP API connector will go to the Hub (not the Edge), so there will be a few minute latency before the Streaming Segment runs on the Hub and the update pushed to the Edge.

 

Keep in mind the Streaming Guardrails if you are going to be passing in score updates every page for every visitor. https://experienceleague.adobe.com/docs/experience-platform/ingestion/streaming/overview.html?lang=en#request-per-seconds-(rps)-guidance-on-streaming-ingestion

 

 

ChetanyaJain-1
Community Advisor
Community Advisor
October 7, 2022

@danny-miller can we update the profile via Edge Server API? If so, what would be the syntax? So far I was able to update only the event.

Also, for same-page personalization how do we send the trigger to Target - say based on FAQ accordion clicks, page scroll, video navigation, etc? 

Anuhya-Y
Community Advisor
Community Advisor
October 7, 2022