Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Fixed some capitalization, comma splices, etc.

...

There are two main parts of this development, :

  • the

...

  • REST part is responsible for tracking Bitstream downloads, and links them with:
  • the angular integration that is responsible

...

  • for sending the events for the site navigation, Item view and search.

On the first navigation you will be notified about cookies, once .  Once opened up to customize them, you can choose which cookies are going to be installed.

Cookie Settings - MatomoThe integration would track these actions:

...

So, generally once the cookies have been set on the user's browser all the interactions of that user within the system will be tracked. You can see all those interactions by opening the matomo Matomo dashboard ( by default if you're using the docker Docker configuration would be matomo-dashboard )

...

Once enabled, you should check also the matomo.siteId and the matomo.tracker.url, both . Both of them must be aligned with your current installation. By default they're set to a local instance started with the docker-compose-matomo file.

...

Each ViewEvent received on the REST side would be parsed and then sent to the matomo Matomo tracker by using the following components:

...

Each event is intercepted by the MatomoEventListener and processed by the MatomoSyncEventHandler that generates a proper request using the configured enrichers ( MatomoRequestDetailsBuilder ) and sends them to the matomo Matomo tracker using the MatomoAsyncClientImpl

...

If you would like to try it out, you must start the docker Docker instance of dspace DSpace and matomo Matomo using the proper docker-compose commands.

If you need to setup a dspace DSpace from scratch, you must build the Dockerfile with the command:

...

  1. You need to:

    • Create a proper user
    • Create a proper siteId - The first one should be always set to 1 ( matomo.request.siteId on matomo.cfg)
    • Create a siteId - Matomo-Docker-SiteId and save it property.
    • Create a new authToken - Matomo-Docker-AuthToken and save it properly ( be .  Be careful since this token shouldn’t set to allow only secured requests otherwise it won't work).
  2. You need to set check these properties inside the matomo.cfg file:

    Code Block
    languageplain
    titlematomo.cfg
    collapsetrue
        # Enables matomo integration mapped inside the MatomoEventListener
        matomo.enabled = true
        # Configured `siteid` inside the matomo dashboard
        matomo.request.siteid = 1
        # The tracking endpoint of matomo
        matomo.async-client.baseurl = http://localhost:8081/matomo.php

  3. Startup / Restart DSpace and try to download a bitstream that has been placed inside the ORIGINAL bundle ( default bundle configured for Matomo integration )

  4. You should see a mapped request inside your Matomo dashboard with the bitstream details - Matomo-Docker-Dashboard

...

The siteId and the trackerUrl must be compatible with the one set on the REST side, since they need to communicate with the same matomo Matomo instance.

If you start the env using dockerDocker, those two addresses are differente different because internally the docker matomo Docker Matomo container has a different address.

...