INDY 9

cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 29 janv. 2008 à 22:17
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 1 févr. 2008 à 18:25
Bonsoir à tous,

Du fait d'un changement de serveur de messagerie, sur la ligne suivante sous D7
(çà fonctionnait....Avant sur l'ancien serveur)
IdSMTP1.send(IdMessage1);
j'ai l'erreur suivante :
Sender address rejected: not logged in
(bien sûr les adresses email Emetteur et Destinataire sonr correctes)
nb : le nouveau serveur est un WebMail
J'ai cherché, mal cherché certainement et rien trouvé..


une idée ? (@francky, pourrait-il lacher un peu sa carte son ?)

cantador

21 réponses

f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
30 janv. 2008 à 05:50
verifie les parametres du serveur smtp et aussi les regles de securité du dit serveur.

de plus en plus les serveurs SMTP rejette l'accés si une session valide n'est pas en cours...


0
Utilisateur anonyme
30 janv. 2008 à 09:17
Salut,

Désolé de ne répondre que maintenant : je rejoins f0xi si le probleme est survenu suite à un changement de provider c'est qu'il y a un problème dans tes paramètres. Alors :

1)Vérifie que ton provider possède bien un serveur SMTP.
2)Vérifie que le port et le SMTP sont justes.
3)Vérifie que tu dois ou non utiliser une identification (C'est le plus en plus le cas)
4)Vérifie que tes identifiants soient bon (Login et mot de passe sont les memes en général les memes que pour te connecter sur internet)
5)Vérifie que l'adresse que tu as utilisé pour l'expéditeur soit ta vraie adresse (De plus en plus de provider vérifie que le compte de l'expéditeur existe bien : pour éviter le spam).

Si le problème persiste : Essaye d'envoyer un mail via le shell en utilisant le protocole SMTP. Tu véras à quelle étape ca bloque exactement. Dans ce cas tiens nous au courant.

A++
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 10:10
Merci à tous les deux et je pense vous avez mis le doigt dessus concernant la sécurité.
Il doit s'agir vraisemblablement d'une identification car le nouveau serveur (national) est un monstre bourré de sécurité.

Mais pour l'instant, je n'ai pas réussi à régler le souci.. les mails ne partent pas dans mon appli..
Voilà le bout de code en question :

procedure TFAffaire.EnvoiMail(EMET: string; DEST: string; TEXTE: string);
begin
  IdMessage1 := TIdMessage.Create(nil);
  IdSMTP1 := TIdSMTP.Create(nil);
  with IdMessage1 do
  begin
    CharSet := 'iso-8859-1';
    Encoding := meMIME;
    Body.Add(TEXTE);
    From.Text := EMET;
    Recipients.EMailAddresses := DEST;
    Subject := 'Message automatisé';
  end;
  IdSMTP1.Port := 25;
  IdSMTP1.Host := 'MonServeur';  // je mets le vrai nom bien sûr...

  IdSMTP1.Connect(5000);           // là çà passe tjrs..
  try
    try
      IdSMTP1.send(IdMessage1);  ->> plantage avec message d'erreur
    finally
      IdSMTP1.Disconnect;
      IdMessage1.Free;
      IdSMTP1.Free;
    end;
  except
    on e: exception do MessageDlg(e.Message, mtError, [mbOK], 0);
  end;
end;

J'ai testé l'introduction de : 
IdSMTP1.username := 'MonUserName';
IdSMTP1.password:= 'MonPassword';
en utilisant mes codes perso..

juste avant le connect, mais sans résultats..

cantador
0
Utilisateur anonyme
30 janv. 2008 à 10:19
Il manque un truc : la méthode d'identification AtLogin ou AtNone. Regarde si ca change quelque chose
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 11:27
IdSMTP1.AuthenticationType := AtLogin ou

IdSMTP1.AuthenticationType : = AtNone ou

avant le send ou avant le connect..

rien.. quedal..


cantador
0
Utilisateur anonyme
30 janv. 2008 à 11:44
Et si tu fais avec le shell : ca bloque à quelle commande ?
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 14:05
Si tu as déjà testé sous SMTP
merci de m'envoyer le script.

cantador
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 14:17
précision :
C'est la sécurité SSL qui est utilisée.

cantador
0
Utilisateur anonyme
30 janv. 2008 à 14:57
Essaye ca dans le shell (Mais soit rapide à cause du TimeOut)

Telnet smtp.blablab.bla 25   (Soit Telnet SMTP PORT)
>>EHLO MAIL+CRLF : Si ok on recoit 250
>>AUTH LOGIN + CRLF : Si ok on recoit 334
>>LOGIN CODE EN BASE 64+ CRLF : Si ok on recoit 334
>>MOT DE PASSE CODE EN BASE 64+ CRLF : Si ok on recoit 235
>>MAIL FROM: <+ADRESSE DE L'EXPEDITEUR+>+CRLF : Si ok on recoit 250
>>RCPT TO: <+ADRESSE DU DESTINATAIRE+>+CRLF : Si ok on recoit 250
>>DATA+CRLF : Si ok on recoit 354
>>SUBJECT: UN TEST+ CRLF
>> CRLF
>>C'est juste un test+CRLF
>>  .   + CRLF //C'est un point là il est important : Si on recoit 250 le mail a été envoyé
>>Quit+CRLF : On ferme la connection si ok on recoit 221
0
Utilisateur anonyme
30 janv. 2008 à 15:05
Pour le codage en base 64 : utilise ce lien c'est bien pratique. Tu écrit ta string dans texte et tu cliques sur <Encode>
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 15:33
Merci pour le lien sur le codage (très pratique)
mais la connextion (telnet smtp port 25) ne fonctionne pas..
(du moins il y a une tentative d'accroche mais pas de curseur, çà se ferme)

J'ai pensé aussi à ces dll de indy qu'il faut mettre en place..
et peut-être aussi les certificats..(On se sert de FireFox et Thunderbird)

chui in the merdia..

cantador
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 15:34
N'y aurait-il pas la possibilité de lancer tout ton script en seule fois ?

cantador
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 15:50
autre info : je confime SSL,
mais en revanche, pas de certifs sous FireFox..

cantador
0
Utilisateur anonyme
30 janv. 2008 à 16:11
Désolé je n'avais pas tilté pour le SSL : je pense que tu vas etre dans le caca :Indy ne semble rien proposer pour le protocole SSH et il ne semble pas pris en compte avec le composant IdSMTP. La seule alternative que je vois est de faire ton propre serveur SMTP afin de passer outre le SSL
0
Utilisateur anonyme
30 janv. 2008 à 16:11
Pardon pas SSH mais SSL désolé je suis fatigué en ce moment
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 16:59
J'ai trouvé chez nos confrères...
http://delphi.developpez.com/faq/?page=indy_gene_bases#UtiliserSSLIndy

Mais, çà marche pas du moins m'en faudrait un peu plus pour paramétrer le compo idSSLIOHandlerSocket.

GRR..GRRRR...

cantador
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
30 janv. 2008 à 17:07
procedure EnvoiMail(EMET: string; DEST: string; TEXTE: string);
begin
  IdMessage1 := TIdMessage.Create(nil);
  IdSMTP1 := TIdSMTP.Create(nil);
  with IdMessage1 do
  begin
    Priority := mpHigh;
    CharSet := 'iso-8859-1';
    Encoding := meMIME;
    ContentType := 'text/html';
    Body.Add(TEXTE);
    From.Text := EMET;
    Recipients.EMailAddresses := DEST;
    Subject := 'Message automatisé;
  end;
  IdSMTP1.Port := 25;
  IdSMTP1.Host := 'MonServeur';
  IdSMTP1.Connect(5000);


  try
    IdSMTP1.IOHandler := Form1.IdSSLIOHandlerSocket1;
    IdSMTP1.AuthenticationType := AtLogin;
    IdSMTP1.Username := MonUserName;
    IdSMTP1.Password := MonPassword';
    IdSMTP1.send(IdMessage1);
  finally
    IdSMTP1.Disconnect;
  end;
  IdMessage1.Free;
  IdSMTP1.Free;
end;

A noter que maintenant, je n'ai plus de message d'erreur mais :
"la connexion s'est terminée proprement"

chui tout propre, mais rien ne part !

cantador
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
1 févr. 2008 à 08:02
cantador
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
1 févr. 2008 à 08:03
Frnacky t'es toujours là ?
Si on faisait un post sur Indy + SSL ?

cantador
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
1 févr. 2008 à 18:23
cantador
0
Rejoignez-nous