Projet

Général

Profil

Fonctionnalité #14837 » analyseEnvoiMC2MG_14837.md

Quentin RIBAC, 23/09/2021 18:05

 

Analyse - envoi Maarch Courrier vers dépôt MultiGest - ticket 14837

(Quentin RIBAC, 23 septembre 2021)

TODO

  • trouver comment lister les sas / armoires MultiGest
  • demander la doc pour GedDocumentAddAttachment
  • vérifier la conservation du mode UID après envoi de la requête GedSetModeUid(state = 1)
    • si non conservation etre deux requêtes, voir comment faire plusieurs requêtes à la fois pour forcer UID=1 et la requête cible

Généralités sur les requêtes

  • méthode POST
  • point d’accès
    • https://mon-srv.multigest.com/Interconnexion/SOAP/SoapServer.php?className=APIMultigest&style=rpc&styletype=encoded
  • authentification BASIC

Requêtes MultiGest utiles

Requête Rôle Note
GedSetModeUid Basculer le mode UID 0/1 -> désactivé/activé
GedImporterDocumentStream Dépôt d’un document FileSourceStream (base64), ModeDiffere à -1 pour import immédiat, renvoie l’idDoc ou code erreur
GedDocumentMdatasUpdate Écriture des métasdonnées d’un document Attention : `
GedDocumentAddAttachment Ajout de PJ à un document Manque la documentation des paramètres de la requête
??? Liste des sas / armoires MultiGest Aucune requête correspondante dans la doc ni dans le WSDL
GedSetModeUid Test de connexion envoyer state = 1 ; OK/KO sur statut HTTP 200/autre

Exemple – requête GedSetModeUid

POST https://mon-srv.multigest.com/Interconnexion/SOAP/SoapServer.php?className=APIMultigest&style=rpc&styletype=encoded
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "urn:GedSetModeUid"

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:APIMultigest">
   <soapenv:Header/>
   <soapenv:Body>
      <urn:GedSetModeUid soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <state xsi:type="xsd:int">0</state>
      </urn:GedSetModeUid>
   </soapenv:Body>
</soapenv:Envelope>

Réponse si succès

HTTP/1.1 200 OK
Date: Thu, 23 Sep 2021 15:46:01 GMT
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1h PHP/7.4.13
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=500; includeSubDomains; preload
Vary: Referer,Accept-Encoding
X-Powered-By: PHP/7.4.13
Set-Cookie: mtgweb=le-cookie; path=/; HttpOnly; SameSite=1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Content-Encoding: gzip
Content-Length: 225
Keep-Alive: timeout=10, max=500
Connection: Keep-Alive
Content-Type: text/xml; charset=utf-8

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:APIMultigest" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <SOAP-ENV:Body>
        <ns1:GedSetModeUidResponse/>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Réponse si erreur – dans ce cas, en mettant autre chose qu’un nombre dans le <state> de la requête plus haut.

HTTP/1.1 500 Internal Server Error
Date: Thu, 23 Sep 2021 15:48:59 GMT
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1h PHP/7.4.13
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=500; includeSubDomains; preload
Vary: Referer
X-Powered-By: PHP/7.4.13
Set-Cookie: mtgweb=le-cookie; path=/; HttpOnly; SameSite=1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Content-Length: 316
Connection: close
Content-Type: text/xml; charset=utf-8

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Body>
        <SOAP-ENV:Fault>
            <faultcode>SOAP-ENV:Server</faultcode>
            <faultstring>SOAP-ERROR: Encoding: Violation of encoding rules</faultstring>
        </SOAP-ENV:Fault>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
(2-2/2)