Hauptmenü

SMTP mit GMail

Begonnen von schwa226, 10. September 2012, 20:06:28

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

schwa226

Hallo!

Ich möchte Nachfragen, ob GMail als SMTP Server mit Oscat funktioniert!?

Mit oscat schaffe ich es nicht eine email zu verschicken:
Error_c: 076C0212
Error_t: 05

Online mit diesem Tool geht es:
http://smtper.sweetylife.com/

GMail braucht aber die Option "Require Secured Connection". Liegt es vielleicht daran?
Am Router kann es nicht liegen, da ich es mit einer Client Software im gleichem Netzwerk auch schaffe eine email zu verschicken. Ich muss aber "STARTTLS" als Connection einstellen.

Hat jemand einen Tipp welcher kostenloser SMTP Server brauchbar ist!?

Edit:
Habe es gerade noch mit Yahoo Mail versucht. Da geht das Versenden von emails. Jedoch kann man beim MailFrom keinen Alias dazu geben.  >:( Der Server meldet Error 501 zurück.
Gibt es da noch eine Möglichkeit?

peewit

gmail geht nicht, da nur verschlüsselte Kommunikation zulässig ist, das ist aber mit den ressourcen einer kleinen sps nicht machbar
aber viele der freien email anbieter können benutzt werden

achtung , hier gibt es eventuell noch einen denkfehler

man braucht das email konto zu nur zum versenden der email, und kann das email an jegliches email konten versenden, und somit natürlich auch an ein gmail konto

das absende email konto ist nur das mittel zum zweck

einfach ein kostenloses gmx konto anlegen, und damit die email an ein gmail konto versenden , so einfach ist das

der smtp baustein unterstützt (siehe doku) folgende Authentifizierungs-Verfahren:
OHNE,PLAIN,LOGIN,CRAM-MD5

schwa226

Danke für die Info!

Geht bei GMX das mit dem Namen (Alias) statt der email Adresse?

Ich habe einiges in Google durchsucht, aber die Methode die oscat anwendet:
MAIL FROM: "ALIAS" <mymail@provider.com>
Habe ich nirgends gefunden. Nur Infos, dass im MAIL FROM nur die Absender email mit Domain drinnen sein darf!?

In dem DATA Teil habe ich es schon gefunden:
From: "ALIAS" <mymail@provider.com>

Kann es sein das dass Alias eigentlich nicht in das Mail From reingehört?

peewit

das was du meinst ist das man einen alias namen übergeben kann, der dann vom email client anstatt der realen email adresse angezeigt wird, das ist aber rein optisch !

normalerweise ist es so, das eine echte alias adresse eine zweite emailadresse ist, die vom email provider automatisch an die primäre email adresse weitergeleitet wird, und somit beim email versenden nicht bekannt ist, das diese email adresse eine alias adresse ist
das spielt sich alles beim email provider ab


schwa226

Zitatdas was du meinst ist das man einen alias namen übergeben kann, der dann vom email client anstatt der realen email adresse angezeigt wird, das ist aber rein optisch !

Ja, ich weis das es nur Optisch ist - aber trotzdem ganz nett.

Ich habe es gerade mit Yahoo Mail ausprobiert:
Im String "MAIL FROM: <xxxx>" darf nur die email drinnen stehen.
Der oscat SMTP Client schreibt aber auch den "optisch" schönen Namen mit rein.
Das passt soweit ich das rausgefunden habe aber nicht!
Yahoo z.B. bag das nicht und bricht mit Error 501 ab.

Im String "From: "yyyy" <xxxx>" kann man den "optischen" Namen reinschreiben.
Dieser wird dann auch bei der email als Absender angezeigt.

peewit

#5
hallo

das kann aber noch einen andere grund haben

http://www.oscat.de/community/index.php/topic,1816.0.html

MAIL FROM: "Station_01" <oscat@gmx.net>'    <---- funktioniert bei manchen providern nicht
MAIL FROM: "Station_01"<oscat@gmx.net>'    <---- dort funktioniert es aber so (ohne leerzeichen)

das könnte auch bei dir eine mögliche ursache sein !!!

wenn du die bibliothek als projekt öffnest und im baustein smtp_client den code änderst, dann kannst du es gleich selber testen
ob es dein problem behebt

SMTP_CLIENT

90: IF rcv_state = 235 OR rcv_state = 250 THEN (* 235 = Authentication successful / 250 Requested mail action okay *)
str2 := MAILFROM;
str1 := ELEMENT_GET(59, 1, str2);(* Angezeigter Name lesen , Trennzeichen >;< *)
IF LEN(str1) > 0 THEN
str3 := INSERT('""', str1, 1);  <---- ######### diese zeile habe ich geändert (leerzeichen entfernt )#############
ELSE
str3 := '';
END_IF;

schwa226

Nach dem Urlaub bin ich mal dazu gekommen das zu testen:
ZitatMAIL FROM: "Station_01" <oscat@gmx.net>'    <---- funktioniert bei manchen providern nicht
MAIL FROM: "Station_01"<oscat@gmx.net>'    <---- dort funktioniert es aber so (ohne leerzeichen)

Habe es abgeändert und im Debug sehe ich den String auch richtig.
Yahoo mag das aber trotzdem nicht! -> Error 501 (Syntax error in parameters or arguments)

Wie gesagt, os eine Beschreibung das die ID "Station_01" so in das MAIL FROM reingehört habe ich nirgends gefunden.
Yahoo mag es auf jeden Fall nicht sondern nur in dieser Form:

ZitatMAIL FROM: <oscat@gmx.net>
...
...
From: "Station_01" <oscat@gmx.net>

peewit

hallo

ich habe mir mal das nochmals angesehen, und muss dir recht geben
der alias name ist nicht an der richtigen stelle

es gehört natürlich hierher -> From: "Station_01" <oscat@gmx.net>

tausche bei pcworx im baustein SMTP_CLIENT folgende blöcke aus

90: IF rcv_state = 235 OR rcv_state = 250 THEN (* 235 = Authentication successful / 250 Requested mail action okay *)
str2 := MAILFROM;
ELEMENT_GET(SEP:=BYTE#59,POS:=0,ELEMENT:=str2);(* MAILFROM lesen , Trennzeichen >;< *)
str2:=ELEMENT_GET.ELEMENT;
str1:=ELEMENT_GET.ELEMENT_GET;
snd_text := INSERT('MAIL FROM: <>', str1, 12);
str3 := REPLACE(snd_text, 'From', 9, 1); (* 'MAIL FROM' durch "From" ersetzen und zwischenspeichern *)
next_step := 95;
ELEMENT_COUNT(SEP:=BYTE#35,ELEMENT:=MAILTO); (* Trennzeichen >#< , Anzahl der Blöcke bestimmen *)
MAILTO:=ELEMENT_COUNT.ELEMENT;
cnt1:=ELEMENT_COUNT.ELEMENT_COUNT;
cnt2 := 0;
END_IF;


120:IF rcv_state = 354 THEN (* 354 = Start mail input; end with. *)
snd_enable := FALSE;
str2 := MAILFROM;
ELEMENT_GET(SEP:=BYTE#59,POS:=1,ELEMENT:=str2);(* Angezeigter Name lesen , Trennzeichen >;< *)
str2 := ELEMENT_GET.ELEMENT;
str1 := ELEMENT_GET.ELEMENT_GET;
IF LEN(str1) > 0 THEN
str2 := INSERT('"" ', str1, 1);
snd_text := INSERT(str3, str2, 6);
ELSE
snd_text := str3;
END_IF;
cnt2 := 0;
cnt1 := MIN(2,cnt1); (* BlindCopy Block ausblenden *)
step := 200;
END_IF;


habe es nicht auf sps getestet , probiere es bitte und gib mir bescheid
danke für den tip !


schwa226

Super! Danke!

Funktioniert nun ohne Probleme!