AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

pop3 timestamp

Ein Thema von josefkoller · begonnen am 12. Feb 2014 · letzter Beitrag vom 13. Feb 2014
Antwort Antwort
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#1

pop3 timestamp

  Alt 12. Feb 2014, 14:08
Hallo,

ich komme aus dem Fragen nicht mehr raus:

in pop3send von synapse ist ein Property timestamp definiert.

Da dachte ich, das nehme ich, um zu wissen, ab wann ich beim erneuten Abholen von Mails weiß, wann die letzten Mails geholt wurden.

Nun steht bei diesem Property auch, daß nicht alle Server timestamp unterstützen.

Natürlich macht mein Server auch kein timestamp.

Wie "markiert" ihr die letzte abgeholte Mail, um einen Wiederaufsatzpunkt zu haben?

Danke

Josef
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.338 Beiträge
 
Delphi 12 Athens
 
#2

AW: pop3 timestamp

  Alt 12. Feb 2014, 14:46
Nahezu alle Mailprogramme merken sich die "ID" der Mails, welche sie schon haben.

Laden dann alle Header, vergleichen die IDs und laden dann die Bodys der fehlenden Mails.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: pop3 timestamp

  Alt 12. Feb 2014, 15:17
Nahezu alle Mailprogramme merken sich die "ID" der Mails, welche sie schon haben.

Laden dann alle Header, vergleichen die IDs und laden dann die Bodys der fehlenden Mails.
Besser geht es mit dem POP3 Kommando UIDL n, dann bekommt man die eindeutige Mail-ID unter der diese Mail dem POP3-Server bekannt ist. Zudem erspart man sich das Laden der Header und eine Mail-ID ist im Header auch nicht zwangsläufig zu finden.

Die korrekte Abfolge wäre also
Code:
LIST
// Ergibt die Anzahl der Mails und die gesamte Größe im Postfach
// Jetzt ein Loop über alle Mails
UIDL n
// Ist diese Mail schon geladen?
LIST n
// Ist diese Mail zu groß zum laden?
TOP n
// Spricht irgendetwas dagegen, diese Mail zu laden (Header auswerten)?
RETR n
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (12. Feb 2014 um 15:24 Uhr)
  Mit Zitat antworten Zitat
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#4

AW: pop3 timestamp

  Alt 12. Feb 2014, 16:14
Danke für die Antwort.

blicke trotzdem nicht recht durch!

in synapse steht

Delphi-Quellcode:
function Uidl(Value: Integer): Boolean;
Send UIDL command. If Value is 0, UIDL is for all messages. After successful operation is listing in FullResult. If all OK, result is True.
Es müßte doch dann bei einer Mail, die ich noch nicht "abgeholt" habe, ein false kommen??? Oder???
Bei mir kommt immer true.

Beispiel:

Meine Tests hab ich immer mit den ersten 12 Mails gemacht.

Delphi-Quellcode:
...
for i:=1 to 12 do begin
pop.retr(i);
pop.RetrStream(i, retrStream);
      retrStream.Position := 0;
...
Wenn ich jetzt beim nächsten Test schreibe, also vor die retr-Schleife:

Delphi-Quellcode:
    for j:=1 to 15 do begin
    uiresult:=pop.Uidl(j);
      if pop.Uidl(j)then
       uiresult1:=1 else uiresult1:=0;
      showmessage(inttostr(uiresult1));
     end;
Dann müßte doch bis zur 12. Mail eine "1" in showmessage stehen und dann in den nächsten 3 Mails eine "0".

Wie gesagt, ich glaub, ich blick da nicht recht durch

Vielleicht noch eine genauerer Hinweis, wie's geht???

Danke.

Josef
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: pop3 timestamp

  Alt 12. Feb 2014, 17:34
Bei jeder Methode bekommst du als Result true , wenn die Methode erfolgreich ausgeführt wurde.

Bei einem false kannst du die Verarbeitung abbrechen.

Delphi-Quellcode:
if pop.Uidl( MailIdx ) then
begin
  pop.FullResult ... // da findest du jetzt die MailID
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#6

AW: pop3 timestamp

  Alt 12. Feb 2014, 18:14
Hallo,

ich fürchte, irgendwann falle ich euch auf die Nerven.

ich schreib mal zwei Headers hier in den Post:

Ich hoffe, du meinst mit MailID nicht die Message-ID (da gibt es Mails, die haben keine).

Also welche ID meinst Du:

In der GMail Variante ist eine Message-ID, in der anderen Variante keine.
In der einen ist eine Zeichenfolge: "id EBFC110537A3".

Also, was soll ich als Identifikation hernehmen?

Ein Header aus GMail:
Delphi-Quellcode:
MIME-Version: 1.0
Received: by 10.14.xxx.133 with HTTP; Wed, 12 Feb 2014 09:52:55 -0800 (PST)
In-Reply-To: <CAEN1bAi8R1TC6_3WUjWFxeyFJuCMniS7zv8-Ad8y1_pj5Ra9RQ@mail.gmail.com>
References: <0-13541249275486067004-6679340351161396899-thtmlviewer=googlecode.com@googlecode.com>
   <1-13541249275486067004-6679340351161396899-thtmlviewer=googlecode.com@googlecode.com>
   <2-13541249275486067004-6679340351161396899-thtmlviewer=googlecode.com@googlecode.com>
   <CAEN1bAi8R1TC6_3WUjWFxeyFJuCMniS7zv8-Ad8y1_pj5Ra9RQ@mail.gmail.com>
Date: Wed, 12 Feb 2014 18:52:55 +0100
Delivered-To: infojosefkoller@gmail.com
Message-ID: <CAEN1bAj12V-HKCNxog1MmTLK5s_EgyHeUXj6-xG_Xc+5-3AyRw@mail.gmail.com>
Subject: Fwd: Issue 332 in thtmlviewer: htmlviewer kills other components
From: Josef Koller <infojosefkoller@gmail.com>
To: info@josefkoller.de
Content-Type: multipart/alternative; boundary=e0cb4e6ff4c917a84e04f2393e9b

--e0cb4e6ff4c917a84e04f2393e9b
Content-Type: text/plain; charset=UTF-8

Ein Header mit one.com:
Delphi-Quellcode:
Return-Path: <info@josefkoller.de>
Delivered-To: info@josefkoller.de
Received: from mx-r.one.com (mx-r.one.com [91.198.169.249])
   by mail123.local (Postfix) with ESMTP id C826910537A3
   
   
Received: from mx-q.one.com (mx-q.one.com [91.198.169.248])
   by mail123.local (Postfix) with ESMTP id EBFC110537A3
   
   
   for <info@josefkoller.de>; Mon, 3 Feb 2014 02:57:08 +0100 (CET)
X-Virus-Scanned: by one.com
X-Amavis-Alert: BAD HEADER SECTION, Non-encoded 8-bit data (char C3 hex):
   Subject: Eingangsbest\303\244tigung Ihrer B[...]
X-Greylist: whitelisted by SQLgrey-1.8.0-rc2
Received: from mail-out1.b-one.net (mail-out1.one.com [91.198.169.18])
   by mx-r.one.com (Postfix) with ESMTP id 6112320C9C09A
   for <info@josefkoller.de>; Sun, 2 Feb 2014 14:10:35 +0000 (UTC)
Received: from localhost.localdomain (web199.local.one.com [10.246.64.199])
   by mail-out1.b-one.net (Postfix) with ESMTP id 50F0A80030397;
   Sun, 2 Feb 2014 15:10:35 +0100 (CET)
Received: from 93.222.184.106 by www.josefkoller.de via /mailenbestellungenbienen.php with HTTP; So, 02 Feb 2014 14:10:35 +0000
To: koexxxxx@web.de
Subject: Eingangsbestätigung Ihrer Bestellung
X-PHP-Originating-Script: 1275562:mailenbestellungenbienen.php
MIME-Version: 1.0
Content-type: text/html; charset=UTF-8
From: info@josefkoller.de
Cc: info@josefkoller.de
X-Antivirus: AVG for E-mail 2014.0.4259 [3697/7085]
X-AVG-ID: ID3026F6BF-5D8FAB25
Bin schön langsam am Verzweifeln. Diese blöden Mails.

In dem zweiten Header fehlt auch das Date:

Nur in folgender Zeile findet man ein brauchbares Datum:

Sun, 2 Feb 2014 15:10:35 +0100 (CET)

Nur auch hier: wie auslesen?

Danke nochmal.

Josef
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz