Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/12/2006, 18h59   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2005
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 56
Points : 10
Points : 10
Par défaut Reception de mail / JMAIL

Bonjour,

J'aimerai savoir s'il existe un moyen pour savoir si un mail a été reçu.

Précision : je ne veux pas dire s'il a été "lu" (pour ça une image cachée suffit), ni s'il n'a pas été renvoyé par Mail Delivery Subsystem mais bien si il est simplement arrivé à destination.

J'utilise JMail.



de base j'utilise cette fonction pour la réception:

Code :
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
function receiveMail()
   dim pop3
   dim cpt
   dim msg
 
   Set pop3 = Server.CreateObject( "JMail.POP3" )
 
   pop3.Connect fromEmail,mailPass, mailserver
 
   Response.Write( "Vous avez " & pop3.count & " mails !<br>" )
 
   for cpt=1 to pop3.count
 
       Set msg = pop3.Messages.item(cpt)
 
       Response.Write "From: "&msg.FromName&"<br>"
 
       Response.Write "Subject: "&msg.Subject&"<br>"
 
       Response.Write "Body: "&msg.Body&"<br><br>"
 
   next
 
   pop3.Disconnect
 
end function
Crypt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 11h34   #2
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Salut,
Citation:
Envoyé par Crypt
pour ça une image cachée suffit
Ah bon?? Comment?
Pour ta question, je ferai une vérification par défaut. Quand un mail n'aboutit pas, l'envoyeur reçoit un email du serveur de mail du domaine qui indique la raison pour laquelle le message n'est pas parvenu. Donc, si tu ne reçois rien c'est qu'il est arrivé.
Pour cela tu sera peut-être obligé de lire les mails qui arrivent et de faire une sorte de suivi.

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 14h07   #3
Candidat au titre de Membre du Club
 
Inscription : décembre 2005
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 56
Points : 10
Points : 10
Citation:
Envoyé par Immobilis
Salut,Ah bon?? Comment?
C'est tout simple: tu mets, dans le message en html, une image avec comme src le lien vers une page asp.
Tu peux mettre ce que tu veux en query, donc du coup tu peux savoir si la cible a ouvert le mail. Bien sûr ça n'est pas parfait puisqu'il faut que l'affichage d'images soit autorisé à la reception.

Exemple:
Code :
mail.Body=mail.Body&"<img src="""&repSite&"track.asp?e="&desti_Id&"&em="&compteur&""" width=""0"" height=""0"">"
si l'image est chargée alors le script sur la page track.asp sera exécuté. Tu traites les infos du query (ex: desti_id ) en les sauvant dans une bdd et tu sais si ça a été lu.




Citation:
Envoyé par Immobilis
Pour ta question, je ferai une vérification par défaut. Quand un mail n'aboutit pas, l'envoyeur reçoit un email du serveur de mail du domaine qui indique la raison pour laquelle le message n'est pas parvenu. Donc, si tu ne reçois rien c'est qu'il est arrivé.
Pour cela tu sera peut-être obligé de lire les mails qui arrivent et de faire une sorte de suivi.
A+
Oui mais non.

Ce que je veux c'est savoir si le mail est arrivé à destination. (c'est aussi différent de lu, cf précédemment.)

Il y a une nuance par rapport à "être sûr qu'il y a eu une erreur." Je ne peux pas considérer qu'un mail est arrivé uniquement s'il n'y a pas eu d'erreur en retour.

Je ne sais pas si c'est possible d'ailleurs... (c'est un truc qu'on me demande, si ça ne tenait qu'à moi je me contenterai du retour d'erreur...)
Crypt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2006, 23h05   #4
Candidat au titre de Membre du Club
 
Inscription : décembre 2005
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 56
Points : 10
Points : 10
N'y a t'il aucune solution ?
Crypt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2006, 08h57   #5
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Salut,

Ben pas à ma connaissance. Je peux déplacer ta question dans un autre forum si tu veux.

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2006, 11h55   #6
Candidat au titre de Membre du Club
 
Inscription : décembre 2005
Messages : 56
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 56
Points : 10
Points : 10
non, laisse tomber, j'ai eu une discussion avec le boss et en fait pour lui "reçu" signifie "pas d'erreur" donc le probleme ne se pose plus.


je passe en "résolu" même si ça devrait plutôt être "insoluble"
Crypt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2007, 15h46   #7
Invité de passage
 
Inscription : décembre 2007
Messages : 1
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 1
Points : 1
Points : 1
Par défaut voila un code de reception email avec jmail en vb.net

Code :
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
Sub reception_mail()
        Dim separator, num, fichier, email As String
        Dim cpt, msg
        Dim i As Integer
        Dim Server As New jmail.POP3
        Server.Connect("karim@nom.ma", "pwd", "smtp")
        For cpt = 1 To Server.Count
            num = ""
            num = ""
            fichier = ""
            email = ""
            msg = Server.Messages.Item(cpt)
            Dim a As String = msg.FromName
            email = msg.from
            num = msg.Subject
            'a = msg.Body
            Dim Attachments As New Attachments
            Dim at As New jmail.Attachment
            Attachments = msg.Attachments
            separator = ", "
            Dim s As String = msg.Subject()
            For i = 0 To Attachments.Count - 1
                If i = Attachments.Count - 1 Then
                    separator = ""
                End If
                at = Attachments(i)
                If My.Computer.FileSystem.FileExists("c:\plannetmrabti\" & at.Name) Then
                    My.Computer.FileSystem.DeleteFile("c:\plannetmrabti\" & at.Name)
                End If
                at.SaveToFile("c:\plannetmrabti\" & at.Name)
                ' at.Size
            Next
        Next
        'pr supprimer 
        ' Server.DeleteMessages()
        ' Server.DeleteSingleMessage(N°mail)
 
        'My.Computer.FileSystem.DeleteDirectory("c:\EMail\attachments", FileIO.DeleteDirectoryOption.DeleteAllContents)
        'My.Computer.FileSystem.CreateDirectory("c:\EMail\attachments")
        Server.Disconnect()
 
    End Sub
plannetmrabti est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h31.


 
 
 
 
Partenaires

Hébergement Web