Common Errors¶
I cannot Sync my Resource (Email) - 400 Client Error¶
1. Description - ValidationError
¶
When pressing Sync button in the Lime Admin when adding a new resource I get the error:
{
"error": "400 Client Error: Bad Request for url: https://graph.microsoft.com/v1.0/subscriptions/<MY SUBSCRIPTION ID>",
"description": "Subscription validation request failed. Notification endpoint must respond with 200 OK to validation request.",
"code": "ValidationError"
}
1. Solution¶
This is due to that your custom endpoint for notifications doesn't respond correctly. This could be due to some different reasons:
- Your endpoint is not accessable on the internet (Maybe a firewall needs to be configured or a SSH Tunnel needs to be opened to your local machine)
- The Lime user that is configured to be used for MS Inbox (Default:
[email protected]
) doesn't exist. See here
2. Description - InvalidRequest
¶
When pressing Sync button in the Lime Admin when adding a new resource I get the error:
{
"error": "400 Client Error: Bad Request for url: https://graph.microsoft.com/v1.0/subscriptions",
"description": "The remote name could not be resolved: 'my-customer.domain.se'",
"code": "InvalidRequest"
}
2. Solution¶
This is due to that your Miscrosoft cannot access the DNS that directs the request to the customer server.
It could be that your endpoint is not accessable on the internet (Maybe a firewall needs to be configured)
I cannot Sync my Resource (Email) - 403 Client Error¶
Description - ExtensionError
¶
When pressing Sync button in the Lime Admin when adding a new resource I get the error:
{
"error": "403 Client Error: Forbidden for url: https://graph.microsoft.com/v1.0/subscriptions",
"description": "Operation: Create; Exception: [Status Code: Forbidden; Reason: Access is denied. Check credentials and try again.]",
"code": "ExtensionError"
}
Solution¶
This is due to our application in the customers azure portal is missing the correct privileges. Make sure that the customer has done this part in the configuration.
I cannot Sync my Resource (Email) - 404 Client Error¶
Description¶
When pressing Sync button in the Lime Admin when adding a new resource I get the error:
{
"error": "404 Client Error: Not Found for url: https://graph.microsoft.com/v1.0/subscriptions",
"description": "Operation: Create; Exception: [Status Code: NotFound; Reason: The requested user 'MASKED_ENTRY' is invalid.]",
"code": "ExtensionError"
}
Solution¶
This is due to that the email address that you want to listen to is invalid or not accessible
Make sure that the inbox is correct and that you have access (double check with customer).
A "loop of death" has been created, how do I stop it?!¶
Description¶
Lime inbox are sending and recieving automatic replies with another inbox somewhere. Causing infinite amounts of trash-helpdesks to be created.
Solution¶
The reasons for this could be many things, but most likely it's a problem with the email header automatic-reply
not being used the correct way.
From limepkg-ms-inbox v4.1.0
(using limepkg-transactional-message-library v1.2.0
) the lime-inbox helper functions are using this header when sending auto-replies.
But if the other mailbox ignores this and don't send the header themselves, there is not much we can do.
From limepkg-ms-inbox v4.2.0
, what you can do is temporarily inactivate the resource in lime-admin using the checkbox and then sync and save
.
Then ask the customer to remove any offending emails from the inbox manually and then activate the resource again.
I can manually renew the expiration date on a resource but the scheduled task doesn't work!¶
Description¶
Lime inbox works but the automatic renewal of expiration_date_time
does not. But you are able to manually renew it by pressing Sync and Save.
Solution¶
- Ensure that your application has the language
en_us
activated. This is a default language of Lime CRM and should be activated, even though it is not used. Logs usually post something likeInvalid task, this task will not be scheduled. Reason: ['language en_us does not exist on application']
when the scheduled task tries to run (at 18.00, 22.00 and 04.00). - If you have
en_us
activated in your application but still experience problems - ensure that your taskhandler is feeling healthy.
Warning
Beware that activating a language (such as en_us
) in LISA will add missing translations to existing fields and tables. If a user logs in with an untranslated language, they will instead see database names. If possible, try activating the language locally or in a test environment before activating it in the production environment. This way, you can ensure that nothing breaks for the clients and that you can translate and present a good user experience
The recovery functionality doesn't work for my on-prem customer¶
Problem number 1¶
Start with making sure that you get the method not allowed
message from the endpoint internally as described in the solution below.
If it still doesn't work to use the recovery, go to Problem number 2.
Description¶
When using the recovery functionality you get an error similar to this in the webserver log:
Solution¶
Make sure that the configured recovery endpoint is accessible from the application server. You can test this by copying the recovery-URL into a browser on the application server, you should get a message saying method not allowed
. If you don't get method not allowed
, that means that the customers DNS isn't accessible internally, usually it can be fixed by editing the hosts
file on the server.
Redirect customers DNS to localhost by editing the hosts file
- Open the file
%WINDIR%\System32\drivers\etc\hosts
in a text editor. -
Add this line at the end of the file (Make sure to change the
my-customer.dns.com
to the customers DNS):127.0.0.1 my-customer.dns.com
If it doesn't work you need to contact the customers IT and ask them to make the external server DNS accessible internally from the application server as well.
Problem number 2¶
Please make sure that you've solved the problem number 1 before continuing with this solution.
Description¶
If you get an error message like this in the web server logs when trying to use the recovery:
requests.exceptions.SSLError: HTTPSConnectionPool(host='CUSTOMER_HOST', port=443):
Max retries exceeded with url: /URL-TO-INBOX/ENDPOINT/
(Caused by SSLError(SSLCertVerificationError(1,
'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
unable to get local issuer certificate (_ssl.c:1056)')))
It could be many different things but the two most common is:
Potential solution 1 (The customer is using a self-signed certificate)¶
If the customer is using a self-signed certificate it can be a problem for the lime server to trust it. Therefore you can configure what certificate we should verify against when using the recovery.
See Configuration (path_to_verify_cert)
Potential solution 2 (Missing the entire certificat chain)¶
Make sure that the Lime CRM Server certificate is installed with the entire certificate chain.
If it's not, this is one way to add the entire chain:
Danger
Make sure that the connection is secure in the browser
-
To solve this you can in the browser go to the inbox URL where you'll get the
method not allowed
message and download the certificate. -
Open the newly downloaded certification file and the Lime CRM Webserver certificate file
%programdata%\Lundalogik\LIME Pro Server\Web Server\certs\cert.pem
using a text editor. -
Make sure that all the contents of the Lime CRM Webserver certificate exists in the newly downloaded file. The newly downloaded file might contain more though.
- This is just to make sure that you have downloaded the correct certificate
-
If the newly downloaded certificate contains more than the Lime CRM Webserver certificate then copy all the certificates (the entire chain) from the newly downloaded file to the Lime CRM Webserver file.
-
Restart the Lime CRM Webfront service
-
Now it should work!
No emails are coming in automatically, but recovery is working fine.¶
Description¶
There are no emails coming into Lime without running the recovery functionality manually or automatically with the scheduled recovery task. This is common during first setup if there has been issues with firewalls or similar. The problem is most likely that your subscription has been blocked by microsoft due to them not being able to reach our endpoint.
Solution¶
You need to delete the subscription and then add it again.
You do this by pressing the trashcan icon on the resource in Lime Admin and then press Sync and save
. Remember to write down the current configuration before removing it.
After that you just add the same resource again and press sync and save
.