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 Type Default Description

Required

apiKey

String

empty string

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

clientId

String

empty string

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

signature

String

empty string

The Google Geocoder API signature.

Optional

useEnterpriseCredentials

Boolean

false

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

useSystemProxy

Boolean

`false

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

timeout

Integer

500

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

MapQuest

For more details, refer to the official documentation.

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

Property Type Default Description

Required

apiKey

String

empty string

The API key.

url

String

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

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

Optional

useSystemProxy

Boolean

false

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

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 Type Default Description

Required

acceptUsageTerms

Boolean

false

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

url

String

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

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

email

String

empty string

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.

referer

String

empty string

Note that either referer or userAgent is required.

userAgent

String

OpenNMS-NominatimGeocoderService/2.0

Note that either referer or userAgent is required.

Optional

useSystemProxy

Boolean

false

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