What can be tracked?
So what can be tracked? Basically anything that can be found out using Javascript. Here is a description of the variables that are currently tracked using pdftracker and their meaning:
id
The id value is a pseudorandom number that is generated the first time a tracking PDF is openend. This value can be made persistent using Javascript and is used any time the user opens another tracked PDF. Basically it is the same as a HTTP cookie, it enables us to track the user over different sessions (e.g. different document, different network).
sessionid
The sessionid value is a pseudorandom number that is generated at the beginning of a session. It is used to identify requests that belong together.
timestamp
The timestamp is created at the server side once the HTTP request is received. Note that this server is in Darmstadt, Germany, so it is on CEST.
localdate
This is the local date at the client. Using it you can guess the timezone of the user or see if his clock is off.
ip
This is the IP address of the viewer.
host
For convenience reasons, a DNS reverse lookup is done at the server, so this is the hostname of the client.
viewertype
This indicates the client application type. For a detailed description, please see page 82 of the Acrobat JavaScript Scripting Reference.
viewervariation
This indicates the variation of the client application type. For a detailed description, please see page 83 of the Acrobat JavaScript Scripting Reference.
viewerversion
This indicates the version number of the viewer.
formsversion
This indicates the version of the forms software within the client. For a detailed description, please see page 76 of the Acrobat JavaScript Scripting Reference.
platform
This indicates the platform the viewer is running on.
language
This indicates the language that is used by the application. For a detailed description, please see page 77 of the Acrobat JavaScript Scripting Reference.
plugins
This shows the number of plugins that are available to the viewer. Actually, the names of the plugins and whether they are enabled could be tracked, too. But this list is mostly huge and boring, so at the moment is left out.
useragent
This shows the user agent that is used to submit the request. If the PDF is viewed inside a browser, this is actually the browser's user agent string.
url
This shows the url at which the PDF is located. This is especially interesing if it starts with file:///, as one can then see where the file is saved on the computer.
external
This shows whether the PDF was opened in an external window (true, mostly a browser window) or using the standalone application (false).
pagenum
This shows the page number the user currently views. At the moment this is updated every 10 seconds.
zoom
This shows the zoom level the user currently users. At the moment this is updated every 10 seconds.
mouseX
This shows the x-coordinate of the mouse position. At the moment this is updated every 10 seconds. It seems to be relative to/within the document coordinates.
mouseY
This shows the y-coordinate of the mouse position. At the moment this is updated every 10 seconds. It seems to be relative to/within the document coordinates.
layout
This shows the layout mode the user is currently in. At the moment this is updated every 10 seconds.
fullscreen
This shows whether the viewer is currently in fullscreen mode or not. At the moment this is updated every 10 seconds.