Technical¶
Map on Card¶
The map on card is a way of visualizing the location of a single object on its card in Lime CRM.
Google API Call¶
We utilize Google's APIs for various mapping and geocoding functionalities in Google Maps Add-on:
- Maps Embed API: Implemented on the frontend to display an embedded map on an object card. Refer to the Maps Embed API for further details.
- Geocoding API: Used on the backend to fetch coordinates based on a location query. More information can be found in the Geocoding API
For communication with Google from an on-premise server, a connection with the Google Geocoding API is required, so that coordinates can be stored based on an object's address. In order for this connection to work, it must be possible to make requests to Google's API service, and a fixed set of IP-addresses must be used and communicated.
Map View¶
The map view is a way of visualzing configured objects in a map view as an alternative to the table or list view. For examples check the "how it works-chapter".
Google API call¶
We use Google's Maps JavaScript API for displaying the embedded map on an object card.
Field Definitions Lime CRM¶
As there are multiple ways to use the Maps add-on, all fields might not be required. It is still recommend to add all of them on the limetype where a map should be shown.
Name | Type | Length |
---|---|---|
maps_longitude | decimal | |
maps_latitude | decimal | |
maps_query | string | 5121 |
maps_lastcoordinatequery | string | 5121 |
- maps_query - Stores the query and can be used as a field to render the map_on_card component.
- maps_lastcoordinatequery - Stores the last used query, used for the map view.
- maps_longitude - Stores the longitude of the object, used for the map view.
- maps_latitude -Stores the latitude of the object, used for the map view.
Components¶
- lwc-limepkg-maps-map-on-card
- This is the webcomponent used to render the "map-on-card" map. Place this on the maps_query field on your card.
Heap¶
We use Heap to track the number of calls each Lime CRM application does towards Google's APIs. There is no tracking of the actual data that is being sent.