Aller au contenu


Photo
- - - - -

Utilisation de cURL pour l'envoi de mails avec pièces jointes


  • Veuillez vous connecter pour répondre
Aucune réponse à ce sujet

#1 magdayde

magdayde

    Junior Member

  • Membres
  • 1 messages

Posté 24 octobre 2017 - 09:14

Bonjour,


J'utilise curl pour envoyer des mails, en passant par l'API Orange de la manière suivante :

curl.exe -o FicRetour.log -k -v -X POST -d @request.xml https://www.api-cont....ltiDiffusionWS -H "Content-Type: text/xml; charset=UTF-8" -H "SOAPAction: "sendAdvancedMessage"" -H "Accept: */*" -H "Accept-Encoding: identity" -H "User-Agent: CURLTransport/1.1"

le fichier request.xml :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlso.../soap/envelope/" xmlns:mul="MultiDiffusionWS">
<soapenv:Header>
</soapenv:Header>
<soapenv:Body>
<mul:sendAdvancedMessage>
<mul:wsAdvancedMessage>
<mul:content>essai envoi mail</mul:content>
<mul:custId>dddddd</mul:custId>
<mul:from>yyyyy</mul:from>
<mul:fullContenu>false</mul:fullContenu>
<mul:mailReplyTo>pasdereponse@xxxx.fr</mul:mailReplyTo>
<mul:orgName>1</mul:orgName>
<mul:resumeContent>194</mul:resumeContent>
<mul:sendProfiles>&lt;?xml version='1.0' encoding='ISO-8859-1'?&gt;
&lt;PROFILE_LIST&gt;
&lt;PROFILE&gt;
&lt;DEST_NAME&gt;jjj.kkk@kkk.fr&lt;/DEST_NAME&gt;
&lt;DEST_FORENAME&gt;&lt;/DEST_FORENAME&gt;
&lt;DEST_ID&gt;Dest_1&lt;/DEST_ID&gt;
&lt;TERMINAL_GROUP&gt;
&lt;TERMINAL&gt;
&lt;TERMINAL_NAME&gt;mail&lt;/TERMINAL_NAME&gt;
&lt;TERMINAL_ADDR&gt;XXXXXXXXXXXXX&lt;/TERMINAL_ADDR&gt;
&lt;MEDIA_TYPE_GROUP&gt;
&lt;MEDIA_TYPE&gt;mail_html&lt;/MEDIA_TYPE&gt;
&lt;/MEDIA_TYPE_GROUP&gt;
&lt;/TERMINAL&gt;
&lt;/TERMINAL_GROUP&gt;
&lt;/PROFILE&gt;
&lt;/PROFILE_LIST&gt;</mul:sendProfiles>
<mul:strategy>mail</mul:strategy>
<mul:subject>essai mail</mul:subject>
<mul:to>XXXXXXXXXXXXXXXXXXXXXXXXXXX</mul:to>
<mul:validFaxReplyTo>false</mul:validFaxReplyTo>
<mul:validFormatMailReplyTo>false</mul:validFormatMailReplyTo>
<mul:validMaxStartCall>false</mul:validMaxStartCall>
<mul:validMinStartCall>false</mul:validMinStartCall>
<mul:validSmsReplyTo>false</mul:validSmsReplyTo>
<mul:validTelReplyTo>false</mul:validTelReplyTo>
</mul:wsAdvancedMessage>
</mul:sendAdvancedMessage>
</soapenv:Body>
</soapenv:Envelope>


çà fonctionne très bien sauf que je veux insérer une pièce jointe à ce mail.

Quand j'utilise le logiciel soapui, aucun souci; il me génére ceci en retour et je n'arrive pas à le transposer avec CURL.
J'ai bien compris qu'il fallait utiliser curl -H....." pour les headers mais je ne sais pas comment déclarer le fichier que je veux joindre


POST https://www.api-cont....ltiDiffusionWS HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: multipart/related; type="text/xml"; start="<rootpart@soapui.org>"; boundary="----=_Part_2_1492295307.1508757055602"
SOAPAction: ""
MIME-Version: 1.0
Content-Length: 2770
Host: www.api-contact-everyone.fr.orange-business.com
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)


------=_Part_2_1492295307.1508757055602
Content-Type: text/xml; charset=UTF-8
Content-Transfer-Encoding: 8bit
Content-ID: <rootpart@soapui.org>

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlso.../soap/envelope/" xmlns:mul="MultiDiffusionWS">
<soapenv:Header>
</soapenv:Header>
<soapenv:Body>
<mul:sendAdvancedMessage>
<mul:wsAdvancedMessage>
<mul:content>essai envoi mail</mul:content>
<mul:custId>XXXXXXXXXXXXXXXX</mul:custId>
<mul:from>XXXXXXXXXXXXXXX</mul:from>
<mul:fullContenu>false</mul:fullContenu>
<mul:mailReplyTo>XXXXXXXXXXXXXXXXXXXXXXX</mul:mailReplyTo>
<mul:orgName>1</mul:orgName>
<mul:resumeContent>194</mul:resumeContent>
<mul:sendProfiles><![CDATA[<?xml version='1.0' encoding='ISO-8859-1'?>
<PROFILE_LIST>
<PROFILE>
<DEST_NAME>XXXXXXXXXXXXXXX</DEST_NAME>
<DEST_FORENAME></DEST_FORENAME>
<DEST_ID>Dest_1</DEST_ID>
<TERMINAL_GROUP>
<TERMINAL>
<TERMINAL_NAME>mail</TERMINAL_NAME>
<TERMINAL_ADDR>XXXXXXXXXXXXXXXXXXX</TERMINAL_ADDR>
<MEDIA_TYPE_GROUP>
<MEDIA_TYPE>mail_html</MEDIA_TYPE>
</MEDIA_TYPE_GROUP>
</TERMINAL>
</TERMINAL_GROUP>
</PROFILE>
</PROFILE_LIST>]]></mul:sendProfiles>
<mul:strategy>mail</mul:strategy>
<mul:subject>essai mail</mul:subject>
<mul:to>XXXXXXXXXXXXXXXXXXXX</mul:to>
<mul:validFaxReplyTo>false</mul:validFaxReplyTo>
<mul:validFormatMailReplyTo>false</mul:validFormatMailReplyTo>
<mul:validMaxStartCall>false</mul:validMaxStartCall>
<mul:validMinStartCall>false</mul:validMinStartCall>
<mul:validSmsReplyTo>false</mul:validSmsReplyTo>
<mul:validTelReplyTo>false</mul:validTelReplyTo>
</mul:wsAdvancedMessage>
</mul:sendAdvancedMessage>
</soapenv:Body>
</soapenv:Envelope>
------=_Part_2_1492295307.1508757055602
Content-Type: text/plain; charset=Cp1252; name=envoimail.txt
Content-Transfer-Encoding: quoted-printable
Content-ID: <mdws-attached/envoimail.txt>
Content-Disposition: attachment; name="envoimail.txt"; filename="envoimail.txt"

Ceci est le texte =E0 envoyer par mail en piece jointe
------=_Part_2_1492295307.1508757055602--


Est-ce que quelqu"un pourrait m'aider svp.

Merci


  • 0

PUBLICITÉ

    Annonces Google









Sujets similaires :     x