Bonjour à tous,
le webservice Orange change et passe de soap a rest. Dans ce cadre, je modifie mes procédures d'appel pour envoyer mes infos correctement.
Je parviens a récupéré le token d'authentification, envoyer des sms et envoyer des mails.
(code d'envoi du mail d'exemple)
Procedure void_EnvoiMail(LOCAL access_token est une chaîne, LOCAL idgroupe est une chaîne)
maReqMail est un restRequête
mareponseMail est un restRéponse
maReqMail.URL = ChaîneConstruit("%1/v1.2/groups/%2/diffusion-requests", CST_ADRORANGE, idgroupe)
maReqMail..ContentType = "application/json"
maReqMail..Entête["Authorization"] = " bearer " + access_token
VariantJsonMail est un Variant
EnvoiMail est un Variant
EnvoiMail.name = "diffusion TEST MAIL"
EnvoiMail.emails[1] = "EmailTest@entreprise.com"
EnvoiMail.emailParam.senderEmail = "noreply@ms.contactevery.one"
EnvoiMail.emailParam.senderName = "Moi Dev"
EnvoiMail.emailParam.body = "mon contenu email HTML"
EnvoiMail.emailParam.subject = "Mon objet de mail"
maReqMail.Contenu = VariantVersJSON(EnvoiMail)
maReqMail.Méthode = httpPost
mareponseMail = RESTEnvoie(maReqMail)
SI PAS ErreurDétectée ALORS
Info(mareponseMail.Contenu)
VariantJsonMail = JSONVersVariant(mareponseMail.Contenu)
SINON
Erreur(ErreurInfo(errMessage))
FIN
mon problème survient quand je souhaite ajouter une pièce jointe dans le mail.
L'api Orange est bien documentée avec des exemples de codes d'autres langages.
Créer une diffusion email avec pièces jointes
POST /api/v1.2/groups/:id-group/diffusion-requests
Une diffusion email peut comporter jusqu'à 5 pièces jointes (chacune avec un poids de 5Mo max et pour un poids total maximum de 5Mo).
Format de requête
Format de requête
La requête doit être une requête au format multipart/form-data avec comme parties :
partie diffusion (requis) : définition de la diffusion au format application/json,
partie attachment1 : pièce jointe #1,
partie attachment2 : pièce jointe #2,
partie attachment3 : pièce jointe #3,
partie attachment4 : pièce jointe #4,
partie attachment5 : pièce jointe #5.
- Query Parameters
Parameter Type Description
id-group String L'identifiant unique du groupe.
et du code d'exemple associé en C# par exemple.
var client = new RestClient("https://[SERVER_URL]/api/v1.2")
var request = new RestRequest("/groups/[id_group]/diffusion-requests", Method.POST);
request.AddHeader("Authorization", "Bearer [Access-Token]");
var json = @"{
""name"":""test Diff API"",
""emails"":[""johndoe@domain.com""],
""emailParam"":{
"senderEmail":"johnthesender@domain.com",
""senderName"": ""John the sender"",
""body"": ""mon contenu email HTML"",
""subject"":""Mon objet de mail""
}
}";
request.AddParameter("diffusion", json, "application/json", ParameterType.RequestBody);
request.AddFile("attachment1", @"c:\myFirstFile.jpg", "image/jpg");
request.AddFile("attachment2", @"c:\mySecondFile.txt", "plain/text");
IRestResponse r = client.Execute(request);
je souhaite si possible rester sur du windev car tout le reste fonctionne et c'est quand même pratique de rester sur le même environnement de dév pour tout.
pour une variable de type restRequête, il n'existe pas de "AddParameter" ni de "AddFile".
Je n'arrive donc pas a ajouter de pièce jointe.
Auriez vous une solution? (je possède la 24 au besoin)
merci d'avance.