IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Envoi de mail par données Microsoft Azure (WD28) [WD25]


Sujet :

WinDev

  1. #1
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut Envoi de mail par données Microsoft Azure (WD28)
    Je dois envoyer une série de mail (facture clients) par cette méthode. Le problème est qu'il envoie parfaitement le premier , mais n'envoie pas les suivants. Comme si il manquait si c'était la méthode SMTP: EmailFermeSession(gSessionSMTP)
    Merci pour votre aide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
     
     
    Requête est une restRequête
    Réponse est une httpRéponse
    Token est un JSON
    MonMessage est un Email
    monAttache est un emailAttache
     
     
    sClientId est une chaîne = "xxxxxxxx-xxxxx-4f7d-xxxxxxxx-xxxxxxxxx" // ID Client Azure  // par soucis de protection j'ai remplacé les vraies valeurs par des "x"
    sTenantId est une chaîne = "xxxxxxxx-xxxx-xxxxxxx-xxxxxx-xxxxxxxx"    // Id Locataire Azure    // par soucis de protection j'ai remplacé les vraies valeurs par des "x"
    sClientSecret est une chaîne = "xxxxxx~xxxxx_xxxxxxxxxxxxxxxxxxxxxxxx" // Secret Azure ///  // par soucis de protection j'ai remplacé les vraies valeurs par des "x"
    sURI est une chaîne = "https://login.microsoftonline.com/%1/oauth2/v2.0/token"
     
     
     
    // Requête pour obtenir un token...
    Requête..URL = ChaîneConstruit(sURI, sTenantId)
    Requête..Méthode = httpPost
    Requête..ContentType = "application/x-www-form-urlencoded"
    HTTPCréeFormulaire("FORM_TOKEN")
    HTTPAjouteParamètre("FORM_TOKEN","grant_type","client_credentials")
    HTTPAjouteParamètre("FORM_TOKEN","client_id",sClientId)
    HTTPAjouteParamètre("FORM_TOKEN","client_secret", sClientSecret)
    HTTPAjouteParamètre("FORM_TOKEN","scope","https://graph.microsoft.com/.default")
    Réponse = HTTPEnvoieFormulaire("FORM_TOKEN",Requête)
    Token = Réponse..Contenu  // le  token
     
    // Requête pour envoyer l'email grâce au token d'autorisation obtenu...
     
    VariableRAZ(Requête)
    sExpéditeur est une chaîne = "Expediteur@groupjenn.fr" //Expéditeur
    sURI = "https://graph.microsoft.com/v1.0/users/%1/sendMail"
    sURI = ChaîneConstruit(sURI, sExpéditeur )
    // Ou suivant le cas : "https://graph.microsoft.com/v1.0/me/sendMail"
     
     
    // Construction de l'email avec le type Email standard du WLangage...
     
     sFichier est une chaîne = "c:\temp\exemple-image.jpg"
    MonMessage.Message = "Mon email texte"
    MonMessage.Expediteur = sExpéditeur
    MonMessage.Sujet = "Test : API Graph Microsoft"
    MonMessage.Destinataire.Ajoute("momo@gmail.com") // Destinataire
     
    monAttache.Nom					= fExtraitChemin(sfichier, fFichier + fExtension)
    monAttache.Contenu				= fChargeBuffer(sfichier)
    monAttache.ContentType			= "application/pdf"
    monAttache.ContentDescription	= monAttache.Nom
    *
     
     
    // Construction d'un buffer contenant la totalité de l'email (comme un .EML)
     
    MessageEnBuffer est un Buffer
    MonMessage.ConstruitSource(emailOptionEncodeEntête)
    MessageEnBuffer = MonMessage.Source
    MessageEnBuffer = MessageEnBuffer.Encode(encodeBASE64)
     
    // Requête pour envoyer le message
     
    Requête..URL = sURI
    Requête..Méthode = httpPost
    Requête..ContentType = "text/plain"
     
    Requête.Entête["Authorization"] = Token.token_type+" "+Token.access_token
     
    Requête.Contenu = MessageEnBuffer
    Réponse = RESTEnvoie(Requête)
    // SI Réponse.CodeEtat = 202 ALORS OK...

  2. #2
    Membre confirmé

    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 370
    Points : 625
    Points
    625
    Billets dans le blog
    1
    Par défaut
    Salut,
    Que fait tu pour attendre la réponse du serveur ?
    Ne faut t'il pas une attente entre chaque mail?
    Es tu obligé de te reconnecter entre chaque mail ?

  3. #3
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut
    Citation Envoyé par popoy Voir le message
    Salut,
    Que fait tu pour attendre la réponse du serveur ?
    Ne faut t'il pas une attente entre chaque mail?
    Es tu obligé de te reconnecter entre chaque mail ?
    Que fait tu pour attendre la réponse du serveur ? : Que faut il faire ?
    Ne faut t'il pas une attente entre chaque mail? : j'ai rajouté un multitache(200)
    Es tu obligé de te reconnecter entre chaque mail ? j'ai évité la reconnexion

    Ça ne marche toujours pas

    l'exemple qui m'a inspiré est :

    https://blogs.pcsoft.fr/fr/exemple-u...11046/read.awp


    Merci pour ton aide, mais là... le débutant mouline !

  4. #4
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut
    Citation Envoyé par Robert le débutant Voir le message
    Que fait tu pour attendre la réponse du serveur ? : Que faut il faire ?
    Ne faut t'il pas une attente entre chaque mail? : j'ai rajouté un multitache(200)
    Es tu obligé de te reconnecter entre chaque mail ? j'ai évité la reconnexion

    Ça ne marche toujours pas

    l'exemple qui m'a inspiré est :

    https://blogs.pcsoft.fr/fr/exemple-u...11046/read.awp


    Merci pour ton aide, mais là... le débutant mouline !

    j'ai trouvé, en fait faut demander le Token qu'une seule fois

  5. #5
    Membre régulier
    Homme Profil pro
    Autodidacte
    Inscrit en
    Décembre 2016
    Messages
    195
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2016
    Messages : 195
    Points : 84
    Points
    84
    Par défaut
    Citation Envoyé par popoy Voir le message
    Salut,
    Que fait tu pour attendre la réponse du serveur ?
    Ne faut t'il pas une attente entre chaque mail?
    Es tu obligé de te reconnecter entre chaque mail ?
    Juste te remercier, car c'est tes remarques qui ont tout résolu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    Requête	est une restRequête
    Réponse	est une httpRéponse
     
    MonMessage				est un Email
    monAttache				est un emailAttache
    corps,sujet,sfichier	sont des chaînes
    sExpéditeur est une chaîne
     
    // Requête pour obtenir un token...
    Requête..URL			= ChaîneConstruit(sURI, sTenantId)
    Requête..Méthode		= httpPost
    Requête..ContentType	= "application/x-www-form-urlencoded"
     
    IF Token=Null THEN
    HTTPCréeFormulaire("FORM_TOKEN")
    HTTPAjouteParamètre("FORM_TOKEN","grant_type","client_credentials")
    HTTPAjouteParamètre("FORM_TOKEN","client_id",sClientId)
    HTTPAjouteParamètre("FORM_TOKEN","client_secret", sClientSecret)
    HTTPAjouteParamètre("FORM_TOKEN","scope","https://graph.microsoft.com/.default")
    Réponse	= HTTPEnvoieFormulaire("FORM_TOKEN",Requête)
     
    	SI ErreurDétectée ALORS
    		Erreur(ErreurInfo(errComplet))
    	FIN
     
     
     
    Token	= Réponse..Contenu  
     
     
    // Requête pour envoyer l'email grâce au token d'autorisation obtenu...
    VariableRAZ(Requête)
    sExpéditeur= nompromotion //Expediteur
    sURI	= "https://graph.microsoft.com/v1.0/users/%1/sendMail"
    sURI	= ChaîneConstruit(sURI, sExpéditeur )
     
     
     
     
    END

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Envoi de mail par injection de données dans DreamMail
    Par omen999 dans le forum Vos Contributions VBScript
    Réponses: 0
    Dernier message: 06/05/2010, 15h18
  2. Problème d'envoie de mail par SMTP
    Par yass dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 12/09/2008, 16h45
  3. [SQL]Envoie de mail par une procedure
    Par yoyopi dans le forum DB2
    Réponses: 19
    Dernier message: 22/02/2008, 16h30
  4. [Mail] Envoi de mail par SMTP ?
    Par Borami dans le forum Langage
    Réponses: 1
    Dernier message: 03/01/2006, 12h26
  5. [Mail] newsletter, envoi de mail par lot
    Par jexl dans le forum Langage
    Réponses: 9
    Dernier message: 08/09/2005, 16h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo