matomo-org / plugin-DeviceDetectorCache

Makes tracking in Matomo Analytics faster by detecting many devices, operating systems, bots, and browsers from a cache.
https://matomo.org
GNU General Public License v3.0
3 stars 7 forks source link

Adjustments for client hints support #44

Closed sgiehl closed 2 years ago

sgiehl commented 2 years ago

Description:

With https://github.com/matomo-org/matomo/pull/18843 support for client hints will be introduced in Matomo.

As this plugin currently only caches based on the useragent, the additional client hint details would currently be lost. On the other side it won't make sense to create cache entries based on the useragent and the client hints, as client hints won't be included in any log files.

So I've decided the extend the parser classes used for parsing browser and operating system. The cache entries are still stored based on the useragent. But if client hints are provided, the extended parsers will be used to enrich the results with the client hints.

As parsing the client hints is quite fast and still rarely sent at all, I don't think it's needed to included that in the caching.

Note: The changes in this PR should also work with Matomo versions nor using DeviceDetector with client hints. It therefor shouldn't be needed to increase the minimum required version.

Review

sgiehl commented 2 years ago

The system test should run again, once the changes on core were merged.

sgiehl commented 2 years ago

@AltamashShaikh I'll merge this PR now, as we need it to have running tests in core. Could you release a new version of this plugin the coming days? The changes in the PR are backwards compatible, so there shouldn't be any change needed in the required Matomo version.