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: Luc VEILLON <adresse@cachée>
  • To: adresse@cachée
  • Subject: Re: [sympa-fr] inscrire un utilisateur à travers un formulaire tiers
  • Date: Wed, 31 Oct 2018 11:53:24 +0100

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