Geocoder Service

The Geocoder Service resolves geolocation information within Horizon. Horizon supports several geocoder services. By default, geolocation resolution is disabled.

To enable or configure the Geocoder Service, use the web-based configuration tool. In the web UI, click the gear icon and choose Provisioning  Configure Geocoder Service.

Configure the active Geocoder Service via the property activeGeocoderId in etc/org.opennms.features.geocoder.cfg.

Google

The Google Geocoder API requires at least an apiKey or a clientId and signature. For more details, see the official documentation.

The following properties in etc/org.opennms.features.geocoder.google.cfg are supported:

Property Description Type Default

Required

apiKey

The apiKey provided by the Google Cloud Platform. Required only if useEnterpriseCredentials is false.

String

empty string

clientId

The Google Geocoder API client ID. Required only if useEnterpriseCredentials is true.

String

empty string

signature

The Google Geocoder API signature.

String

empty string

Optional

useEnterpriseCredentials

If authentication with clientId and signature is required, set this to true.

Boolean

false

useSystemProxy

Should the system-wide proxy settings be used? Configure the system proxy settings in opennms.conf.

Boolean

`false

timeout

The connection timeout in milliseconds the Geocoder tries to resolve a single geolocation.

Integer

500

MapQuest

For more details, refer to the official documentation.

The following properties in etc/org.opennms.features.geocoder.mapquest.cfg are supported:

Property Description Type Default

Required

apiKey

The API key.

String

empty string

url

The URL template for the MapQuest Geocoder API. The apikey and query strings are substituted before making the request.

String

http://www.mapquestapi.com/geocoding/v1/address?format=json&key={apikey}&maxResults=1&location={query}

Optional

useSystemProxy

Should the system-wide proxy settings be used? Configure the system proxy settings in opennms.conf.

Boolean

false

Nominatim

For more details, see the official documentation and check the Nominatim Usage Policy before using the geocoder service.

The following properties in etc/org.opennms.features.geocoder.nominatim.cfg are supported:

Property Description Type Default

Required

acceptUsageTerms

To use the Nominatim Geocoder Service you must accept the Nominatim Usage Policy. Set this to true to agree to their terms.

Boolean

false

url

The URL template for the Nominatim Geocoder API. The email and query strings are substituted before making the request.

String

https://nominatim.openstreetmap.org/search?format=json&email={email}&limit=1&q={query}

email

According to the official documentation, provide this in case you are making a large number of requests. Alternatively, provide this information in the userAgent property.

String

empty string

referer

Note that either referer or userAgent is required.

String

empty string

userAgent

Note that either referer or userAgent is required.

String

OpenNMS-NominatimGeocoderService/2.0

Optional

useSystemProxy

Should the system-wide proxy settings be used? Configure the system proxy settings in system properties.

Boolean

false