„Send me“ – Schick mir die Datei

  • Beitrags-Autor:
  • Beitrags-Kategorie:Software & Co.
  • Lesedauer:4 min Lesezeit

Wer kennt das nícht. Ein Bekannter sagt mal im Gespräch – eben so wie man sagt „Reich mir mein Bier“ – diesen Satz, der oft zum Alptraum wird: „Schick mir die Datei per Email“.

Nun. Es wäre ja kein Problem, wenn alles optimal wäre… Aber in den meisten Fällen ist es nicht so. Die wichtigsten Gründe für das Mißlingen einer Dateisendung per Email sind schnell aufgezählt:

  • Email-Adresse stimmt nicht (ganz) – War das ein Punkt oder doch ein Bindestrich? .com oder .de?
  • Der Speicherlimit der Mailbox des Empfängers ist ausgeschöpft. Es kann nichts mehr angenommen werden
  • Beim senden verliert der Absender, sein PC oder sogar der Server die Geduld. Das SMTP ist nun leider auf kleine Datenmengen ausgelegt!
  • Ist die Zustellung einmal abgelehnt worden, findet man die zum erneuten Sende benötigte Datei – laut Murphie’s Gesetz – nicht mehr, hat sie bereits gelöscht oder arbeitet gerade am anderen Recher!

Wenn man das Email-Protokoll (SMTP für’s Senden und IMAP4 oder POP3 für’s Abholen) kennt, weiß man, dass es keine Binärdaten im Mail-Inhalt zulässt, weil es für die Verbindungssteuerung braucht. Übertragen wird im Mail-Inhalt nur Text (A bis Z, 0 bis 9 und einige Sonderzeichen).  Deshalb werden Dateien als Teil des Mail-Body (sog. „Anhang“) mit der Methode BASE64 in Buchstaben und Zahlen umgesetzt und als solche ausgezeichnet (BTW: das nennt man MIME). Das bläht die Email um ca 10% bis 25% auf. Im Klartext: Statt 1 MB muss man 1.1 bis 1.2 MB übertragen…

Wäre es nicht schöner, die Nachricht von der Datei zu trennen? Mit Rapidshare gibt es so etwas: man legt die Datei auf einem Server ab und schickt den Kollegen die URL. Die Datei liegt dort einige Zeit zum Abruf bereit – meist 48 Stunden.

Wenn man über eigenen Server verfügt, braucht man diesen Umweg nicht (zumal die Daten ja vertraulich sein können). Man setzt mein nicht besonders schönes aber einfaches Programmchen namens „Sendme“ ein. Man kann auf dem Server im unterverzeichnis „data“ durch upload eine Datei ablegen und die URL in die eigene Email reinkopieren oder gleich eine Email versenden. Im zweiten Fall wird neben der Empfänger-E-Mail, dem Passwort für diesen Dienst und der Datei selbst der Nachrichtentext und Ihr Name benötigt – Der Link wird automatisch angehängt. Die E-Mail-Adresse des Empfängers wird nicht gespeichert aber für die erstellung eines kryptischen und eindeutigen Namens notwendig! Mit der .htaccess-Datei im „data“-Verzeichnis soll erreicht werden, dass man sich die abgelegten Dateien nicht einfach auflisten lassen kann, sondern nur bekommt, wenn man weiß wie sie heißt. Im Dateinamen wird zur Sicherheit der vom Browser übergebene Datei-Typ mitgespeichert, damit der Empfänger notfalls prüfen kann, ob er diese Programmdatei herunterladen will – wenn er ein Bild von Ihnen erwartet hat.

Die Steuerung befindet sich in den ersten Zeilen: „HOURS“ legt die Studenanzahl fest nach der eine Datei automatisch gelöscht werden darf (nur unter Linux), „PASSWORD“ enthält das Passwort – wichtig, damit nicht jeder Spammer Ihren Server mißbrauchen darf- sowie „APACHE_EMAIL“ – die E-Mail-Adresse des Absenders (sollte Ihr Apache-Server/PHP die Email versenden).

Download-Verfahren ist den meisten Entwicklern bekannt:

svn co https://svn.heilsberg.org/reps/sendme/

BTW: Mitarbeiter an diesem Projekt sind herzlich willkommen!