Aller au contenu

[Résolu] Cron Job qui ne veut pas s'exécuter !?


Messages recommandés

Bonjour tous le monde, 

Depuis quelques jours je m'arrache les cheveux à tenter de créer un Cron Job qui as pour but de poster un tweet (prédéfini) toutes les deux heures.

Pour mettre en oeuvre cela, j'ai d'abord créer le dossier "Tweet" dans le dossier "web" de mon syno DS213, ensuite j'ai été sur "https://apps.twitter.com" pour créer une app et ainsi obtenir mes API Keys (pour ceux que cela intéresse, je me suis basé sur la première partie de ce tuto en anglais - http://www.pontikis.net/blog/auto_post_on_twitter_with_php).

Puis j'ai donc placer les fichiers nécéssaire dans mon dossier "Tweet", j'ai opter pour ce script php (https://github.com/vickythegme/cron-job-twitter) en suivant ce tuto toujours en anglais - http://vickythegme.com/set-up-cron-job-twitter-api/

Ensuite et pour finir, j'ai configurer mon Cron Job en suivant ce tuto (en français cette fois-ci) http://www.maxy.fr/article/programmer-une-tache-cron-depuis-un-nas-synology

J'ai donc juste changer les script en mettant à la place ceci :

/usr/bin/php /volume1/web/Tweet/cron.php

Voilà pour la première partie. Si quelqu'un connait ou as envie de me donner une meilleure solution, un meilleur script ou tout simplement commenter ma façon de faire, je suis ouvert à toutes propositions !!! ;-)

 

RÉSULTATS :

Lorsque j'exécute ma tache Cron, j'obtient ceci (voir image) 

result.png.12f07627f2d22ff94d85c04b68c06582.png

 

Apparement la tache s'execute bien mais le problème est que rien n'apparait dans la timeline de mon compte Twitter.

Je cherche et re-cherche depuis plusieurs jours d'ou peut venir le problème mais rien n'y fait, impossible de trouver.

Est-ce un problème de droit de fichiers et de dossier ? un problème lier à la sécurité de mon Nas ? un problème lier à mon code php ? ...etc

 

Si une bonne âme charitable passe par ici, et souhaite me venir en aide, je suis toute ouïe !

 

 

 

 

Modifié par Artizer
Problème résolu
Lien vers le commentaire
Partager sur d’autres sites

Oui, j'ai tester, il n'y a pas d'erreur, j'ai l'impression que le script s'execute bien puisque je voit qu'il communique avec l'extérieur mais rien n'apparait dans ma timeline, c'est idem !

 

J'ai verifier et encore verifier mes paramètre php, je suis en php 5.6 et j'ai bien activer CURL extension qui est en version 7.50.3 et j'ai bien aussi activer OpenSSL en version 1.0.2j 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 5 heures, Einsteinium a dit :

Ah je viens de voir... tu n'as pas mis le -f dans ta ligne de commande :mrgreen:

J'en avait fait deux ;-) 

une avec et une sans histoire de tester et le résultat est idem !!!

 

Il y a 5 heures, Fenrir a dit :

Sinon les call http ça marche bien aussi (je trouve ça plus pratique car portable et utilisable à distance)

Merci, si tu avait des exemples ca serait un peu plus intéressant.

Lien vers le commentaire
Partager sur d’autres sites

Bon y a du nouveaux, en local ça fonctionne! Le tweet apparaît bien dans ma timeline mais via une Cron dans le Nas, ça bloque toujours! Le script s'exécute bien puisque ça affiche "Normal(0)" mais rien n'apparaît dans ma timeline. De plus, j'ai cocher la case envoyer un e-mail mais aucun e-mail n'est envoyer ou reçu !!!

Une petite idée !?


Envoyé de mon iPad en utilisant Tapatalk

Lien vers le commentaire
Partager sur d’autres sites

 


Oui, c'est ce que j'aurais voulu faire un script .sh mais j'ai chercher avec mon ami Google et je suis totalement newbies en la matière et je ne sais pas comment coder ça ! Je gère un peu le pyton, le php et le html mais ca....!?


Envoyé de mon iPad en utilisant Tapatalk

 

Modifié par Lucien77
Inutile de citer le post précédent
Lien vers le commentaire
Partager sur d’autres sites


Ah ok, j'avais pas compris, donc à la place de "adresse" je place l'emplacement de mon script php!!? C'est bien ca! Si oui j'essaierai ça cette nuit!

Merci à toi pour ton aide

Modifié par Lucien77
Inutile de citer le post précédent
Lien vers le commentaire
Partager sur d’autres sites

  • adapte ton script php pour qu'il soit utilisable via un navigateur (pas besoin de page html, il doit juste accepter les post ou les get et les traiter)
  • vérifie qu'en l'appelant depuis un navigateur ça fonctionne (test avec un get, c'est plus facile)
  • ensuite test cette même adresse en ssh avec curl
  • si c'est bon, ajoute une authentification basic et transforme le get en post (c'est plus propre)

nb : si tu es plus à l'aise avec python, il y a un paquet sur le syno

Lien vers le commentaire
Partager sur d’autres sites

Ok merci à toi pour toutes ces précisions qui me seront sûrement très utile pour cette nuit de test! J'ai encore passé la nuit dernière à tenter de résoudre le problème qui maintenant bloque uniquement sur le Nas, en local tout fonctionne !

Je vous tiens au jus de l'avancer

Merci à tous

Modifié par Lucien77
Inutile de citer le post précédent
Lien vers le commentaire
Partager sur d’autres sites

Bon, je viens vous donner des news !!!

Donc, avec un bash du style :

#!/bin/sh
curl "/volume1/web/mondossier/montweet.php" &
exit 0

ca ne fonctionne toujours pas !!! grrr

 

Maintenant, si je passe par une URL directement du style "http://adresse.de.mon.nas/mondossier/montweet.php

ca fonctionne nickel, mais c'est une requête GET

 

Donc si je comprends tout bien, je dois faire :

#!/bin/sh
curl "http://adresse.de.mon.nas/mondossier/montweet.php" &
exit 0

et ca devrait fonctionner !?

Lien vers le commentaire
Partager sur d’autres sites

Bon, je viens aux nouvelles et c'est trop trop bizarre !

 

J'ai donc fait cela :

#!/bin/sh
curl "http://adresse.de.mon.nas/mondossier/montweet.php" &
exit 0

et la chose bizarre est que lorsque j'execute la tache pour tester, en cliquant simplement sur le bouton "Éxecuter", tout ce passe bien et le tweet apparait bien dans ma timeline.

Mais lorsque je laisse la tache activer pour s'exécuter toutes les 2 heures, rien ne se passe !!! Rien dans ma timeline, aucun mail de retour...etc mais pourtant lorsque je visionne le résultat, ca m'affiche toujours "Normal(0)".

Une petite idée d'ou cela pourrait provenir ?

J'avoue que tout ca m'embête beaucoup, surtout de ne pas réussir a faire passer cette Cron en php car j'avais pour ambition de créer un script php qui générerait des tweet aléatoires!

 

 

Lien vers le commentaire
Partager sur d’autres sites

Bon, je viens vous donner des news et placer le sujet comme résolu !

En fait le problème venait de l'API Twitter qui empêche de poster le même tweet en mode robot !!! Grrrrr

Juste une dernière question, il y a moyen avec un script bash qui irait prendre aléatoirement dans le meme dossier un fichier php!

Genre dans un dossier sont placés 30 fichier php, nommer comme ceci :

- tweet_A.php, tweet_B.php, tweet_C.php, tweet_D.php ...etc

Et le script bash en execute un aléatoirement !

 

Merci à tous pour votre aide précieuse ! ;-)

 

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.