Dies ist eine alte Version des Dokuments!
Bintrash / Asciitrash
unter http://trash.ctdo.de/ / https://trash.ctdo.de/ findet sich unser Virtueller Mülleimer in dem jeder kleine Ascii fetzen oder Dateien kippen kann.
Schnittstellendefinition
Die Schnittstelle von Trash ist wie folgt definiert:
Methode: POST
Asciitrash
URL: http[s]://trash.ctdo.de/asciitrash.php Parameter: action Muss lauten: upload Parameter: textar Enthaelt den zu Speichernden string. Parameter: validity Stell die Gültigkeit ein. Werte wie folgt: 30 Minuten: 1 60 Minuten: 2 12 Stunden: 3 24 Stunden: 4 1 Woche: 5 1 Monat: 6 3 Monate: 7 6 Monate: 8 12 Monate: 9 Parameter: synt Stellt das Syntax Hilighting ein Gültige Werte entsprechend GeSHI Dokumentation http://qbnz.com/highlighter/
Bintrash
URL: http[s]://trash.ctdo.de/bintrash.php Parameter: action Muss lauten: upload Parameter: upfile Enthaelt die zu Speichernde Datei als multipart/form-data Parameter: validity Stell die Gültigkeit ein. Werte wie folgt: 30 Minuten: 1 60 Minuten: 2 12 Stunden: 3 24 Stunden: 4 1 Woche: 5 1 Monat: 6 3 Monate: 7 6 Monate: 8 12 Monate: 9
Shell Script für Trash
Quellcode einer testversion: [browser:/scripts/trash.py] (noch im oldwiki-svn)
Ein weiteres Beispielskript, was bislang die Basics beherrscht , gibt es noch diese Javascript-Variante: http://tmp.fnordig.de/trash.js (man braucht natürlich eine Javascript-Umgebung zum ausführen: http://nodejs.org/)
Hier wollen wir die Software mal genauer planen und dann nachher implementieren.
Anforderungsanalyse
A1:
- Der Benutzer soll die möglichkeit haben, Inhalte aus der Textkonsole an den Trash zu übermitteln und eine URL angezeigt bekommen.
A2:
- Der Benutzer soll sowohl ASCII als auch Binärdaten in die jeweils passenden Trashs laden können. Die Auswahl soll automatisch erfolgen, aber auch einstellbar sein.
A3:
- Die Software soll möglichst ohne großartige Zusatzbibliotheken laufen.
A4:
- Der Benutzer soll Inhalte per STDIN in die Software übergeben können.
A5:
- Der Benutzer soll Inhalte als Parameter übergeben können.
- Es sollen Dateinamen oder direkt strings vorgegeben werden können.
A6:
- Der Benutzer soll per Paramter die Gültigkeit der Daten angeben können.
A7:
- Bei einem Dateiupload soll der Datentransfer/die Transferrate ausgegeben
werden.
A8:
- …