Accéder au contenu.
Menu Sympa

fr - Re: [sympa-fr] inscrire un utilisateur à travers un formulaire tiers

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: Smrhp <adresse@cachée>
  • To: adresse@cachée
  • Subject: Re: [sympa-fr] inscrire un utilisateur à travers un formulaire tiers
  • Date: Sun, 4 Nov 2018 12:16:22 +0100

Bonjour,

Je pense que tu es tombé sur le bug que j'ai eu sur cette version 6.2.22 en décembre 2017. Je m'en étais sorti en remplaçant uniquement le fichier Soap.pm par celui de la 6.2.16 (de mémoire je crois) et ça a bien fonctionné.

Désormais depuis une 6.2.3x, le problème semble résolu car je n'ai plus besoin de remplacer ce fichier pour que cela fonctionne. Mais j'ai quelques versions de retards (je suis en 6.2.32 sur le serveur concerné par cet usage).

Cdlt,
Stéphane

Le 31/10/2018 à 11:53, Luc VEILLON (via sympa-fr Mailing List) a écrit :

Bonjour,

je profite de cet échange pour signaler un souci qui est apparu entre 6.2.12 et 6.2.22

=> en 6.2.12, un de nos prestataires propose l'abonnement à une liste que nous gérons via un formulaire utilisant l'api SOAP : les candidats qui déposent leur demande sur ce formulaire sont bien abonnés

=> en 6.2.22, effet immédiat : les candidats ne sont plus abonnés

Les logs de sympa 6.2.22 :

2018-10-31T11:15:11.080981+01:00 pr-ari-sympa11 sympasoap[1348]: notice Sympa::SOAP::authenticateAndRun(login_autorise@domaine, 01234key, amI, adresse@cachée,subscriber,candidat.abonne@sondomaine)
2018-10-31T11:15:11.084635+01:00 pr-ari-sympa11 sympasoap[1348]: notice Sympa::SOAP::amI(adresse@cachée, subscriber, candidat.abonne@sondomaine)
2018-10-31T11:15:11.099532+01:00 pr-ari-sympa11 sympasoap[1348]: notice Sympa::SOAP::authenticateAndRun(login_autorise@domaine, 01234key, add, adresse@cachée,candidat.abonne@sondomaine)
2018-10-31T11:15:11.103003+01:00 pr-ari-sympa11 sympasoap[1348]: info Sympa::SOAP::add(list = *adresse@cachée@ldif.education.gouv.fr*, email = candidat.abonne@sondomaine, *quiet = *) From login_autorise@domaine via proxy application
2018-10-31T11:15:11.105149+01:00 pr-ari-sympa11 sympasoap[1348]: notice Sympa::Spindle::ProcessRequest::_twist() Processing Sympa::Request <action=add;adresse@cachée;email=candidat.abonne@sondomaine>

et juste après, peut être en relation :

2018-10-31T11:15:12.184997+01:00 pr-ari-sympa11.ariel.in.phm.education.gouv.fr sympa_msg[32699]: notice Sympa::Spindle::ProcessIncoming::_twist() Processing Sympa::Message <adresse@cachée>; envelope_sender=; adresse@cachée; adresse@cachée
2018-10-31T11:15:12.217954+01:00 pr-ari-sympa11.ariel.in.phm.education.gouv.fr sympa_msg[32699]: err main::#243 > Sympa::Spindle::spin#80 > Sympa::Spindle::ProcessIncoming::_twist#237 List sympa does not exist

=> le paramètre "adresse@cachée@ldif.education.gouv.fr" semble inquiétant mais il y avait le même log en 6.2.12 quand ça fonctionnait, et le développeur a fait un test en supprimant le domaine de la liste (puisqu'il s'adresse à une entrée SOAP en FQDN, donc avec notion implicite du robot) : ça n'a rien amélioré.

=> en 6.2.22 l'ajout manuel d'abonné ajoute un écran de validation supplémentaire, pour valider la valeur de quiet. Le formulaire ne valorise pas quiet, et ne prévoit rien à ce sujet.

=> un abonnement manuel effectué sur l'IHM sympa de ce robot, en copiant/collant liste, robot et email du candidat à l'abonnement,  fonctionne parfaitement : les paramètres ne semblent pas présenter d'erreur typographique


Ce que reçoit le client

"L'adresse de la liste sympa saisie n'est pas valide. "
et dans la réponse navigateur : email_liste_sympa_invalide

Les traces visibles dans les journaux de l'application (même erreur mais un autre jour que les logs ci-dessus) :

Wed Oct 24 2018 11:41:48 info - url : http://www.education.gouv.fr/form...
Wed Oct 24 2018 11:41:48 info - email liste sympa : adresse@cachée
Wed Oct 24 2018 11:41:48 error - bug in logic. Ask developer at /appli/sympa/sympaV6.2.22/sympa/bin/Sympa/Spindle/AuthorizeRequest.pm line 67.

Ce qui correspond à

    # Check if required context (known list or robot) is given.
    if (defined $request->handler->context_class
        and $request->handler->context_class ne ref $request->{context}) {
        $request->{error} = 'unknown_list';
        return ['Sympa::Spindle::DispatchRequest'];
    }
    my $that = $request->{context};

    my $context = $self->{scenario_context}
        or die 'bug in logic. Ask developer';

On tourne autour d'un pb de liste ou de robot mal défini, mais je ne vois pas où se situe la difficulté...
Cordialement


Le 30/10/2018 à 13:25, David Verdin a écrit :
Bonjour,

Le meilleur moyen est d'utiliser l'API SOAP. I faut positionner une trusted_application et envoyer des commandes subscribe à Sympa avec un client SOAP.

Tous les détails ici : https://sympa-community.github.io/manual/customize/soap-api.html

Bonne journée !

David


On 30/10/2018 13:16, Martin wrote:
Bonjour,

Nous souhaitons pouvoir déclencher l'inscription d'un utilisateur à
partir de son adresse mail via un formulaire externe.

L'effet devra être le même que si il soumettait lui-même son adresse
email depuis l'interface web sous /subscribe/<nomdelalist> - sous
entendu, suivant la config de la liste il reçoit les mails de
validation/confirmation et selon les scénarios les gestionnaires de
listes reçoivent les notifications configurées.

Quelle est la façon la plus élégante d'y parvenir ? Via l'API ? en
faisant un POST sur le formulaire web sympa ?

Merci d'avance,



--

Luc Veillon
Responsable HUB de fédération
Responsable Messagerie
DSI/Pôle IH2M

adresse@cachée
T 02 38 79 45 20
M 06 24 84 13 30

Rectorat de l'académie d'Orléans-Tours
21 rue Saint-Étienne
45043 Orléans Cedex 1
www.ac-orleans-tours.fr





Archives gérées par MHonArc 2.6.19+.

Haut de le page