Skip to content

Commit bc34896

Browse files
Sofie Toft Kristensengitbook-bot
authored andcommitted
GITBOOK-23: M&E Reporting
1 parent 2281588 commit bc34896

File tree

6 files changed

+50
-20
lines changed

6 files changed

+50
-20
lines changed
Binary file not shown.
103 KB
Loading
303 KB
Loading

13/umbraco-engage/developers/personalization/implement-your-own-segment-parameters.md

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,9 @@ In the following guide, we will show how this is done. There are 3 steps:
1717

1818
This guide will use code samples to add a "**Day of week**" segment parameter where you can select a single day of the week. If a pageview happens on that day the segment parameter will be satisfied.
1919

20-
You can download the following code to add this [parameter directly to your solution](../../../../%7BlocalLink:umb:/media/50f4fa6c22b54c4db9c3ac402e43e226%7D/).
20+
You can download the following code files to your project to add the parameter directly to your solution.
21+
22+
{% file src="../../.gitbook/assets/day-of-the-week-segment-parameter.zip" %}
2123

2224
## 1. C# definition
2325

@@ -26,8 +28,8 @@ In code, we refer to a segment parameter as a **segment rule**.
2628

2729
A segment rule is:
2830

29-
* A unique rule identifier, e.g. "**DayOfWeek**".
30-
* A configuration object, e.g. **"{ dayOfWeek: 3 }"**.
31+
* A unique rule identifier, e.g. `DayOfWeek`.
32+
* A configuration object, e.g. `{ dayOfWeek: 3 }`.
3133
* This is optional, but most rules will have some sort of configuration that the user can alter in the Segment Builder. In our example, the user can configure the specific day of the week.
3234
* A method that specifies whether the rule is satisfied by the current page view.
3335

@@ -57,7 +59,7 @@ public class DayOfWeekSegmentRuleFactory : ISegmentRuleFactory{ public string
5759
```
5860
{% endcode %}
5961

60-
We are using the class **DayOfWeekSegmentRuleConfig** as a representation of the configuration of the rule, which is not strictly necessary but makes it easier. The configuration is stored as a string in the database but in code, we like to have IntelliSense so we parse the stored configuration to this class:
62+
We are using the class `DayOfWeekSegmentRuleConfig` as a representation of the configuration of the rule, which is not strictly necessary but makes it easier. The configuration is stored as a string in the database but in code, we like to have IntelliSense so we parse the stored configuration to this class:
6163

6264
{% code overflow="wrap" %}
6365
```csharp
@@ -85,7 +87,7 @@ This step will show concrete code samples that belong to our demo parameter "**D
8587
\
8688
You need to create a folder in the _App\_Plugins_ folder of your project that will hold the new files.
8789

88-
For this example name it "**day-of-week**". The folder and content look like this:
90+
For this example name it "`day-of-week`". The folder and content look like this:
8991

9092
* **App\_Plugins\day-of-week**
9193
* `package.manifest`
@@ -117,13 +119,13 @@ In this file, you define the segment parameter and register it in the repository
117119

118120
* `segment-rule-day-of-week-editor.html`
119121

120-
This file contains the view of your parameter editor. Our example editor is a **\<select>** filled with the 7 days of the week.
122+
This file contains the view of your parameter editor. Our example editor is a `<select>` filled with the 7 days of the week.
121123

122-
We write the picked value to the "**config.dayOfWeek**" property of our rule. You can make the editor as complex as you want, use multiple fields, etc.
124+
We write the picked value to the `config.dayOfWeek` property of our rule. You can make the editor as complex as you want, use multiple fields, etc.
123125

124-
For more inspiration, you can look at the built-in rule editors of Umbraco Engage in **App\_Plugins\Umbraco.Engage\dashboard\segments\builder\rules**.
126+
For more inspiration, you can look at the built-in rule editors of Umbraco Engage in `App_Plugins\Umbraco.Engage\dashboard\segments\builder\rules`.
125127

126-
We use the "**data.days**" property of our rule definition in the editor. The editor gets passed in the rule definition as well as a "**config**" object which we should update according to the user input.
128+
We use the `data.days` property of our rule definition in the editor. The editor gets passed in the rule definition as well as a `config` object which we should update according to the user input.
127129

128130
```html
129131
<ums-segment-rule-editor name="$ctrl.rule.name" type="$ctrl.rule.type" save="$ctrl.save()">
@@ -155,14 +157,14 @@ We want to display the picked day to the user:
155157
```
156158
{% endcode %}
157159

158-
We store the chosen day of the week as an **integer 0-6 ($ctrl.config.dayOfWeek)** but in the display component, we want to show the actual day (e.g. "**Monday**"). Our rule definition defines the mapping in its "**data.days**" property so we convert it using that and display the name of the day.
160+
We store the chosen day of the week as an integer 0-6 ($ctrl.config.dayOfWeek) but in the display component, we want to show the actual day (e.g. `Monday`). Our rule definition defines the mapping in its `data.days` property so we convert it using that and display the name of the day.
159161

160162
* `segment-rule-day-of-week-display.js`
161163

162164
In this file, we register the display component.
163165

164166
```
165-
// If you have your own custom module, use that name instead of "umbraco"
167+
// If you have a custom module, use that name instead of "umbraco"
166168
here.angular.module("umbraco").component("segmentRuleDayOfWeekDisplay",
167169
{
168170
templateUrl: "/App_Plugins/day-of-week/segment-rule-day-of-week-display.html",
@@ -195,11 +197,11 @@ The new segment parameter will show up automatically in the [Cockpit](../../../.
195197

196198
This includes active segments of the current visitor, and therefore your new segment parameter can also show up in the cockpit. By default, it will display the **raw configuration of the parameter** as stored in the database ("{ dayOfWeek: 3 }" in our example).
197199

198-
If you hover over it you will see the rule identifier "**DayOfWeek**" rather than a friendly name.
200+
If you hover over it you will see the rule identifier `DayOfWeek` rather than a friendly name.
199201

200202
![Raw display of DayOfWeek](../../.gitbook/assets/engage-personalization-day-of-week-raw.png)
201203

202-
If you want to change this to be more readable you can implement the **Umbraco.Engage.Web.Cockpit.Segments.ICockpitSegmentRuleFactory** interface.
204+
If you want to change this to be more readable you can implement the `Umbraco.Engage.Web.Cockpit.Segments.ICockpitSegmentRuleFactory` interface.
203205

204206
For the `DayOfWeek` demo parameter, this is the implementation:
205207

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
---
22
icon: square-exclamation
3-
description: '-'
3+
description: >-
4+
It is recommended to continuously monitor the personalization on your website.
5+
This can be done from the Reporting dashboard.
46
---
57

68
# Reporting
79

8-
{% hint style="info" %}
9-
This article is not part of the RC Documentation.
10-
{% endhint %}
10+
On the Reporting dashboard in the Engage section, you can monitor the personalization set up on your website.
11+
12+
Learn more about how to read the information on the dashboard in [the Marketers and Editors section](../marketers-and-editors/reporting.md).
Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,36 @@
11
---
22
icon: square-exclamation
3+
description: >-
4+
You should continuously monitor personalization on your website to make
5+
adjustments where needed.
36
---
47

58
# Reporting
69

7-
{% hint style="info" %}
8-
This article is not part of the RC Documentation.
9-
{% endhint %}
10+
On the Reporting dashboard in the Engage section, you can monitor the personalization set up on your website.&#x20;
1011

12+
## Segments
13+
14+
You can get an overview of how the segments you have configured for your website are doing.
15+
16+
<figure><img src="../.gitbook/assets/engage-reporting-documentation.png" alt=""><figcaption><p>Segment performance overview.</p></figcaption></figure>
17+
18+
When you select a segment, you will see an overview of the configuration. As you scroll down, you can monitor its performance.
19+
20+
Learn more about segments and how to set them up in the [Personalization section](personalization/creating-a-segment.md).
21+
22+
### Segment Potential
23+
24+
The segment potential depends on how many pageviews, sessions, and profiles are covered within the segment.
25+
26+
In the Reporting dashboard, you can see the coverage of these parameters. You can also see the number of sessions a new profile requires to activate the selected segment.
27+
28+
### Segment Personalization
29+
30+
In many cases, it can be interesting to monitor how many of your website's sessions, page views, and profiles have been personalized.
31+
32+
In the Segment Personalization section, you can see how much of the incoming traffic on your website is personalized.
33+
34+
### Goal Performance
35+
36+
You can also get an overview of how the goals you have configured are performing. The table in the Goal Performance section compares the goal performance between the control group and the personalized group.

0 commit comments

Comments
 (0)