Je suis entrain de faire une synchronisation automatisé entre WooCommerce et Dolibarr via des webhooks et des travaux planifiés.
Dolibarr reçoit bien les données de WooCommerce et les mets en attente de traitement le temps que la tâche planifiée s’effectue. Mon problème, c’est qu’elle ne s’effectue jamais et j’ai un petit pictogramme attention avec le message « Retard » qui apparait à coté.
Si je lance manuellement cette tâche, elle fonctionne.
Quelqu’un aurait une idée ou un début de solution ?
j’ai vu que dans la configuration du module « Travaux planifier » il était possible de tester avec une URL, je génère bien une clé secrète, mais quand je test j’ai ce message d’erreur qui apparait :
« Accès refusé.
Vous essayez d’accéder à une page, région ou fonctionnalité d’un module désactivé, ou sans être dans une session authentifiée, ou avec un utilisateur non autorisé. »
L’admin a bien tous privilèges possibles dans Dolibarr.
J’ai testé en mettant un id dans l’url et c’est la tache « Traitement de toutes les commandes délivrées par crochet Web (WebHooks) » qui me pose problème.
Si je le fais manuellement avec le bouton play, ça fonctionne parfaitement !
J’ai un vieux souvenir qui me reviens : sur cet hébergement en mutualisé, j’avais du bidouiller un truc, car le script de lancement des cron n’est pas contenu dans le htdocs, mais dans un autre sous repertoire de l’archive d’installation.
il avait fallu que je mette l’arborescence de l’archive /scripts/cron au même niveau du htdocs renommé.
Et peut être une redirection ou des droits ou une modif du script pour les chemins, je ne sais plus. (et là pas le temps)
Regarde les commande (système) à lancer en bas de la config du module pour savoir quoi mettre où.
pour que ça fonctionne sur du mutualisé OVH (et peut être d’autres mutualisés) :
mettre /script/cron de l’archive d’installation, au même niveau que ton dossier /tonrepertoiredolibarr
modifier le fichier /script/cron/cron_run_jobs.php : vers le début, il y a des chemins (en dur, ou avec des variables ne pouvant pas être interprêtée, je ne sais plus), il faut les adapter à ton environnement :
où :
cheminabsoludetonhebergement : c’est le chemin absolu de ton hébergement sur le serveur mutualisé (dispo dans la console ovh par exemple)
tonrepertoiredolibarr : c’est le nom que tu as donné à ton rep dolibarr (« erp » dans ton cas)
la piste est là, mais je ne sais plus si c’est exhaustif ^^
Merci pour votre réponse, désolé d’abuser de votre temps, mais je suis complètement novice et je ne sais pas ce qu’est la console OVH ou du où elle se trouve ?
Bonjour,
Je reviens vers vous parce que je ne trouve pas de solution :
J’ai déplacé mon dossier script pour le mettre au même niveau que mon dossier erp.
J’ai modifier le fichier « cron_run_jobs.php » pour remplacer 3 chemins du style « /home/XXXXX/erp/master.inc.php ».
J’ai relancé le test via l’url et j’ai toujours le même résultat.
Au niveau de mes Webhooks sur WooCommerce, celui qui envoi les données à la modification d’une commande fonctionne, j’ai mes données en attente sur Dolibarr.
Par contre, celui qui envoi les données à la création d’une commande, m’envoi un message d’erreur 401 Unauthorized.
Donc j’ai des problèmes de droit sur Dolibarr et WooCommerce, les deux sont ils liés ?
les log dolibarr : en activant le module de log (trace, je ne sais plus comment il s’appelle)
les logs serveur : chez ton hébergeur. (si tu ne trouves pas, demande leur)
Je n’ai plus le message d’accès refusé,
maintenant j’ai ça « cronjobid: 5 priority=90 entity=1 label=ECommerceProcessPendingWebHooks - not qualified cron_run_jobs.php » quand je test avec l’url & ça ne lance plus la tache.