tetsuo13 / Roundcube-Matomo-Tracking-Api-Plugin

Add Matomo (formerly Piwik) tracking server-side code to all requests in Roundcube
Other
1 stars 0 forks source link
matomo piwik roundcube-plugin roundcube-webmail-plugin

Matomo Tracking Plugin for Roundcube

Continuous integration Stable Version

This plugin integrates Matomo analytics using the Matomo Tracking API into Roundcube. This plugin is very different from the Roundcube Webmail piwik analytics plugin which adds the client-side JavaScript Tracking Tag. The aim of this plugin is to add Matomo integration on the server-side in order to get around same-origin policy.

If your Matomo installation is on the same domain as your Roundcube installation and both are using the same protocol, then this plugin is probably not what you need as it will not add any significant value over the JavaScript Tracking Tag. Some example cases where this plugin shines:

Install

Install using Composer or manually download and install into plugins/matomo_tracking_api. Copy config.inc.php.dist to config.inc.php in the same directory and edit the file using the options shown below.

Add matomo_tracking_api to $config['plugins'] in your Roundcube config to enable the plugin.

Configuration

Copy config.inc.php.dist to config.inc.php and edit the configuration variables. Set optional variables to null when unused.

matomo_tracking_api_url [string]

Set this to the URL of the Matomo installation. This URL must be accessible from the Roundcube installation.

matomo_tracking_api_site_id [int|array(string => int)]

Configures the Matomo site ID. The value of this variable can either be a single integer or an array containing multiple server names and IDs in cases where a single Roundcube installation serves multiple hosts.

To set multiple hosts, use the key/value pair of server name and Matomo website ID. For example:

$rcmail_config['matomo_tracking_api_site_id'] = array(
    'webmail.foo.com' => 42,
    'webmail.bar.com' => 13
);

matomo_tracking_api_track_user_id [boolean]

When enabled, the user's email address will be used to connect multiple devices and browsers. See Benefits of User ID at Matomo's User Guide for more information.

matomo_tracking_api_token_auth [string] (Optional)

Set to the token auth key of a Matomo user in order to take advantage of advanced tracking. Currently utilizes the following if provided: