Cette contribution a donné naissance au plugin PubEmail. Cette doc n’est là que pour devoir de mémoire et de respects aux grands ancêtres.
Le but de ce script est de permettre la proposition d’article sans se connecter a l’interface privée, mais simplement en envoyant un mail.
Il faudra faire une liste des hebergeurs ou cela fonctionne :
- ONLINE : cela ne fonctionne pas
Mise en place
- Intaller le script dans le répertoire ecrire/
- Editer les parametres qui se trouvent au debut du script :
// Parametrage Email
$serverPop="";
$user="";
$password="";
$port=110;
Utilisation
Puis envoyer un email à l’adresse email qui est paramétrée ci dessus.
Dans le titre il faut mettre l’expression SPIPOUNET
Puis le corps du message sera du genre :
#titre:Faut pas pusher en espagnol
#rubrique:test
#mot-cle:6,9
#lang:es
#texte: {{{Titre}}}la la
la
sdlkfmlskdfmksdf
kdfmlskdf
<code>sdffsdfsdfsdfsdsdfsdf
</code>
<cadre>sdfsdfsdf
Ensuite allez sur la page du script pour lancer la recuperation des mails et consultez le fichier SPIP.LOG .
Discussions par date d’activité
15 discussions
Bonjour Tout le monde (& ben)
a priori la contrib « faut pas pusher » que j’avais utilisée il y a longtemps, a été « désactivée » après tentative de pasage en plugin.
es-ce récupérable ?
Comment faire pour l’éxécuter dans le cron de spip ?
merci
MJ
Il faut désormais utiliser pubemail
Répondre à ce message
Bonjour
l’idée me plaît bien. Merci. Je serais vraiment heureux de voir débarquer un plugin...
IDP
Répondre à ce message
bonjour,
Très bonne idée, mais je n’arrive pas à le faire fonctionner ; j’obtiens le message d’erreur suivant
Fatal error : Call to undefined function : imap_open() in /var/www/free.fr/1/8/kcauzeville/ecrire/push.php3 on line 247
Faut-il définir la fonction imap_open() quelque part ?
Merci par avance pour vos réponses.
Apparement, ce message d’erreur apparait lorsque PHP n’a pas été compilé avec les fonctions imap. Dans le cas de Free, il n’y a donc rien de surprenant.
J’ai téléchargé la version Windows de PHP et j’ai le même problème. Je vais donc rechercher s’il y un moyen de contourner le problème avec une autre instruction....
En fait, le problème ne se trouve pas au niveau de la compilation, mais du fichier de configuration php.ini. Vous me direz (et vous aurez raison) que cela ne change pas grand chose pour Free.
Lorsque vous avez accès au php.ini (hébergement local) :
- Pour Windows, il faut décommenter la ligne : extension=php_imap.dll .
- Pour Linux, il faut installer le rpm php-imap (« urpmi php-imap »).
Comme l’ont dit les autres, le module IMAP n’existe pas chez Free.
Théoriquement il serait possible d’utiliser un module IMAP pur PHP tel que celui d’IlohaMail utilisé par RoundCube WebMail (-> source).
Malheureusement, d’après mon expérience récente (hier), Free semble bloquer toutes les connexions à des serveurs IMAP depuis les pages perso, y compris imap.free.fr. Donc c’est insoluble.
Répondre à ce message
Autre bug avec la recherche de rubrique par titre : J’indique #rubrique Revue de presse, mais le GREP du script choisit la rubrique intitulé Revue de presse (1995-2002), c’est à dire les archives, au lieu de choisir celle dont le nom correspond exactement.
vient t’inscrire sur la liste spip-zone pour en discuter là bas, ce sera plusinteractif : http://listes.rezo.net/mailman/list...
Je me suis inscrit sur la liste, mais je ne vois pas de message sur la contrib Faut pas pusher...
Répondre à ce message
Bonjour,
Tout cela fonctionne parfaitement jusqu’à l’affichage des messages récupérés. Par contre dans mon Admin, je ne vois toujours pas d’articles proposés...
Quel est le problème selon vous ?
merci
Répondre à ce message
J’ai les problèmes suivants en utilisant le script :
- problème avec l’encodage de certains mails
- le script n’efface pas les mails déjà traités
- le script ne semble pas traiter plus d’un seul mail à la fois
Répondre à ce message
J’envoie un article à push.php3 depuis Apple Mail 2.0 mais je me retrouve avec des gros problèmes d’encodage dans l’article une fois dans l’espace privé. Pourtant il s’agit d’un simple copier-coller.
Répondre à ce message
J’ai testé ce script, c’est vraiment formidable.
Quelques commentaires :
- Actuellement, il faut écrire le titre d’une rubrique en toutes lettres, ce serait plus rapide de pouvoir préciser #rubrique:3 pour la rubrique n° 3. #id_rubrique serait plus consistent avec les balises SPIP
- Par contre pour les mots-clés, ce serait pratique de les mettre en toutes lettres (#mot-cle : spip-contrib), car si tous mes articles envoyés par mail vont dans une seule rubrique, j’ai des centaines de mots-clés disponibles...
- Ce serait bien de pouvoir préciser le #TITRE de l’article dans le sujet du message
- Encore mieux serait la possibilité d’envoyer plusieurs articles dans un seul mail, il manque juste une balise pour séparer les articles (même si en fait #titre pourrait faire l’affaire)
L’intérêt serait de pouvoir préparer un mail avec une revue de presse, en rajoutant quelques balises et hop ! les articles sont en ligne, au lieu de le faire article-par-article avec x recharge des pages...
Répondre à ce message
très bonne idée...
j’ai du installer l’option ssl pour que ça marche (chez l’hébergeur haisoft.fr)
j’ai ajouté les balises surtitre et soutitre en copiant la balise titre.
Mais ca fonctionne irrégulièrement et visiblement s’il y a plus d’un message, il n’y a plus de texte ?
Et certains textes sont coupés (peut-être ceux dont le mail contenait des images, même si je les supprime ?
merci de me dire si ca marche même avec plusieurs gros messages ?
je ne connais pas vraiment le php, mais y-a-t-il un moyen de « nettoyer » le mail des caractères parasites, des images et autres logos ?
bon, je sais, je pourrai l’envoyer en texte brut.. Mais je voudrais bien au contraire garder le html...
pam
première étape de résolution.
En fait, c’est l’expression régulière dans la recherche du texte qui pose problème si le texte contient un #, ce qui est fréquent si le texte est de l’HTML avec des couleurs codées genre #FFFF00...
j’ai commencé à regarder la doc des expressions régulière... je débute donc ce n’est pas facile..
si je comprends bien, dans la ligne
if (preg_match(« /(#texte :)([^#]*)/ », $messageBody,$res))
l’expression utilisée cherche le mot « #texte » (c’est le but de la première parenthèse (#texte :), mais en s’arrêtant au prochain # (c’est le but de la deuxième ([^#]*), le ^ voulant dire exclusion, et l’étoile répétition... ????
donc, j’ai tenté...
if (preg_match(« /(#texte :) », $messageBody,$res))
mais j’ai l’impression alors que le résultat n’est pas dans $res[2].... sauf que je n’arrive pas à comprendre la structure du tableau résultat...
merci de toute aide...
pam
Salut.
Essaye
if (preg_match("/(#texte:)(.*)$/", $messageBody,$res))
qui devrait récupérer tout ce qui suit « #texte » dans le message.
Nat
merci, mais ca ne ramène rien... ?
j’avoue que ces expressions régulières sont quand même un truc de spécialiste.... il faudrait se faire un utilitaire de test
J’ai finalement utilisé
if (preg_match(« /(Texte :)([^¤]*)/i », $messageBody,$res))
sachant qu’il y a peu de chances pour avoir le car ¤ dans un texte !
mais c’est pas très élégant...
pam
Il faut ajouter l’option qui indique que « . » (n’importe quel caractère sauf fin de ligne par défaut) doit aussi « marcher » pour les fins de ligne (option « s ») :
Résultat :
Une petite amélioration :
Résultat :
Salut,
Push est maintenant sur spip-zone, vous pouvez peut être y contribuer si vous voulez. (demander sur la liste spip-zone@rezo.net)
là franchement, c’est super !!!
merci
à propos, j’ai trouvé un utilitaire bien sympa pour tester des regexp... sur http://weitz.de/regex-coach
pam
Répondre à ce message
Eh bonsoir,
je teste cette contrib qui a l’air du tonnerre...
- dans le sujet du mail je met : id_rubrique=2 (ou 2)
- j’ai le bon message en retour de push qui me dit d’aller voir le « spip.log »
- je vais voir le « spip.log » :
Dec 04 00:17:11 84.7.244.190 (pid 3236) [PUSH] Message N°1 id_rubrique=2
Dec 04 00:17:12 84.7.244.190 (pid 3236) [PUSH] Message N°2 2
Dec 04 00:17:12 84.7.244.190 (pid 3236) [PUSH] nombre d’emails lus : 2
C’est bien , et après il ne se passe rien dans la partie admin, pas de nouvel article en proposition... il est où ?
J’ai comme l’impression d’avoir manqué une scène du film...
Qu’est-ce que je n’ai pas fait..?
Je suis sous Spip 1.8.2e
...chez Celeonet
PS. Quel le moyen le plus rapide pour voir le « spip.log » ?
le-clapotis
Bon, amicalement jmarco
Bon,
désolé pour le bruit, j’avais bien oublié qqchose :
- Ecrire SPIPOUNET dans l’objet du message...
Et c’est tout bon,
d’ailleurs le message de retour de push.php3 est bizarrement tout noir,
mais c’est sans importance puisqu’en « sélectionnant tout » on voit toute l’explication de l’opération,
et surtout en admin on retrouve le fameux article en attente de validation.
Super, donc chez Celeonet çà marche.
merci pour cette contrib.
@+ jmarco
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |