This is the first phase of the dataflow. In this stage the data is collected from the user and stored temporarily in memory.
At the same time the visitor is doing a request the visitor sends all kinds of data to the server:
- Which browser the visitors is using
- Which url is requested
- If there was any referring page (where did the visitor come from)
- At what time the page is requested
- Which IP Address is used
- Which operation system is used
- Which type of device is used
- Which cookies are sent
This data is all collected and because of efficiency stored for a while in memory of the webserver. The idea is that storing this data in memory is faster than directly writing it to the database. It's more efficient to store a multiple databaserecords at once than storing these databaserecords one at the time.
In the next phase the data in memory will be stored in the database.
Which requests are collected
Only page requests are collected in the uMarketingSuite. Requests to images (.png, .jpg, etcetera) and css-files are ignored.
Also all requests to the /Umbraco/-folder are ignored.
There are several configuration options to adjust the collecting process.
- You can limit the amount of data records that are stored in memory. If you're a limited in memory you can adjust these settings to fit your needs.
- The IP Address is anonymized by default. There is an option to change this
- You can turn off serverside tracking. This can be useful if not every page requests reaches your websites. This could be the case if you're using CloudFlare for example.
The amount of data that you can collect via serverside is limited. Visitors have all kinds of interactions when your website is loaded; they can scroll, they can click on the website, they watch videos and click to other pages (inside and outside of your website).
- The maximum scrolldepth as a percentage of the whole page and in absolute pixels
- The links you have clicked and at what moment you've clicked these
- The time you've been 'engaged' on the page. We track the time that you're actively using the page. We see whether you are scrolling, moving your cursor, and typing. As long as you are doing that we track the time. As soon as you do not anything of the above we stop the timer until you start doing 'stuff' again. So if you've opened a page, but you went away for a cup of coffee for ten minutes this time will still be less than a minute probably. Also if you've opened the page in a tab for example, but you are using another website at the moment, we will not count that time. We stop measuring time as soon as you haven't done anything for 5 seconds.
To enable these events you'll need to load the file on your page /Assets/uMarketingSuite/scripts/uMarketingSuite.analytics.js at the end of your page.
When a visitor exits the page (an unload-event) by going to another page or closing the tab or browser all these collected clientside events are sent to the server and stored in memory as well.
Some automagic script
If you look in the source code of your website (or this website if you want) you will see one line of code that is automatically inserted by the uMarketingSuite. It probably looks like something like this:
This snippet of code makes sure that if you're loading our uMarketingSuite.analytics.js-file it will automatically link the exact page visit to the submitted clientside events.
Creating custom events
It is also possible to push your own events to the uMarketingSuite. It works for 80% the same as Google Analytics Event Measurement.
Google Analytics Bridging library
There is a chance that you've already implemented all kinds of events via Google Analytics with their syntax:
ga('send', 'event', [eventCategory], [eventAction], [eventLabel], [eventValue], [fieldsObject]);
If that is the case you can simply include a bridging library that we've created. This bridging library makes sure that all custom events that are sent to Google Analytics will also be sent to uMarketingSuite. These events will now be sent to both systems.
The only thing you'll need to do is include the script \Assets\uMarketingSuite\Scripts\uMarketingSuite.analytics.ga-bridge.js somewhere on your page: