Hauptmenü

EMail (SMTP-Client)

Begonnen von mg, 31. Juli 2011, 11:16:32

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

mg

Hallo Leute

Regelstation 750-880, Codesys 2.3.9.26

Ich bin nun wirklich kein email profi. Aber ich versuchte es trotzdem mal mit dem Oscat-Email. Es hat allerdings nicht funktioniert ???:

Ich verwende die SMTP_CLIENT_DEMO. Es ist KEINE Firewall aktiviert. Der Router ist von  Cisco.
Ich erhalte immer die Fehlermeldung Error_C=16#001E0000, ERROR_T=16#05. Ich habe mir die Beschreibung genau durchgelesen, aber ich komme nicht drauf was das genau zu bedeuten hat.
Danach habe ich mal einen "Man in the middle Angriff" auf das Teil gemacht (nachdem der interne Sniffer von der Wago-Station keinen Erfolg gebracht hatte) und mit WireShark mitgehört was da passiert. Die Fehlermeldungen ERROR_C und ERROR_T war danach ebenfalls identisch.

Im Wireshark sah ich auf Zeile 9/10 einen Fehler: Es erfolgte von der Wago-Station ein RESET. Warum ... weiß ich nicht!

PS: Der Anhang kann mit dem WireShark Programm geöffnet werden.

PPS: Ich bin ab morgen 10°° auf Dienstreise und kann uU. diese Woche nicht oder nur verzögert antworten.

Danke für Eure Hilfe :D



[gelöscht durch Administrator]

peewit

#1
hallo

bei dir passiert folgendes

email baustein macht die dns abfrage (udp-verbindung) auf ip 8.8.8.8 (google-dns server) und bekommt auch eine gültige antwort
dann versucht der baustein eine tcp-verbindung zum email server aufzubauen

normaler ablauf

sps <-> SMTP-SERVER

1.     -> syn
2.   <-   syn,ack
3.     -> ack
4.   <-   hello client nachricht

bei dir kommt bei schritt 3 jedoch kein ack von sps an email-server sondern gleich ein verbindungsreset
woher dieser kommt lässt sich so leider nicht bestimmen

nun zu der erklärung der fehlermeldung

Fehlermeldung Error_C=16#001E0000, ERROR_T=16#05.

in der doku beim smtp-baustein steht folgendes

---------
Errot_t = 5

Störung: ABLAUF â€" TIMEOUT
ERROR_C enthält im linken WORD die Ablauf-Schrittnummer, und im rechten WORD
den zuletzt vom SMTP-Server empfangenen Response-Code.
Achtung der Parameter muss zuerst als HEX-Wert betrachtet, in zwei WORDS geteilt werden,
und dann als Dezimalzahl betrachtet werden.
Beispiel:
ERROR_T = 5
ERROR_C = 0x0028_00FA
Ablauf-Schrittnummer 0x0028 = 40
Response-Code 0x00DC = 250
----------------------------------------

in deinem fall bedeutet das folgendes
ERROR_T = 5 ist ein Ablauf-timeout
das heisst es wurde nicht erkannt warum die datenverbindung nicht zustande gekommen ist, darum gibt es einen simplen Ablauf-timeout

ERROR_C = 001E0000
0x0015 bedeutet das der fehler in schritt 30 aufgetreten ist, und 0000 das der letzte responsecode vom smtp-server 0000 war also noch gar keiner empfangen wurde.

also der baustein wollte die verbindung aufbauen, diese ist aber eben ohne eine fehlerursache zu erkennen nicht zustand gekommen

---------------


ich kann zu deiner wago 750-880 keine aussage machen, ob die network.lib überhaupt darauf läuft !

hast du schon mittels anderer bausteine / bibliotheken eine tcp verbindung erfolgreich aufgebaut ?

welche netzwerkparameter benutzt du
sps,router, subnet, gateway
möglichst alles beschreiben....

stelle mal dein testprojekt online (im original !)
vielleicht gibt es doch einen logischen grund

------------
Der User "andi72" hat zumindest schon mal mit Wago 750-882 und 750-881 die network.lib verwendet
vielleicht kann er mal auf seiner 750-881 den smtp baustein testen, da die 750-881 und 750-880 sich anscheinend nur minimal unterscheiden
(mehr speicher und steckbare sd-karte)

http://www.oscat.de/community/index.php/topic,1266.msg7194.html#msg7194


mg

#2
Hallo peeweed

Ich habe es nun mit einem 750-871 probiert. (identische Einstellungen - dieser Controller hat einen identischen Aufbau wie der 841)
Siehe da ... es funktioniert.
Somit hängt es vom Controller ab. Der 750-880 ist identisch mit dem 750-881. Ich bräuchte das Ganze im Endeffekt für den 881er. (hab ich aber im Mom. nicht bei der Hand)

Soll ich darauf warten, bis es hier ein Update gibt? Oder geht das zu lange. (PS: Ich nehme mal an, bei Wago werden praktisch alle neu ausgelieferten Controller als 881 ausgeliefert = deutlich höherwertig bei gleichem Preis)

Vielen Dank

Mario

PS: Im Anhang noch das Progi für den 880er.

PPS: Datum stimmt nicht im Progi. Is aber egal.

[gelöscht durch Administrator]

mg

#3
... Danke nochmals für den Hinweis mit Andi72. Ich habs mir durchgelesen, aber zu mehr komme ich nicht. Mir rennt die Zeit davon... nächste Woche gehts weiter ...

Mario

PS: Vielleicht könntest Du Andi72 auch mal über diesen Beitrag informieren ... Vielleicht weiß er was Neues.

mg

#4
Hallo peewit

gibt's von der network.lib auch eine PLAIN TEXT Variante. Zum Importieren (und später zum Fehler suchen) ... Ich hab versucht aus der LIB eine Text Variante zu machen aber irgendwie funktioniert die nicht.  ??? (keine Ahnung warum)

Mario

peewit

hi

das sollte ansich gehen
ich werde es mir ab donnerstag ansehen
(geht nicht früher , bin unterwegs ...)

mg

Ich hänge mein Testprogi mal dazu.
Hier noch mit dem 750-871 getestet.

[gelöscht durch Administrator]

mg

Hallo peeweed

Ich muß diesen Thread das nochmals anstoßen. Tut leid. Ich sollte bis Ende Monat eine Lösung präsentieren und bin nun 2 Wochen unterwegs. Somit ein bischen in Streß. Ich würde es auch selber testen, aber ich müßte wissen, warum das Testprogi von mir nicht mal auf dem 750-871 funktioniert
- NUR der Teil bei dem ich die LIB direkt verwendet hab geht,
- aber der Teil mit der Plain-Text variante geht nicht - obwohl ich das 1:1 aus der Lib kopiert hab
So kann ich das nicht mal testen.

Danke Mario

peewit

#8
plain text sind ja nur die bausteine selber

hast du alle datenstrukuturen globale variablen und zusätzlichen bibliotheken auch eingebunden