IP Mapping Visitor Agent module

This module controls the insertion of IP addresses into the database table for site visitors. If there is no desire to capture site visitor information then this module does not need to be configured at all. To capture visitor information it is necessary to configure the module and assign it to a location on the site template, often in a footer (or a header) position.

The Visitors Agent module setting screens are shown below:

Figure 4.14. Visitors Agent Module details

Visitors Agent Module details image.

In the module details one defines the position where one wished the module to be placed. It is common to not display the module title and of course the module should be published IF it is desired to collect visitor information.

Figure 4.15. Visitors Agent Module HTML5 geolocation

Visitors Agent Module HTML5 geolocation.

The use of HTML5 geolocation is optional since it can impact the visitor usage of the site. For that reason the default is not to enable it. Not all browsers support HTML5 geolocation, hence forth known as geolocation in this document. Most of the common browsers do but how they interpret the design and implement it can vary.

If enabled when a visitor is upon a page, a small popup wndow is initiated to ask the user whether they wish to share their location details with the site. This is part of the browser design. The user has a number of choices:

  • To share the details of the visitor on a single (one time only) basis.

  • To share the detail on this and every other page on the site and make it the default, so the user is not prompted again.

  • To decline the request and not provide details for this page.

  • To decline for this and every other page upon the site and make it the default.

  • To ignore the request or just close the popup window.

[Note]Note

Not all browsers provide all of the options, or do not immediately appear to do so.

The first four possibilities are easy to handle since they are simple yes or no responses. If the user replies yes then their location is stored by the component. Likewise if they decline to share then the default IP location determination is used and stored.

The last possibility requires some special handling since we require to either store the geolocation determined value or the IP determine location. A timer is implemented that will, if no response is received store the IP derived location. There is some additional code that handles the situation where the user later decides to share their location, in which case an attempt is made to update the earlier store IP derived location.

The position to place the Visitor Agent is usually on a position that is on all the site pages such as a footer, or a header.

Figure 4.16. Visitors Agent Module assignment

Visitors Agent Module assignment image.

[Note]Note

The module assignment screen will look slightly different to the above dependant upon the specific menus available upon the specific site.

Figure 4.17. Visitors Agent Module Parameters

Visitors Agent Module Parameters image.

The parameters are really self evident. If the administrative component is configured the API key for the IPInfoDB will be used. If it is not specified in the component then it is necessary to specify it in the Agent module.

To restrict the number of markers on the ‘visitor’ map displays one can specify a value in the module. This value is then used to restrict the number of values contained within the database for the ‘visitors’ reason.

The lifetime of the ‘visitors’ reason within the database can also be specified in the module. This means that only a few hours worth of entries are available for mapping.

Any web site gets a number of visit from robots such as Google, Yahoo etc. If it is desired to also collect this visitor information then the option is available.

Prior to release 1.2.3 the list of robots, or web spiders as they are often named, was build into the module. The list was periodically updated, but may not contain any specific robot that may visit a specific site. There are literally hundred if not more, robots, and more are being deployed upon a regular basis. This means that it would be a virtually impossible task to ensure that they are always up to date, and 'complete. For that reason the robots list was relocated to a separate database table, and the ability provided for site administrators to add, edit and otherwise control the specific robots it is required to block for a specific site. See the details of the robots screens above.

Finally it is possible to apply a country filter to the collected results, so for example it may be desirable to only collect information for the United Kingdom. A drop down select list is provided to select the desired country.

[Note]Note

Note that it has not been possible to verify that all of the countries it is possible to specify, work as expected, mainly due to the fact that we do not receive visitors from all of the countries (currently).

[Note]Note

Private (or reserved) IP addresses are not recorded by the visitors’ agent.

[Note]Note

Version 1.3.0 of the visitor agent has been extensively modified to handle the HTML5 geolocation, but also to centralise more of the PHP functions in a helper class. For this reason the module is smaller than previously. If also makes AJAX calls back to the server to handle the storing of the results in the database.

Go To Top

Joomla! Debug Console

Session

Profile Information

Memory Usage

Database Queries