Skip to content

Edge sendEvent Tutorial#274

Merged
emdobrin merged 50 commits intodevfrom
tutorial-send-event
Oct 5, 2022
Merged

Edge sendEvent Tutorial#274
emdobrin merged 50 commits intodevfrom
tutorial-send-event

Conversation

@timkimadobe
Copy link
Copy Markdown
Contributor

@timkimadobe timkimadobe commented Sep 26, 2022

Description

This PR contains the tutorial for the Edge sendEvent end to end implementation. At a high level it contains:

  • Document with step by step guide for setting up platform configuration, tutorial app, and Assurance validation
  • Assets to help with guiding users through the steps
  • App with comment blocks containing required implementation (start and final state)

Related Issue

See MOB-17361 for additional details.

Motivation and Context

This tutorial helps users better understand how to set up - from scratch - the Edge extensions to send XDM Experience Events and validate them using Assurance. It is geared towards assuming no prior knowledge of the Adobe Experience Platform, Edge extensions, or Assurance (and all their associated configuration requirements, etc.), or extensive software development experience.

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • I have signed the Adobe Open Source CLA.
  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

Migration of Edge tutorial to Edge repo
Refactoring file structure
Update steps for Edge, add sections for various AEP extensions
Update file structure to place tutorials in documentation in line with other repos
Remove duplicated tutorial and update assurance window step
Update edge example with one using XDM object
Update tutorial for edge
Step updates
Tutorial for `sendEvent` - fresh implementation state
Update AEP setup heading level
Reset app to start state
Refinement of Edge `sendEvent` tutorial
Update section numbering
Update git repo link to point to tutorial branch
Update repo setup instructions to point to tutorial project
Refinements for Edge `sendEvent` tutorial
Update podfile instructions
Remove unneeded pod update step
Clarify click and drag step
Update click and drag with image
Update wording for datastream description
Update click and drag with step numbers
Update property extension installation to include assurance
Update publishing steps
update env id saving
Remove trigger consequence button
Flesh out rule creation steps
Add Analytics service to datastream steps
Update assurance validation to include analytics mapping and event transactions
Update tutorial app to starting state
Update pod instructions since opening for the first time has invalid Pod target
Allow alternative route using SPM if no admin access
Update top level diagram
Create final state for edge tutorial app
import AEPEdgeConsent
import AEPEdgeIdentity
import AEPLifecycle
// Edge Tutorial - code section (1/3) */
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would this app be used for other tutorials as well? If so, we can rename the sections accordingly to accommodate for that, for example we can have all comments like:

// Edge Tutorial 1 - code section (n/m)

and in the table of contents we refer to sendEvent as tutorial 1.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes I think the idea was to use this app's end point as the starting point for other extensions that use Edge extensions; however, does the numbering reflect the number of tutorials for Edge? or the required tutorial order (for example, when another extension builds off of this one would it be 2?)?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was thinking the number of tutorials in Edge. In case we have tutorial 2 and 3 in the future and use the same app, the steps may be conflicting with tutorial 1.
But if the same app code will be used in other repos, might be confusing though.
We can keep it as is for now and we can decide when new tutorials are added.

Update copyright to match standard license header
Update final app copyright license headers
Remove org info from assets
Update wording for "we"
Update start app project to EdgeTutorialApp
Updates based on feedback
Copy link
Copy Markdown
Contributor Author

@timkimadobe timkimadobe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the review Emilia, updated based on feedback with some outstanding questions

Create TOC under Tutorials directory
Remove branch from repo link
Remove initial pod update
Create final state for edge tutorial app
Comment on lines +555 to +568
### Consent for Edge extension <!-- omit in toc -->
The [Consent for Edge](https://aep-sdks.gitbook.io/docs/foundation-extensions/consent-for-edge-network) mobile extension enables you to collect user data tracking consent preferences from your mobile app when using AEP and the Edge extension. The default consent settings should be set in alignment with your organization's user data privacy requirements. See the guide on [ingesting data using the Consents and Preferences data type](https://experienceleague.adobe.com/docs/experience-platform/xdm/data-types/consents.html#ingest).

[API documentation](https://aep-sdks.gitbook.io/docs/foundation-extensions/consent-for-edge-network/api-reference)

### Identity for Edge extension <!-- omit in toc -->
The [Identity for Edge](https://aep-sdks.gitbook.io/docs/foundation-extensions/identity-for-edge-network) mobile extension enables identity management when using AEP and the Edge extension. You can control IDs associated with the user like custom IDs, advertising IDs, etc.

[API documentation](https://aep-sdks.gitbook.io/docs/foundation-extensions/identity-for-edge-network/api-reference)

### Lifecycle for Edge extension <!-- omit in toc -->
The [Lifecycle for Edge](https://aep-sdks.gitbook.io/docs/foundation-extensions/lifecycle-for-edge-network) extension enables you to collect app lifecycle data from your mobile app when using AEP and the Edge extension. This includes data like app start, stop, device type, device OS, etc.

[API documentation](https://aep-sdks.gitbook.io/docs/foundation-extensions/mobile-core/lifecycle/lifecycle-api-reference)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, let's do that since it will reduce the amount of external links we have. We can keep just the note about lifecycle implementation L498 which is related to the tutorial.

import AEPEdgeConsent
import AEPEdgeIdentity
import AEPLifecycle
// Edge Tutorial - code section (1/3) */
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was thinking the number of tutorials in Edge. In case we have tutorial 2 and 3 in the future and use the same app, the steps may be conflicting with tutorial 1.
But if the same app code will be used in other repos, might be confusing though.
We can keep it as is for now and we can decide when new tutorials are added.

Update related projects and point to it from tutorial
Update assurance step header and toc
Copy link
Copy Markdown
Contributor

@emdobrin emdobrin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requires few small updates and is good to go!

Update app name usages
@codecov
Copy link
Copy Markdown

codecov bot commented Oct 5, 2022

Codecov Report

Merging #274 (82211a9) into dev (a70259b) will increase coverage by 0.44%.
The diff coverage is 98.10%.

@@            Coverage Diff             @@
##              dev     #274      +/-   ##
==========================================
+ Coverage   95.06%   95.50%   +0.44%     
==========================================
  Files          27       28       +1     
  Lines        1032     1045      +13     
==========================================
+ Hits          981      998      +17     
+ Misses         51       47       -4     

@emdobrin emdobrin merged commit b640ce8 into dev Oct 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants