Notifications avancées - commentaires Notifications avancées 2022-03-02T19:58:42Z https://files.spip.net/Notifications-avancees-3981#comment510361 2022-03-02T19:58:42Z <p>Du peu que je sais, de ce que j'ai pour l'instant compris, c'est antinomique : un site PHP classique (et d'autant plus sur un hébergement classique justement) ça ne s'exécute que s'il y a des hits dessus, des visites.</p> <p>Donc soit ton site a plein de visites, et les jobs se lancent souvent. Soit tu dois obligatoirement forcer de faire des hits dessus, et souvent on fait ça avec un cron linux toutes les minutes pointant sur action=cron de ton site (le cron linux n'étant pas forcément sur la même machine que le site, peu importe du moment que ça fait un appel dessus, avec curl).</p> <p>Tant qu'il n'y a pas de hit, le site « n'existe pas », il ne fait rien tout seul, il n'y a pas de logiciel qui tourne tout seul en arrière plan.</p> Notifications avancées 2022-02-22T10:05:05Z https://files.spip.net/Notifications-avancees-3981#comment510305 2022-02-22T10:05:05Z <p>Ce que je demande et qui intéressera aussi les personnes qui n'ont pas la main sur le serveur c'est si il n'y a pas d'autres moyens<small class="fine d-inline"> </small>?</p> <p>merci</p> Notifications avancées 2022-02-22T09:01:58Z https://files.spip.net/Notifications-avancees-3981#comment510304 2022-02-22T09:01:58Z <p>Bé c'est ce que je t'ai décrit non<small class="fine d-inline"> </small>? Tu dois configurer un cron linux pour faire un hit (avec curl par exemple) sur ton site à l'URL action=cron : <code class="spip_code spip_code_inline" dir="ltr">curl http://www.domaine.tld/spip.php?action=cron</code></p> <p>Et ça lance alors les jobs toutes les minutes, en continue, tant qu'il y en a.</p> Notifications avancées 2022-02-22T08:41:19Z https://files.spip.net/Notifications-avancees-3981#comment510303 2022-02-22T08:41:19Z <p>Merci Maieul,<br class="autobr"> je ne connaissais pas.<br class="autobr"> Cela ne semble pas très différent de la page « exec=job_queue »</p> <p>Maieul, Rasta,<br class="autobr"> Je cherche du simple et sans action supplémentaire, soit lancer une action de déclenchement job autrement qu'avec un bouton ou depuis le serveur<small class="fine d-inline"> </small>? <br>- soit via un job déclencheur de(s) action(s) que l'on veut qui aurait un timing plus court <br>- soit modifier le timing du job des notifications avancees<small class="fine d-inline"> </small>?</p> <p>J'ai vu passer la possibilité de dire que les mails étaient « importants » pour squizzer le temps du cron du job.</p> <p>Merci<small class="fine d-inline"> </small>!<br class="autobr"> ++</p> Notifications avancées 2022-02-22T06:53:37Z https://files.spip.net/Notifications-avancees-3981#comment510302 2022-02-22T06:53:37Z <p>Sinon <a href='https://files.spip.net/Plugin-Accelerer-Jobs' class="spip_in" rel='nofollow'>Accélérer Jobs</a></p> Notifications avancées 2022-02-22T00:15:22Z https://files.spip.net/Notifications-avancees-3981#comment510301 2022-02-22T00:15:22Z <p>Oui c'est voulu car les notifs peuvent toutes être potentiellement personnalisées destinataire par destinataire (le contenu final est produit pour chaque destinataire, on peut possiblement y mettre son nom, etc).</p> <p>« super cron » c'est obsolète je crois, la simple action=cron suffit il me semble. Pour cela tu dois avoir la main sur un cron linux (celui du serveur du site par ex, ou pas), et tu le programmes *toutes les minutes* par ex (c'est le plus petit qu'on puisse faire en cron linux), pour appeler l'URL action=cron de ton site. Et hop, ça fait un hit dessus toutes les minutes et lance donc les jobs en attente.</p> Notifications avancées 2022-02-21T23:28:24Z https://files.spip.net/Notifications-avancees-3981#comment510300 2022-02-21T23:28:24Z <p>Apparemment, c'est par ici que ça se passe :)<br class="autobr"> <a href="https://code.spip.net/spip/files/ecrire-action-super-cron.html" class="spip_url spip_out auto" rel="nofollow external">https://code.spip.net/spip/files/ecrire-action-super-cron.html</a></p> Notifications avancées 2022-02-21T23:08:21Z https://files.spip.net/Notifications-avancees-3981#comment510299 2022-02-21T23:08:21Z <p>Bonsoir,<br class="autobr"> je remonte ce thread car j'aurais besoin de cette possibilité : envoyer des notifications plus rapidement, soit activer le cron plus souvent qu'avec des visites. Mais le site de kent1 arsenic n'existe plus.</p> <p>y-a-t-il depuis une autre possibilité<small class="fine d-inline"> </small>?</p> <p>Sinon avec un envoi groupé, ce qui ne semble pas possible - à part en utilisant une liste- tel que je comprends les choses -j'ai tenté différentes approches pour envoyer la liste ou tableau des id_auteurs mais job_queue prend les destinataires un à un.</p> <p>merci<small class="fine d-inline"> </small>!</p> Notifications avancées 2020-05-03T04:35:23Z https://files.spip.net/Notifications-avancees-3981#comment504987 2020-05-03T04:35:23Z <p>Merci beaucoup<small class="fine d-inline"> </small>!</p> Notifications avancées 2020-05-02T09:22:49Z https://files.spip.net/Notifications-avancees-3981#comment504981 2020-05-02T09:22:49Z <p>Ça a été corrigé en <a href="https://git.spip.net/spip-contrib-extensions/notifications_avancees/commit/cfa90d77239ad6e1ed89956a716c018d02dc205b" class="spip_out" rel='nofollow external'>v0.4.5</a></p> Notifications avancées 2020-05-02T02:01:28Z https://files.spip.net/Notifications-avancees-3981#comment504978 2020-05-02T02:01:28Z <p>Bonjour,</p> <p>Pour mémoire :<br class="autobr"> Un bug de Notifications avancées avec le multilinguisme a été signalé <a href="https://contrib.spip.net/Commandes-4527#comment504126" class="spip_out" rel='nofollow external'>par ici</a> :</p> <p>Merci</p> Notifications avancées 2020-02-17T08:36:37Z https://files.spip.net/Notifications-avancees-3981#comment504052 2020-02-17T08:36:37Z <p>Volontiers. Je n'ai pas encore eu l'occasion d'aller plus loin, mais en tout cas, la simple fonction citée plus haut envoie bel et bien, en cas de changement de statut de l'auteur, le mail html. Reste à adapter la fonction pour qu'elle capte la modification du contenu de l'objet à la place... Je pensais poster le résultat (si je trouve), de toutes façons.</p> Notifications avancées 2020-02-13T13:42:06Z https://files.spip.net/Notifications-avancees-3981#comment504024 2020-02-13T13:42:06Z <p>Luc, je serais intéressé par ce que vous venez de décrire.<br class="manualbr">On peut mettre en commun<small class="fine d-inline"> </small>?<br class="autobr"> Merci par avance</p> Notifications avancées 2020-02-11T12:12:22Z https://files.spip.net/Notifications-avancees-3981#comment503999 2020-02-11T12:12:22Z <p>Ok, merci beaucoup pour ces éclaircissements, je vais potasser la chose et te redirai si je parviens à mes fins.</p> Notifications avancées 2020-02-11T09:02:45Z https://files.spip.net/Notifications-avancees-3981#comment503995 2020-02-11T09:02:45Z <p>Une notification est… « enclenchée » on va dire (et non pas « envoyée » car justement par défaut ça ne génère ni n'envoie rien tant que la notif n'est pas « implémentée » par quelqu'un) lorsqu'on appelle la fonction centrale d'API qui est fournit par SPIP directement : <a href="#Appeler-une-notification" class="spip_ancre" rel='nofollow'>#Appeler-une-notification</a></p> <p>SPIP en appelle déjà un certain nombre lui-même dans divers fonctions génériques (objet_modifier, etc). Donc à toi de voir si yen a déjà une d'appelée lors de l'événement que tu veux notifier. Et ensuite faut l'implémenter, soit soi-même dans une fonction qui fait tout (ce que cherche l'API de SPIP par défaut), soit avec les facilitations de ce plugin-ci (décrire quels destinataires, quel contenu, etc), cf sa doc.</p> <p>Si SPIP n'appelle pas de notification pour l'événement que tu veux, eh bé oui là va falloir t'insérer quelque part, dans un pipeline au bon endroit (post_edition, etc) et appeler une notification du nom que tu veux. Il est fort probable que pour l'édition d'un auteur il y ait déjà un appel, car c'est le cas pour tous les objets à priori MAIS, ça va être une notification appelée pour chaque modif, sans savoir de qui elle vient. Si tu veux envoyer une notif seulement quand tu sais que c'est la personne elle-même qui a modifié sa propre fiche, là forcément faut que tu t'insères dans post_edition, que tu testes qui vient de faire la modif de qui, pour comparer, etc.</p> Notifications avancées 2020-02-10T19:21:51Z https://files.spip.net/Notifications-avancees-3981#comment503993 2020-02-10T19:21:51Z <p>En effet, pas. Je me suis peut-être un peu surestimé en m'imaginant que ce serait simple, je ne suis pas très familier des fonctions de SPIP non plus. Est-ce que je peux faire un appel à cette fonction dans ce même fichier PHP et y a-t-il un event quand on édite un auteur (via auteur_modifier() ou revision_auteur()<small class="fine d-inline"> </small>?).</p> Notifications avancées 2020-02-10T18:24:01Z https://files.spip.net/Notifications-avancees-3981#comment503992 2020-02-10T18:24:01Z <p>Mais est-ce qu'il y a bien un <strong>appel</strong> pour lancer une notification avec ce nom quelque part<small class="fine d-inline"> </small>?</p> <p>(et par ailleurs « instituer » c'est juste quand on change le statut, pas les autres champs)</p> Notifications avancées 2020-02-10T17:34:06Z https://files.spip.net/Notifications-avancees-3981#comment503991 2020-02-10T17:34:06Z <p>Bonjour, je cherche à faire quelque chose d'à priori simple, à savoir d'avertir le webmestre quand un auteur modifie sa fiche, mais il semblerait qu'il me manque quelque chose.</p> <p>J'ai créé un mail basique instituerauteur.html ainsi qu'un instituerauteur.php sous squelettes/notifications avec ceci :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code>function notifications_instituerauteur_destinataires_dist($id, $options){ $notifications = charger_fonction('notifications', 'inc'); $options = array('statut' => $statut, 'statut_ancien' => $statut_ancien); return array(1); }</code></pre></div> <p>Que me manque-t-il, pour me coucher moins bête<small class="fine d-inline"> </small>? Merci beaucoup pour tout éclaircissement.<br class="autobr"> Amicalement.</p> Notifications avancées 2019-08-21T13:04:57Z https://files.spip.net/Notifications-avancees-3981#comment502055 2019-08-21T13:04:57Z <p>Cette erreur, c'est après l'installation, une fois que ça n'a pas marché. Mais est-ce que tu vois des erreurs au moment de l'installation, dans le dossiers des logs de SPIP, pour mysql ou sqlite<small class="fine d-inline"> </small>? Genre qui diraient qu'il y a une erreur sur tel champ…</p> Notifications avancées 2019-08-21T11:19:28Z https://files.spip.net/Notifications-avancees-3981#comment502054 2019-08-21T11:19:28Z <p>Bonjour,<br class="autobr"> l'installation du plugin Notifications avancées 0.4.3 échoue sur un SPIP3.2.4 neuf et aucune table n'est installée.<br class="autobr"> « Erreur SQL 1146<br class="autobr"> Table 'spip_notifications_abonnements' doesn't exist »</p> <p>Que faut-il modifier<small class="fine d-inline"> </small>?<br class="autobr"> Merci</p> Notifications avancées 2019-01-25T09:42:52Z https://files.spip.net/Notifications-avancees-3981#comment499711 2019-01-25T09:42:52Z <p>Juste une remarque supplémentaire, Rastapopoulos (oui on est finalement plus dans un album de Tintin :-) dit que si c'est coupé comme ça c'est un problème de PHP, mais ça n'est pas exactement coupé net, c'est un message propre dans la page avec un "." à la fin de la phrase ... Exactement «<small class="fine d-inline"> </small>Le plugin Notifications avancées dépend du plugin S.<small class="fine d-inline"> </small>» sous la bannière "Liste des plugins" avec un joli cadre rouge et tout le reste de la page propre.<br class="autobr"> Bizarre.<br class="autobr"> Pierre.</p> Notifications avancées 2019-01-15T21:50:15Z https://files.spip.net/Notifications-avancees-3981#comment499493 2019-01-15T21:50:15Z <p>Bonjour,<br class="autobr"> Même erreur ici : « Le plugin Notifications avancées dépend du plugin S. » <br class="autobr"> Le mystérieux plugin S. Ça sonne comme un album de Blake et Mortimer :-)<br class="autobr"> Bon je vais mettre à jour à la mano.<br class="autobr"> Pierre</p> Notifications avancées 2019-01-14T08:26:31Z https://files.spip.net/Notifications-avancees-3981#comment499468 2019-01-14T08:26:31Z <p>Merci guilaind<small class="fine d-inline"> </small>! J'ai suivi cette méthode et ça a fonctionné<small class="fine d-inline"> </small>!</p> Notifications avancées 2019-01-13T16:52:14Z https://files.spip.net/Notifications-avancees-3981#comment499461 2019-01-13T16:52:14Z <p>J'avais le même problème. C'est la 1<sup class="typo_exposants">re</sup> fois que j'avais ce type de message d'erreur<br class="autobr"> J'ai téléchargé manuellement le zip, dézippé, uploadé dans le répertoire plugins\auto\notifavancees\v0.4.3 puis activé.<br class="autobr"> En activant la v0.4.3, ça a désactivé la v0.4.2 que j'ai supprimée totalement après vérif. <br class="autobr"> Tout à l'air de fonctionner</p> Notifications avancées 2019-01-10T14:00:40Z https://files.spip.net/Notifications-avancees-3981#comment499388 2019-01-10T14:00:40Z <p>Bonjour RastaPopoulos,<br class="autobr"> Bonne année à toi<small class="fine d-inline"> </small>! Et à la communauté Spip également.<br class="autobr"> J'ai le même problème, mais sur un SPIP 3.2.0 que je m'apprête à mettre à jour (et que tu connais bien<small class="fine d-inline"> </small>;)).<br class="autobr"> J'ai mis à jour Saisies pour formulaires vers la version 3.11.2 et SPIP Bonux en est à la v3.4.6, mais je ne peux pas mettre à jour Notifications avancées 0.4.2. : même message d'erreur.<br class="autobr"> Merci d'avance pour ton coup d'oeil,<br class="autobr"> Nathalie</p> Notifications avancées 2019-01-09T16:33:09Z https://files.spip.net/Notifications-avancees-3981#comment499379 2019-01-09T16:33:09Z <p>Du plugin « S »<small class="fine d-inline"> </small>? Jamais vu ça. Si c'est coupé c'est qu'il y a un bug PHP à priori.</p> <p>L'autre S c'est spip_bonux dans les dépendances.</p> Notifications avancées 2019-01-08T14:27:47Z https://files.spip.net/Notifications-avancees-3981#comment499358 2019-01-08T14:27:47Z <p>Sur un site en SPIP 3.2.1 [23954] <br class="autobr"> lorsque je veux mettre à jour ce plugin Notifications avancées 0.4.2 - test j'ai le message :<br class="autobr"> « • Le plugin Notifications avancées dépend du plugin S. » [sic : je ne sais pas quel est ce S.]</p> <p>J'ai le plugin « Saisies pour formulaires 3.11.2 - stable » activé</p> Notifications avancées 2017-12-23T16:07:24Z https://files.spip.net/Notifications-avancees-3981#comment495020 2017-12-23T16:07:24Z <p>Cool, merci</p> Notifications avancées 2017-12-22T11:41:10Z https://files.spip.net/Notifications-avancees-3981#comment495011 2017-12-22T11:41:10Z <p>Hop <br class="autobr"> <a href="https://zone.spip.org/trac/spip-zone/changeset/108147" class="spip_url spip_out auto" rel="nofollow external">https://zone.spip.org/trac/spip-zone/changeset/108147</a></p> Notifications avancées 2017-12-19T15:01:35Z https://files.spip.net/Notifications-avancees-3981#comment494988 2017-12-19T15:01:35Z <p>Je me réponds à moi même.</p> <p>En utilisant</p> <pre>notifications_truc_contenu_dist($id, $options, $destinataire, $mode)</pre> <p>dans le cas d'une commande</p> <pre>notifications_commande_client_contenu_dist()</pre> <p>il est possible de retourner un tableau contenant les pieces jointes.</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code> $corps = array( 'pieces_jointes' => array( array( 'chemin' => $chemin, 'nom' => $nom, 'encodage' => 'base64', 'mime' => $doc['mime_type'] ), ), ); return $corps;</code></pre></div> <p>par contre, pour que cela soit pris en compte, il faut encore surcharger <var>notifications/modes/email.php</var></p> <p>en y ajoutant</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code> if ($contenu['pieces_jointes']) { $corps['pieces_jointes'] = $contenu['pieces_jointes']; }</code></pre></div> Notifications avancées 2017-12-19T10:11:54Z https://files.spip.net/Notifications-avancees-3981#comment494984 2017-12-19T10:11:54Z <p>Bonjour,</p> <p>j'utilise les plugins commande et facteur et j'aimerai lors d'un envoi d'une notification de commande ajouter un document à la notification en utilisation <var>$corps['pieces_jointes']</var> de facteur. Je ne vois pas ou je peux intervenir afin de modifier cette variable.</p> <p>Merci Rainer</p> Notifications avancées 2016-05-19T12:57:41Z https://files.spip.net/Notifications-avancees-3981#comment487516 2016-05-19T12:57:41Z <p>Bah pas forcément à laisser tomber mais ce n'est pas le cœur du sujet. La partie qui dit QUAND envoyer, peut très bien ensuite utiliser Notifications avancées pour déléguer la gestion des envois, la définition des contenus (avec la formalisation des squelettes utilisée ici) etc.</p> <p>Mais le cœur, ça reste le QUAND est-ce qu'on envoie. Donc forcément un truc perso ou un plugin générique (Touti avait commencé un plugin Relances pour ça, peut-être à améliorer/rendre plus générique) qui ajoute des génies réguliers, qui testent des dates de fin bien définies, et qui alors décident d'envoyer des choses à telles et telles personnes.</p> Notifications avancées 2016-05-17T15:22:44Z https://files.spip.net/Notifications-avancees-3981#comment487477 2016-05-17T15:22:44Z <p>Sujet qui m'intéresse également<small class="fine d-inline"> </small>! Du coup, on laisse tomber ce plugin pour ce genre d'utilisation et on se dirige vers un autre<small class="fine d-inline"> </small>?</p> Notifications avancées 2016-05-12T22:27:16Z https://files.spip.net/Notifications-avancees-3981#comment487348 2016-05-12T22:27:16Z <p>Cool. Merci pour l'info.</p> <p>En lisant l'article, j'avais l'impression (fausse) que ce plugin permettait d'avoir des règles pour envoyer des notifications.</p> <p>Or, de ce que tu fais, on doit créer les règles en question. Le plugin gérant des modes de notifications (et le(s) <i>qui</i> associé(s) en conséquence).<br class="autobr"> C'est le paragraphe <i>«<small class="fine d-inline"> </small>Programmer des préférences<small class="fine d-inline"> </small>»</i> qui m'a induit en erreur je pense.</p> Notifications avancées 2016-05-12T22:18:06Z https://files.spip.net/Notifications-avancees-3981#comment487347 2016-05-12T22:18:06Z <p>Bah non, enfin oui et non, mais pas la partie qui est la plus importante. Ce plugin ne s'occupe que de gérer la génération des messages, les destinataires, et les envois suivant plusieurs modes SI il y a un appel à la fonction « notifications » quelque part. Le plugin n'appelle rien, lui.</p> <p>Or là votre besoin, il faut forcément qu'un cron teste tous les jours si ya un truc qui se finit dans 30 jours, et que dans ce cas, le cron fasse une notif (avec l'aide de ce plugin ou pas, c'est une autre histoire).</p> Notifications avancées 2016-05-12T22:04:31Z https://files.spip.net/Notifications-avancees-3981#comment487346 2016-05-12T22:04:31Z <p>Hello,</p> <p>Je relance cette question. Pour un futur plugin, j'ai une date de fin sur un objet. Et je voudrais recevoir une alerte X temps avant cette date de fin.</p> <p>Comment le plugin peut m'aider<small class="fine d-inline"> </small>?</p> <p>Amicalement</p> Notifications avancées 2015-04-20T13:35:51Z https://files.spip.net/Notifications-avancees-3981#comment481421 2015-04-20T13:35:51Z <p>Bonjour,<br class="autobr"> 1/ j'ai crée un objet spip et l'objet a une date début et une date fin<br class="autobr"> 2/ Je veux recevoir un mail 30jours avant la date fin</p> <p>Est ce plugin peut m'aider a réalisé ce que je veux faire<small class="fine d-inline"> </small>??? si oui quelques sont les fichiers a modifié<small class="fine d-inline"> </small>??</p> <p>Merci de votre aide</p> Notifications avancées 2014-11-25T15:43:08Z https://files.spip.net/Notifications-avancees-3981#comment478167 2014-11-25T15:43:08Z <p>Si on a un problème dans l'affichage du mail, particulièrement si le mail est en plain texte et se trouve tronqué ou raccourci, inutile de passer 3 heures à chercher, il faut désactiver le mode <i>convertir en ISO-8859-1</i> dans la configuration du plugin facteur …</p> Notifications avancées 2013-09-30T15:09:20Z https://files.spip.net/Notifications-avancees-3981#comment471184 2013-09-30T15:09:20Z <p>Apparemment c'est l'influence du plugin tickets qui pose un problème. Voir la suite par là : <a href="http://contrib.spip.net/Tickets-suivi-de-bugs#forum471183" class="spip_out" rel='nofollow external'>471183</a><br class="autobr"> Bonne journée,</p> Notifications avancées 2013-09-30T09:46:01Z https://files.spip.net/Notifications-avancees-3981#comment471167 2013-09-30T09:46:01Z <p>Les tâches dans la file d'attente ne s'exécute que s'il y a des visites sur le site. Sinon c'est toujours en attente. Pour remédier à ça, le mieux est de programmer un serveur (n'importe lequel, le même où est le site où un autre, peu importe) avec un cron (une tâche régulière) pour appeler toutes les minutes le cron du SPIP (<code class="spip_code spip_code_inline" dir="ltr">spip.php?action=cron</code>).</p> Notifications avancées 2013-09-24T11:10:32Z https://files.spip.net/Notifications-avancees-3981#comment470978 2013-09-24T11:10:32Z <p>Petite confusion dans mon explication : le bout de code ne montrait pas comment j'allongeais le délai, mais seulement comment je créais ma nouvelle tâche dans la queue.</p> <p>Ca parait peut-être aller de soi, mais alors que la tâche est bien dans la queue, au final elle ne s'exécute pas.</p> <p>Et comme ça ne marche pas, je me demandais si on peut mettre en queue une fonction comme 'notifications' qui, lorsqu'elle s'exécute, va passer dans le pipeline notifavancees_pipelines.php et donc à nouveau exécuter job_queue_add().</p> <p>J'espère avoir été plus clair.</p> Notifications avancées 2013-09-24T09:00:19Z https://files.spip.net/Notifications-avancees-3981#comment470976 2013-09-24T09:00:19Z <p>Je pense avoir à peu près compris le but final recherché, mais je ne comprends absolument pas ce que tu crois faire avec tes appels là.</p> <p>Au moment de la modification d'un objet, il faut plutôt aller chercher dans la queue s'il y a déjà une tâche d'envoi programmée avec tel ou tel paramètre (tel nom de notif, tel id d'objet, etc), récupérer alors son identifiant de tâche (id_job), et modifier alors sa date. Enfin je vois ça comme ça.</p> Notifications avancées 2013-09-23T11:29:09Z https://files.spip.net/Notifications-avancees-3981#comment470944 2013-09-23T11:29:09Z <p>J'utilise « notifications avancées » pour suivre une certaine activité éditoriale sur abonnement.<br class="autobr"> J'aimerais retarder l'envoi de la notification de quelques minutes, <br class="autobr"> pour laisser le temps au rédacteur de modifier l'objet qu'il crée avant de notifier tous les abonnés.</p> <p>S'il modifie, je récupère alors le job dans la queue et ajoute un nouveau délai. <br class="autobr"> Et ainsi de suite jusque quand l'objet ne bouge plus.</p> <p>Je pensais donc appeller la fonction avec <i>job_queue_add()</i>, comme ceci :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code> $function = 'notifications'; $description = "NOUVEL OBJET notification abonnés de $id_rubrique"; $arguments = array($id_rubrique, $options); $file = 'inc/'; $time = time() + 60*5; // dans 5 minutes $id_job = job_queue_add($function, $description, $arguments, $file, $no_duplicate, $time, $priority);</code></pre></div> <p>Ca ne marche pas, et sans doute je me dis parce que le pipeline '<i>notifavancees_pipelines.php</i>' appelle lui-même la fonction <i>job_queue_add()</i> pour envoyer à chaque abonné.</p> <p><i>job_queue_add()</i> qui appelle <i>job_queue_add()</i> : est-ce bien la raison pour laquelle que ça ne fonctionne pas<small class="fine d-inline"> </small>?</p> <p>Dois-je m'y prendre autrement<small class="fine d-inline"> </small>?</p> <p>Merci d'avance pour les pistes de solutions.</p> Notifications avancées 2013-09-17T09:35:22Z https://files.spip.net/Notifications-avancees-3981#comment470797 2013-09-17T09:35:22Z <p>Mmmh je ne sais pas. En tout cas ce n'est pas bien grave.</p> <p>Je ne sais pas si c'est parce que ce plugin ne déclare pas ce pipeline mais l'utilise dans le code, sauf que ce ppipeline est déjà utilisé aussi par le noyau de SPIP donc c'est pas une invention.</p> <p>Fin pour l'instant j'en sais rien. Oui je sais je ne suis pas d'une grande aide là. :D</p> Notifications avancées 2013-09-17T09:27:58Z https://files.spip.net/Notifications-avancees-3981#comment470796 2013-09-17T09:27:58Z <p>Salut<small class="fine d-inline"> </small>!<br class="autobr"> Alors que la notification est correctement envoyée à ma liste d'abonnés, à chaque envoi j'ai ce message dans les logs de spip :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code> :Pub:ERREUR: fonction execute_pipeline_notifications_destinataires absente : pipeline desactive</code></pre></div> <p>Est-ce dû à une erreur de ma part<small class="fine d-inline"> </small>?</p> Notifications avancées 2012-05-31T15:57:14Z https://files.spip.net/Notifications-avancees-3981#comment457911 2012-05-31T15:57:14Z <p>Merci<small class="fine d-inline"> </small>! :-)</p> Notifications avancées 2012-05-31T14:18:40Z https://files.spip.net/Notifications-avancees-3981#comment457905 2012-05-31T14:18:40Z <p>La réponse se trouve là : <a href="http://www.arscenic.tv/mediaspip/ferme-a-mediaspip/gestion-generale-de-la-ferme/article/le-plugin-gestion-de-la#super_cron" class="spip_url spip_out auto" rel="nofollow external">http://www.arscenic.tv/mediaspip/ferme-a-mediaspip/gestion-generale-de-la-ferme/article/le-plugin-gestion-de-la#super_cron</a></p> <p>Un cron système qui appelle toutes les minutes le cron de SPIP, et donc lance des tâches, sans visiteur du site.</p> Notifications avancées 2012-05-31T14:10:20Z https://files.spip.net/Notifications-avancees-3981#comment457904 2012-05-31T14:10:20Z <p>Bonjour,</p> <p>C'est tip-top pour faire envoyer un message par formulaire CVT pour un bidouilleur dans mon genre<small class="fine d-inline"> </small>!</p> <p>J'ai une question liée à l'utilisation du plugin job-queue. L'envoi du message se place dans la liste des jobs et donc est envoyé lorsqu'un visiteur s'agite sur le site.</p> <p>Mon problème est qu'il s'agit d'un intranet en accès restreint donc avec un traffic faible ou en tout cas à la fréquence aléatoire. Comment faire pour déclencher immédiatement l'envoi du mail (réserver à 2 ou 3 admins)<small class="fine d-inline"> </small>?</p> <p>Merci d'avance pour votre aide ou une piste.</p> Notifications avancées 2012-03-28T13:56:54Z https://files.spip.net/Notifications-avancees-3981#comment455797 2012-03-28T13:56:54Z <p>C'est bien un spip 3, apres j'ai mis 'objet' mais il ne s'agit pas des fonctions du core.</p> <p>Ma notification est bien appelée dans mon editer_'objet' sous la forme $notifications('objet_relou', $id_commande, $options)<small class="fine d-inline"> </small>;<br class="manualbr">mais je me demandais si il y avait une solution pour envoyer via un pipeline entre mon formulaire et la partie instituer.</p> <p>Au final solution simple : j'ai simplement inséré un champ supplémentaire dans ma base et au moment d'instituer si celui ci est plein je le rajoute à $options[]<br class="autobr"> Ainsi je peux contextualiser mon message dans mon notifications/objet_html.html en testant la valeur de [(#ENV<i>options</i>|table_valeur<i>perso</i>)]</p> <p>Merci beaucoup pour ton aide :)</p> Notifications avancées 2012-03-28T10:14:52Z https://files.spip.net/Notifications-avancees-3981#comment455784 2012-03-28T10:14:52Z <p>Tout ce plugin ne fait que se brancher, utiliser, les appels à la fonction notifications() de SPIP qui existe déjà. Toutes les fonctions de ce plugin reçoivent en paramètre ce qui a été défini une fois pour toute lors de <strong>l'appel</strong> de la notification.</p> <p>Ce que je ne comprends pas c'est si c'est TOI qui appelle la notification dans TON code. Ou si c'est appelé dans un code générique de SPIP que toi tu appelles (ça a l'air d'être ça). Si ce n'est pas TOI qui appelle la notification, et bien forcément t'as pas la main sur l'appel et donc tu peux pas modifier les paramètres.</p> <p>C'est en SPIP 2 ou 3<small class="fine d-inline"> </small>? (editer_objet et instituer_objet c'est en 3 à priori)</p> <p>Par contre tu peux ne pas utiliser cette notification par défaut et ajouter TA notification dans ton code, en appelant par exemple <code class="spip_code spip_code_inline" dir="ltr">notifications('patate_instituer', $id_patate, $optionsquetuveux)</code></p> Notifications avancées 2012-03-28T09:55:57Z https://files.spip.net/Notifications-avancees-3981#comment455782 2012-03-28T09:55:57Z <p>Il est vrai que j'ai du mal a m'expliquer correctement :)</p> <p>La notification est bien appelée dans le code de action/editer_objet utilisé dans mon action/instituer_objet. Et en effet je peux tout a fait faire un $options[perso]= $perso<small class="fine d-inline"> </small>;<br class="manualbr">Mais cette fonction instituer_objet générique est utilisée soit en dur dans mon form_traiter, soit dans un pipeline (en fonction des traitements). j'essaye de trouver une solution pour brancher depuis le formulaire traiter cette fameuse variable $perso dans action/editer_objet.</p> <p>sinon autre solution peut etre, passer par le pipeline notifications_truc_contenu_dist($id, $options, $destinataire, $mode)<small class="fine d-inline"> </small>? Mes notifs avancées ont des squelettes : <br>- notifications/objet.html <br>- notifications/objet_html.html <br>- notifications/objet_court.html<br class="manualbr">c'est soit le pipeline, soit les squelettes<small class="fine d-inline"> </small>? ou bien le pipeline surcharge les squelettes<small class="fine d-inline"> </small>?</p> <p>Sinon existe t il un moyen d'ajouter à $options[] avec un pipeline depuis n'importe où<small class="fine d-inline"> </small>?</p> <p>j'essaye d'être clair mais je reconnais qu il est compliqué de comprendre la question.</p> Notifications avancées 2012-03-28T09:39:09Z https://files.spip.net/Notifications-avancees-3981#comment455779 2012-03-28T09:39:09Z <p>Je ne suis pas sûr de comprendre la question. Si c'est toi qui appelle la notification dans ton code, alors tu peux mettre ce que tu veux dans le tableau en troisième argument de la fonction, non<small class="fine d-inline"> </small>? Ce troisième paramètre est complètement libre et sert justement à mettre ce qu'on veut.</p> Notifications avancées 2012-03-28T08:05:05Z https://files.spip.net/Notifications-avancees-3981#comment455775 2012-03-28T08:05:05Z <p>Bonjour,</p> <p>Dans le cadre d'un plugin perso, j'utilise les notifs avancées. mais je me confronte à un souci d'incompréhension depuis 2jours. Je m'explique :</p> <p>Mon plugin utilise un formulaire CVT. Dans Traiter j'institue l'objet via action/intituer_objet qui lui meme inclue un action/editer_objet. Au passage (changement statut, et autres fonctions) j'envoie une notification à l'auteur. Jusque là tout va bien.</p> <p>La ou je coince, c'est que je souhaiterai envoyer un champs supplémentaire aux $options de ma notification depuis une de mes variable de formulaire.<br class="manualbr">Genre dans traiter : $options[perso] = _request('perso')<small class="fine d-inline"> </small>; <br class="manualbr">mais comment l'envoyer dans la notification<small class="fine d-inline"> </small>? une aide serait la bienvenue svp :)</p> <p>merci d'avance</p> Notifications avancées 2012-03-05T20:38:12Z https://files.spip.net/Notifications-avancees-3981#comment455082 2012-03-05T20:38:12Z <p>Merci. Cela peut me donner des indices. J'avais essayé de modifier instituerarticle.php pris le id_rubrique pour sélectionner les auteurs attachés par le plugin acces restreint et utiliser mon propre array $destinataires, mais ne fonctionne pas :-( J'espère que cela va m'aider à suivre.</p> Notifications avancées 2012-03-05T14:34:58Z https://files.spip.net/Notifications-avancees-3981#comment455063 2012-03-05T14:34:58Z <p>C'était déjà possible avant ce plugin, il y a déjà une notification appelée lors du changement de statut d'un article.</p> <p>Exactement ici :<br class="autobr"> <a href="http://core.spip.org/projects/spip/repository/entry/branches/spip-2.1/ecrire/action/editer_article.php#L267" class="spip_url spip_out auto" rel="nofollow external">http://core.spip.org/projects/spip/repository/entry/branches/spip-2.1/ecrire/action/editer_article.php#L267</a></p> <p>Ce plugin permet de faciliter l'écriture des notifications en découpant les différentes étapes. Tu peux donc définir un squelette du nom de cette notification + une fonction PHP renvoyant un tableau de destinataires, comme l'indique la documentation, et alors ce squelette sera envoyé à cette liste.</p> Notifications avancées 2012-03-05T14:17:32Z https://files.spip.net/Notifications-avancees-3981#comment455061 2012-03-05T14:17:32Z <p>Bonjour à nouveau.<br class="autobr"> Un doute, ce code pourrait « intercepter » qui a ete publié un article, et quelle rubrique il appartient, pour envoyer une notification à un array d'e-mails<small class="fine d-inline"> </small>?<br class="autobr"> Il est très compliqué<small class="fine d-inline"> </small>?<br class="autobr"> Merci</p> Notifications avancées 2012-03-03T08:47:09Z https://files.spip.net/Notifications-avancees-3981#comment455021 2012-03-03T08:47:09Z <p>Merci pour votre réponse. Salut<small class="fine d-inline"> </small>!</p> Notifications avancées 2012-03-03T08:17:51Z https://files.spip.net/Notifications-avancees-3981#comment455020 2012-03-03T08:17:51Z <p>Malheureusement, il n'y a pas encore de vraie interface déjà toute prête pour les utilisateurs. :(</p> <p>J'avais commencé un peu, mais c'est loin d'être terminé, et pour l'instant je n'ai plus le temps d'avancer sur ce plugin.</p> Notifications avancées 2012-03-02T18:17:49Z https://files.spip.net/Notifications-avancees-3981#comment455011 2012-03-02T18:17:49Z <p>Hola<br class="autobr"> Je vous remercie pour vos nombreuses contributions à la communauté SPIP<small class="fine d-inline"> </small>!<br class="autobr"> J'ai un besoin urgent d'un plugin comme celui-ci d'envoyer des mises à jour des sections différentes à différents visiteurs choisissant parmi une liste de sections et de visiteurs, mais je ne sais pas de programmation.<br class="autobr"> J'écrire pour demander si vous avez déjà une interface en version bêta à tester dans l'action et de voir si il peut être utile pour moi parce que je ne pouvais pas le faire fonctionner sans interface :-(<br class="autobr"> Merci.</p> Notifications avancées 2012-01-22T12:31:21Z https://files.spip.net/Notifications-avancees-3981#comment453790 2012-01-22T12:31:21Z <p>Ayé, compris... Je n'avais pas vu l'appel du pipeline avant l'appel classique dans ecrire/inc/notifications.php dans la fonction inc_notifications_dist. Peut-être peut-on rajouter ce texte dans le paragraphe « Appeler une notification » :</p> <p><i>C'est le seul appel nécessaire par le plugin utilisateur. Celui-ci doit juste ensuite fournir des éléments utiles à la constitution de la liste des destinataires et du contenu sous forme de squelettes ou de fonctions php correctement nommées et rangées dans un dossier notifications (Cf ci-dessous). Contrairement au fonctionnement des notifications du core ou du plugin Notifications, c'est le plugin Notifications Avancées (via son pipeline notifications_envoyer()) qui s'occupe de rassembler tous ces éléments afin de créer et d'envoyer la notification (il n'est plus nécessaire d'écrire une fonction php dans le plugin appelant pour le faire)</i></p> <p>Ca fonctionne bien et c'est plus facile a mettre en oeuvre (maintenant que j'ai pigé). Bravo.</p> <p>Pour le plugin commandes, on peut donc rajouter un « utilise ». Et spécifier que les notifications de commandes ne fonctionnent que si ce plugin est installé<small class="fine d-inline"> </small>?</p> Notifications avancées 2012-01-21T13:55:39Z https://files.spip.net/Notifications-avancees-3981#comment453771 2012-01-21T13:55:39Z <p>Et en plus dans ce nouveau système ya PAS du tout « notifications_commande_instituer_dist »<small class="fine d-inline"> </small>!</p> Notifications avancées 2012-01-21T13:53:22Z https://files.spip.net/Notifications-avancees-3981#comment453770 2012-01-21T13:53:22Z <p>Mais je te répète qu'il n'y a rien à faire, il faut juste qu'il y ait au moins un destinataire dans la liste et un contenu existant fournit soit pas un squelette soit par la fonction PHP « truc_contenu ».</p> <p>Tu vois bien là :<br class="autobr"> <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/notifications_avancees/trunk/notifavancees_pipelines.php#L6" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/notifications_avancees/trunk/notifavancees_pipelines.php#L6</a></p> <p>que la fonction « notifications_envoyer » est automatiquement appelée par le plugin dès lors qu'il y a au moins un destinataire.</p> Notifications avancées 2012-01-21T12:13:41Z https://files.spip.net/Notifications-avancees-3981#comment453766 2012-01-21T12:13:41Z <p>Oui, elle est bien appelée :<br class="autobr"> <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/commandes/trunk/action/editer_commande.php#L227" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/commandes/trunk/action/editer_commande.php#L227</a></p> <p>Mais ensuite dans /notification/commandes_instituer.php faut bien lancer l'envoi<small class="fine d-inline"> </small>? :<br class="autobr"> <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/commandes/trunk/notifications/commande_instituer.php#L83" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/commandes/trunk/notifications/commande_instituer.php#L83</a><br class="autobr"> (J'ai modifié ce code issu de z-commerce, pas commité, pour l'adapter au plugin notifavancees, mais le principe est le même)</p> <p>Et je me suis basé sur <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/mes_fichiers/trunk/notifications/mes_fichiers_cleaner.php" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/mes_fichiers/trunk/notifications/mes_fichiers_cleaner.php</a> et <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/saveauto/2.1/notifications/saveauto_save.php" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/saveauto/2.1/notifications/saveauto_save.php</a></p> Notifications avancées 2012-01-21T10:48:26Z https://files.spip.net/Notifications-avancees-3981#comment453764 2012-01-21T10:48:26Z <p>Mais ya jamais eu rien à faire. Ça s'envoie tout seul du moment que ya au moins un mail.</p> <p>Mais tu appelles la fonction notifications() un jour<small class="fine d-inline"> </small>? :)<br class="autobr"> L'appel qui déclenche une notification comme toujours :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code>$notifications = charger_fonction('notifications', 'inc/'); $notifications('commande_instituer', $id_commande, $options);</code></pre></div> Notifications avancées 2012-01-21T08:57:50Z https://files.spip.net/Notifications-avancees-3981#comment453761 2012-01-21T08:57:50Z <p>Je ne suis pas clair, car je n'ai sans doute pas compris le principe des notifications<small class="fine d-inline"> </small>?</p> <p>Bref, je pige comme on definit les destinataire et j'ai bien un contenu dans notifications/truc.html, truc_html.html et truc_court.html...</p> <p>C'est la 3<sup class="typo_exposants">e</sup> étape qui coince... Comment déclenche t'on l'envoi<small class="fine d-inline"> </small>? Dans les exemples que j'ai vu, faut appeler la fonction notifications_envoyer_mails() que je ne trouve pas dans ce plugin.</p> Notifications avancées 2012-01-20T23:32:33Z https://files.spip.net/Notifications-avancees-3981#comment453760 2012-01-20T23:32:33Z <p>Je ne comprends pas ce que tu essayes de faire.</p> <p>La doc me parait pourtant claire et bien séparée en chapitre : si tu veux définir des destinataires explicitement, tu crées une fonction <code class="spip_code spip_code_inline" dir="ltr">notifications_truc_destinataires_dist()</code>. Je ne répète pas ici ce que ça doit renvoyer, c'est écrit plus haut.</p> Notifications avancées 2012-01-20T18:19:47Z https://files.spip.net/Notifications-avancees-3981#comment453744 2012-01-20T18:19:47Z <p>Hello</p> <p>Je bloque sur l'utilisation de ce plugin, au niveau de l'envoi... J'ai regardé des exemples d'utilisation des notifications. Ce que j'ai compris :</p> <p>Dans le fichier notifications/commande_instituer.php, j'ai une fonction notifications_commande_instituer_dist.</p> <p>En gros elle crée les destinataires via le pipeline destinataires :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>$destinataires = pipeline('notifications_destinataires', array( 'args'=>array('quoi'=>$quoi,'id'=>$id_commande,'options'=>$options), 'data'=>$destinataires) );</code></pre></div> <p>Puis nettoyage : notifications_nettoyer_emails($destinataires)<small class="fine d-inline"> </small>;</p> <p>Dans les exemples qui utilisent les notifications du core ou le plugin notifications, on appelle ensuite notifications_envoyer_mails($destinataires, $msg_mail,$sujet_mail) qui accepte un tableau de destinataires.</p> <p>Mais cette fonction n'existe pas dans Notifications Avancées. Je pensais appeler notifications_envoyer(), mais elle n'accepte qu'un destinataire...</p> <p>Où j'ai pas bon<small class="fine d-inline"> </small>?</p> <p>Merci</p> Notifications avancées 2011-12-15T08:21:56Z https://files.spip.net/Notifications-avancees-3981#comment452878 2011-12-15T08:21:56Z <p>En fait je n'avais pas encore compris le fonctionnement et donc pas vu que la fonction est dans le core. Donc effectivement, pas besoin de plugin.</p> <p>Du coup si je déplace ces notifications de zcommerce à Commandes, le paramétrage éventuel du vendeurs (tous les admins ou uniquement webmestres) à notifier peut se faire dans le formulaire de config de Commandes.</p> Notifications avancées 2011-12-14T22:52:10Z https://files.spip.net/Notifications-avancees-3981#comment452872 2011-12-14T22:52:10Z <p>Ben j'en sais rien parce que pour l'instant ça ferait une dépendance en plus du coup.</p> <p>Parce que l'ancien c'est juste un plugin qui ajoute des notifications, mais la fonction notifications elle est dans le core. Là ce plugin il modifie la façon dont on crée les notifications, c'est encore autre chose.</p> <p>J'ai pas vraiment d'avis pour l'instant.</p> Notifications avancées 2011-12-13T17:47:02Z https://files.spip.net/Notifications-avancees-3981#comment452830 2011-12-13T17:47:02Z <p>Hello</p> <p>Pour continuer la demo Z-Commerce, je suppose qu'il vaut mieux utiliser ce plugin que l'ancien notifications<small class="fine d-inline"> </small>? Isn't it<small class="fine d-inline"> </small>?</p>