Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
addons:engage:start:crm13orabove [2019-10-18 12:47]
James Pember
— (current)
Line 1: Line 1:
-====== Installing the Engage integration for on-prem customers using Lime CRM version 13+ πŸ”¨πŸ₯‡πŸ™ ====== 
- 
-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-customername'' repository 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:  
- 
-<code> 
-[tool.lime.dependencies] 
-addon-engage = '>=1.x.x' 
-addon-anothercooladdon = '1.0.2' 
-</code> 
- 
-==== 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!** 
- 
-{{:addons:engage:start:screenshot_2019-10-18_at_13.47.12.png?400|}} 
- 
-==== 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 your ''projectpy.toml'' file_) 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.  
- 
-====== Configuring the add-on ====== 
- 
-You are now ready to start building the configuration itself i.e. telling the integration **what to listen to in CRM** and **when to give someone a reward in Engage!** 
- 
-**Task: Add the Engage API key to Lime Admin. Click on Engage in the LimeAdmin->Misc->Engage, open the API Configuration tab and add the Engage API Key you saved a few steps earlier and press save.** 
-  
-Use the following format:  
-''api_key: 'xxxxxx' '' 
  
  • Last modified: 6 years ago
  • by James Pember