Accéder au contenu.
Menu Sympa

fr - Re: [sympa-fr] sympa_soap_client : transmission de tableau : est ce possible ?

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] sympa_soap_client : transmission de tableau : est ce possible ?
  • Date: Mon, 19 Nov 2018 22:40:24 +0100

Bonsoir,

comme à chaque fois, quand ça se met à marcher, on ne comprend pas le micro-réglage qui a tout débloqué...

De ce que je pense avoir compris : le client soap de sympa initialise une session, et stocke dans un fichier le cookie de session

 cat /tmp/my_cookies
#LWP-Cookies-1.0
Set-Cookie3: sympa_session=0f08eab51316992d38b486169afb3b03ea; path="/"; domain=mondomainesympa.fr; path_spec; expires="2018-11-19 21:26:01Z"; version=1

1/ Pour initialiser la session, il faut lancer le service de son choix (amI ou add, peu importe) mais sans l'option --session_id=ttt \

./sympa_soap_client.pl \
--soap_url=http://xxx/wsdl \
--user_email=yyy \
--user_password=zzz \
--service=amI \
--service_parameter=maliste@mondomaine,owner,un_user@son_domaine

ensuite, on a une heure pour réutiliser la session avec son numéro, sans login et sans passwd :

./sympa_soap_client.pl \
--soap_url=http://xxx/wsdl \
--session_id=0f08eab51316992d38b486169afb3b03ea \
--service=amI \
--service_parameter=maliste@mondomaine,owner,un_user@son_domaine

(dans ce dernier cas, on peut renseigner user et password mais ils ne sont pas utilisés)

Cordialement


Le 15/11/2018 à 16:40, Luc VEILLON (via sympa-fr Mailing List) a écrit :

Bonjour,

Nous sommes en sympa 6.2.22 et rencontrons un pb de fonctionnement SOAP pour la requête authenticateAndRund + add (la requête amI fonctionne)

Nous avons patché SOAP.pm avec https://github.com/sympa-community/sympa/issues/244 (deux des trois modifs proposés étaient effectivement nécessaires)

Mais d'après le développeur, ça ne semble pas mieux fonctionner.

La séparation des pouvoirs fait qu'il m'est très difficile de mobiliser le prestataire pour qu'il réalise des tests sur demande.

J'utilise donc sympa_soap_client.pl mais je ne trouve pas comment lui passer un tableau d'arguments :

./sympa_soap_client.pl \
--soap_url=http://xxx/wsdl \
--user_email=yyy \
--user_password=zzz \
--session_id=ttt \
--service=amI \
--service_parameter=maliste@mondomaine,owner,un_user@son_domaine

=> ça fonctionne

Mais pour invoquer add, je n'y arrive pas

Solution 1 : j'invoque add directement

# ./sympa_soap_client.pl --soap_url=  --user_email=  --user_password=   --session_id=   --service=add  \

--service_parameter='maliste@mondomaine,nouveau_user@son_domaine'

cookie : Set-Cookie3: sympa_session=fd6ea357b0f7996c5710d01ce46ef8125f; path="/"; domain= ; path_spec; expires="2018-11-15 14:44:51Z"; version=1

param: maliste@mondomaine
param: nouveau_user@son_domaine
Using Session_id xxxxx


add....
Soap error :
detail = Use a trusted proxy or login first
faultstring = User not specified
faultcode = soap:Client

Solution 2 : j'utilise authenticateAndRun

mais je ne sais pas comment transférer un tableau en argument (et est ce possible ??)

#tab[0]=maliste@mondomaine

tab[1]=nouveau_user@son_domaine

#./sympa_soap_client.pl --soap_url=   --user_email=   --user_password=   --session_id=  \

--service=authenticateAndRun --service_parameter=proprio_liste@domaine,cookie_invente,add,${tab[@]}
cookie : Set-Cookie3: sympa_session=fd6ea357b0f7996c5710d01ce46ef8125f; path="/"; domain= ; path_spec; expires="2018-11-15 14:44:51Z"; version=1

param: proprio_liste@domaine
param: cookie_invente
param: add
param: maliste@mondomaine
Using Session_id aaa1


AuthenticateAndRun service=authenticateAndRun;(session_id=aaa1)....
Soap error :
faultstring = Can't use string ("maliste@mondomaine"...) as an ARRAY ref while "strict refs" in use at /appli/sympa/sympaV6.2.22/sympa/bin/Sympa/SOAP.pm line 310.

faultcode = soap:Server


-- 

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
-- 

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