Installation Instructions

Prerequisites

  • Knowledge of, and being able to work a configurable mapping document in json format
  • Access to the Lime Field installation intended for CRM integration
  • Access to CRM-server intended for the integration
  • Access and ability to log in to Field windows client in intended installation
  • Access and ability to log in to the CRM windows client in intended installation

Note about verifying limefield-id in Lime CRM desktop client: * After clicking Save on a new item, the integration will sync the data and update the Lime Field ID in Lime CRM. However, this update won't be show until the user refreshes the form. * Note about verifying crmsystem-id in Lime Field: After saving changes in the web/desktop client, hit refresh to see the ID assigned by Lime CRM

Installation

Once the customization is in place and the integration is deployed it will need to be set up and managed. This is most easily done from the Management web application.

Given the base URL https://integration the Management web application is located at https://integration/management. To set up and manage the integration browse to Home > Integrations > CRM.

CRM page tabs: - Details: See the current status of the integration as well as manage it, i.e. perform install, uninstall and disable tasks. - Configuration: View and validate the current configuration. - Log: View the integration error log.

This should be sufficient enough but we can also manage the integration from the command line. Performing the management tasks from the command line is described in the section below.

Using the command line

To perform the management tasks we can call the installation endpoint of the integration directly.

NOTE! A user name and password to the Field installation is required.

Given the base URL https://integration/crmservice we can use the following commands to perform the tasks in both systems.

Install

The integration can be installed by calling the /install endpoint of the integration.

curl
$ curl -X POST -H "Content-Length: 0" https://integration/crmservice/configuration/install -u username:password
powershell
C:\PS> (Invoke-WebRequest -Uri https://integration/crmservice/configuration/install -Method POST -Headers @{"Content-Length" = "0"} -Credential (Get-Credential)).Content

A successful registration will return IsSuccessful: true in the response:

{"IsSuccessful":true,"FieldSuccessful":true,"FieldSubscriptions":["subscriptions/EntityUpdate/88989c68-34e9-4412-a0c2-bf829a","subscriptions/EntityAdd/828cef-9989-2229-bc1f-88298abf","subscriptions/EntityUpdate/282918bf-dea9-4831-9a5d-5282bab9f476"],"CrmSuccessful":true,"CrmHookId":"4004687e-9e57-1234"}

Disable

The integration can be disabled by calling the /disable endpoint of the integration.

curl
$ curl -X POST -H "Content-Length: 0" https://integration/crmservice/configuration/disable -u username:password
powershell
C:\PS> (Invoke-WebRequest -Uri https://integration/crmservice/configuration/disable -Method POST -Headers @{"Content-Length" = "0"} -Credential (Get-Credential)).Content

A successful registration will return IsSuccessful: true in the response:

{"IsSuccessful":true,"FieldSuccessful":true,"FieldSubscriptions":["subscriptions/EntityUpdate/88989c68-34e9-4412-a0c2-bf829a","subscriptions/EntityAdd/828cef-9989-2229-bc1f-88298abf","subscriptions/EntityUpdate/282918bf-dea9-4831-9a5d-5282bab9f476"],"CrmSuccessful":true,"CrmHookId":"4004687e-9e57-1234"}

Uninstall

The integration can be uninstalled by calling the /uninstall endpoint of the integration.

curl
$ curl -X POST -H "Content-Length: 0" https://integration/crmservice/configuration/uninstall -u username:password
powershell
C:\PS> (Invoke-WebRequest -Uri https://integration/crmservice/configuration/uninstall -Method POST -Headers @{"Content-Length" = "0"} -Credential (Get-Credential)).Content

A successful registration will return IsSuccessful: true in the response:

{"IsSuccessful":true,"FieldSuccessful":true,"FieldSubscriptions":["subscriptions/EntityUpdate/88989c68-34e9-4412-a0c2-bf829a","subscriptions/EntityAdd/828cef-9989-2229-bc1f-88298abf","subscriptions/EntityUpdate/282918bf-dea9-4831-9a5d-5282bab9f476"],"CrmSuccessful":true,"CrmHookId":"4004687e-9e57-1234"}

Troubleshooting

CrmSuccessful: false

  • Check the validity of the API key configured for the given CRM application.
  • Check that all limetypes required by the integration exists in the CRM application. If not, Kibana will show the error message 422 UNPROCESSABLE ENTITY.

FieldSuccessful: false

  • Check the validity of the Lime Field credentials.

500 Internal Server Error

  • Check Raygun
  • Enable Error Traces under Settings in the Nancy app: https://github.com/NancyFx/Nancy/wiki/Diagnostics The password to access the /_Nancy route is set in the _web.config file._