dgr243 Geschrieben 28. August 2013 Teilen Geschrieben 28. August 2013 (bearbeitet) Moin, ich hab hier eine Applikation die für Voicemails per IMAP auf das Exchange Konto des Benutzers zugreift und auf Basis diverser X-Header nach Mails durchforstet. Leider verhalten sich hier Exchange 2007 und 2010 ein wenig unterschiedlich, was mir allerdings die Applikation verhackstückt.. IMAP mäßig sieht das so aus: Login ist ok: 101 LOGIN "<User>" "<Pass>" 101 OK LOGIN completed. 102 SELECT "INBOX"* 1432 EXISTS * 0 RECENT * FLAGS (\Seen \Answered \Flagged \Deleted \Draft $MDNSent) * OK [PERMANENTFLAGS (\Seen \Answered \Flagged \Deleted \Draft $MDNSent)] Permanent flags * OK [UNSEEN 1378] Is the first unseen message * OK [UIDVALIDITY 43] UIDVALIDITY value * OK [UIDNEXT 536124] The next unique identifier value 102 OK [READ-WRITE] SELECT completed. Die eigentliche Suche ist nun: SEARCH NOT DELETED UNSEEN HEADER X-IpPbxVoicemailLength "" * SEARCH SEARCH NOT DELETED HEADER X-IpPbxVoicemailLength "" * SEARCH Interessant ist nun, dass sich hier die verschiedenen Exchange Versionen unterschiedlich Verhalten. In obigem Beispiel vom 2007er Exchange werden keine Mails gefunden, obwohl ich weiß und im Nachgang per Outlook sehen kann, dass auf die Suche passende Mails vorhanden sind. Wenn ich dieselbe Suche auf einem 2010er Exchange mache, werden passende Mails gefunden, was ja auch korrekt ist. Interessant, wirds, wenn ich die Suche wie folgt abändere: SEARCH NOT DELETED UNSEEN HEADER X-IpPbxVoicemailLength [B]" "[/B] * SEARCH SEARCH NOT DELETED HEADER X-IpPbxVoicemailLength [B]" "[/B] * SEARCH Wie man sieht habe ich lediglich zwischen den "" ein Leerzeichen eingefügt und schon liefert der Exchange 2007 korrekt. Dummerweise liefert die Suche MIT Leerzeichen auf dem Exchange 2010 wiederum keine Ergebnisse. Ganz krude wirds, wenn man betrachtet, dass auch der Exchange 2007 je nach konkreter Version/Patchstand mal mit und mal ohne Leerzeichen durchsucht werden will. Irgendjemand eine Idee, wie ich dem Exchange beibringen kann sich hier konstant zu verhalten? Gruss dgr Bearbeitet 28. August 2013 von dgr243 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dgr243 Geschrieben 28. August 2013 Autor Teilen Geschrieben 28. August 2013 Nachdem ich selbst nochmal gegoogled habe: Definiert ist das Ganze in RFC 3501 (RFC 3501 - INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1) HEADER <field-name> <string> Messages that have a header with the specified field-name (as defined in [RFC-2822]) and that contains the specified string in the text of the header (what comes after the colon). If the string to search is zero-length, this matches all messages that have a header line with the specified field-name regardless of the contents. Der Schlüsselsatz ist hierbei IMHO "zero-length". Ein Leerzeichen ist _kein_ Zero Length. Damit verhält sich hier der Exchange 2007 falsch. Seh ich das richtig? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.