Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 4.3.x will end 7 October 2024 (12 months).
  • Bug fixes for security issues in 4.3.x will end 21 April 2025 (18 months).
  • PHP version: minimum PHP 8.0.0 Note: minimum PHP version has increased since Moodle 4.1. PHP 8.2.x is supported too.

Differences Between: [Versions 310 and 403] [Versions 311 and 403] [Versions 39 and 403] [Versions 400 and 403] [Versions 401 and 403]

(no description)

File Size: 255 lines (12 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class

Client:: (6 methods):
  __construct()
  userAgent()
  city()
  country()
  insights()
  responseFor()


Class: Client  - X-Ref

This class provides a client API for all the GeoIP2 web services.
The services are Country, City Plus, and Insights. Each service returns
a different set of data about an IP address, with Country returning the
least data and Insights the most.

Each web service is represented by a different model class, and these model
classes in turn contain multiple record classes. The record classes have
attributes which contain data about the IP address.

If the web service does not return a particular piece of data for an IP
address, the associated attribute is not populated.

The web service may not return any information for an entire record, in
which case all of the attributes for that record class will be empty.

## Usage ##

The basic API for this class is the same for all of the web service end
points. First you create a web service object with your MaxMind `$accountId`
and `$licenseKey`, then you call the method corresponding to a specific end
point, passing it the IP address you want to look up.

If the request succeeds, the method call will return a model class for
the service you called. This model in turn contains multiple record
classes, each of which represents part of the data returned by the web
service.

If the request fails, the client class throws an exception.
__construct(int $accountId,string $licenseKey,array $locales = ['en'],array $options = [])   X-Ref
Constructor.

param: int    $accountId  your MaxMind account ID
param: string $licenseKey your MaxMind license key
param: array  $locales    list of locale codes to use in name property
param: array  $options    array of options. Valid options include:

userAgent()   X-Ref
No description

city(string $ipAddress = 'me')   X-Ref
This method calls the City Plus service.

param: string $ipAddress IPv4 or IPv6 address as a string. If no

country(string $ipAddress = 'me')   X-Ref
This method calls the Country service.

param: string $ipAddress IPv4 or IPv6 address as a string. If no

insights(string $ipAddress = 'me')   X-Ref
This method calls the Insights service. Insights is only supported by
the GeoIP2 web service. The GeoLite2 web service does not support it.

param: string $ipAddress IPv4 or IPv6 address as a string. If no

responseFor(string $endpoint, string $class, string $ipAddress)   X-Ref
No description