This is an old revision of the document!
Installing the Engage - CRM integration for on-premise customers using Lime CRM version 13 or above
Lime Engage is an add-on for Lime CRM that lets customers create internal competitions to help them to try improve certain activities, behaviours and results.
For example, a sales team may run a competition to try and increase the number of booked meetings, or cold calls. A support team may try to close down as many tickets as possible in a certain amount of time.
This integration lets you define a configuration that means when certain events are triggered in Lime CRM, a user in Engage will be rewarded in Engage.
Contact information
- James Pember (james.pember@lime.tech), PM Engage
- Bryce Sampson (bryce.sampson@lime.tech), Dev Engage
Pre-Requisites
- Lime CRM Server Version 13.0.0 or above. If your customer is running a version 12.X or lower, please refer to [this documentation](https://docs.lime-crm.com/addons/engage/start).
- Customer needs a
solution-customernamerepository on Github which is compatible with Lime Server 13.0.0
Installing the Engage package in the customer's solution
Step 1a - Add ''addon-engage'' as a dependency in the solution-repo
First, we need to tell our customer's solution that Engage is a dependency. In other words, when we install the customer's solution it should also install Engage, and other other add-ons we want. This is a new more powerful way of keeping track of which add-ons are installed on which on-premise installations. A far better way than just limeplug install in other words :)
Task: Add addon-engage to the list of dependencies in the pyproject.toml file in their solution repository. A good rule of thumb is to take the latest version of the add-on and then define that you want that version or greater (⇐)
You can always browse the latest releases of addon-engage here: https://github.com/Lundalogik/engage-integration-crm-arbiter/releases
Your projectpy.toml file should look something like this:
[tool.lime.dependencies] addon-engage = '>=1.x.x' addon-anothercooladdon = '1.0.2'
Step 1b - Make sure ''lime-ci'' Github user is a collaborator on your solution-repo
Open up your solution-repo on Github and click the Settings. Then click the “Collaborators & Teams” tab in the sidebar, scroll down to the Collaborators section and add the lime-ci user with both Write and Read access.
This is needed because this is the Github user who will handle auto-releasing new solution packages for us.
Step 2 - Merge this dependency change to master and trigger a new release of the solution
Now we need to create a new release of your package with your updated list of dependencies, including addon-engage.
To do this, we use a clever tool called Semantic Release - which means we can use our commit messages to trigger a new release.
Task: Commit your changes to master (either direct to master or via Pull Request, both are fine) with the following commit message below
fix: Added Engage dependency to solution
If you do not include the fix: prefix to your commit message, you will not get auto-releases so do not forget it :)
Step 3 - Ensure that your solution builds successfully
Every time you commit code to your solution-repo, our build server on Jenkins will run your solution, try build the code, run the tests and generally make sure everything looks good.
Before proceeding we need to ensure everything looks good with our codebase, even if just made a small change to the dependency file.
Browse to https://jenkins.lime.tech/ Search for your solution It will probably show up at a link like https://jenkins.lime.tech/job/plugins/job/solution-customername/
Task: Make sure the master branch is a nice big green tick!
Step 4 - Export your solution
To export a solution, do the following:
- Browse to https://jenkins.lime.tech/job/lime-crm-solution-exporter/ and login by pressing on the login button in the upper right corner.
- Press the Build with Parameters button in the sidebar menu.
- Fill in the form with your
solution-repo, what version of your solution you want (_just make it a higher version than the one you have now in yourprojectpy.tomlfile_) a desired CRM version and press BUILD. - This will start a new job that will export your solution and publish it on github as a release asset under the “releases” tab (e.g. https://github.com/Lundalogik/<solution-name>/releases).
Task: Build and release a new solution using the Solution Exporter steps above
Note: When a solution is exported it is built for a specific version of Lime CRM, the one you just chose in the form above. That means that every time you upgrade a server, you need to export the solution again. Otherwise, you might re-install the previous version of Lime CRM when installing the solution.
Step 4 - Install the solution on the customer's server
First we need to download the exported solution from github (https://github.com/Lundalogik/<solution-name>/releases). Go to the releases page for your solution-repo, find the new version (it should of course be the latest one), and open it. Scroll down to the Assets section and you should see some files that look like exported-xxxxxx.tar.gz.
Task: Download the exported-xxxxxx.tar.gz file and place it on the customers server
Now, within the customers CRM environment, open up Limefu and make sure you are running it as an Administrator.
Make sure you're in the same directory as the .tar.gz file and then run the following command to install the new solution we've packaged up.
limefu solution install /path/to/<solution-{solution-name}-{suffix}.tar.gz>
Finally, you have to restart every installed Lime Service (Event Handler, Web Server etc) such that the customisations in the solution is picked up by Lime CRM. Open the Services application and do this now.
Verify that addon-engage was installed
Go to the customers Lime Admin, open the Miscellaneous tab and make sure Lime Engage shows up in the sidebar. If so, the solution and add-on are installed! 🎉 Great job!
Engage Time! 🔥
OK! So now you have installed the addon-engage package onto the customers CRM server. However, now you need setup the Engage side of things.
Step 5 - Create an Engage account for the customer
Task: If the customer has not used Engage before, go to https://app.lime-engage.com/register to create an Engage organisation for them.
You will be asked to add a Name, Email and Password. Do not use your own information, instead use the information of person at the customer who will be responsible for Engage. This will make this person the “Account Owner” for Engage.
Task: Please save this email and password in Password State on the customers card.
You will now be able to login with this account and you'll land on an empty Dashboard.
Step 6 - Generate an Engage API key for this account
Once on the Dashboard, logged in as the customer, click on the users profile in the top-right and click Edit Profile, and then API Key.
Task: Generate a new API Key and go and save it in PasswordState. You'll need this for configuring Engage later!
Step 7 - Set this to a Lime CRM integration customer in the Engage BackOffice
This is an admin portal for Engage where you can do a bunch of cool stuff.
Make sure you are logged in as a SUPER_USER and go to The Engage Backoffice https://backoffice.lime-engage.com/halo_backoffice/organizations
Find the account/organiztion you just created (it should be up the top), click the Edit button and make sure the “Lime CRM Integration” checkbox is checked, then save by pressing Update Organization, the red button.
