Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 05.02.2010, 21:54 Titel: [Linux] [FB] Remember-Deamon |
|
|
[Download-Link]
mrd.tar (50 KB)
[Betriebssystem]
Linux
[Funktion]
Erinnerungen anhand eines XML-files erfassen, benutzer per GTK-Fenster benachrichtigen (erinnern)
[Technisches]
Das ganze besteht aus zwei teilen: einmal dem Deamon, der die Memory einliest, auf korrektheit überprüft und anschließend in einer loop wartet bis ein erinnerungszeitpunkt eintritt.
Wenn ein Termin eintritt ruft der deamon ein kleines programm auf das ein GTK-fenster mit der Nachricht spawnt.
[Features]
- Beliebig viele Memorys
- Memorys können sich wiederholen (täglich, wöchentlich, monatlich, jährlich)
- einmalige Memorys werden auch aus der liste gelöscht (bzw nicht neu geschrieben)
- Datumsangabe (noch): in Wochentagen (deutsch / englisch), im format dd.mm.yyyy , dd.mm[.] oder leer (= datum des deamon-aufrufs).
- Memorys in XML-file
- Wiederholungs-interval (für alle wiederholungsarten) (<interval>x</interval>
- Erinnerungen mit Daten in der Vergangenheit werden auf das nächste Datum an dem sie wiederholt werden sollen gesetzt
- Beim aufruf der Erinnerung wird anschließend das Datum auf den nächsten wiederholungs-termin gesetzt
- Erinnerungen während der Laufzeit hinzufügen
[ToDo]
- Windows-Version(???)
- überarbeitung der call_men() und main() (< mehrere Erinnerungs-fenster gleichzeitig)
- Gui-App für das Verwalten der Erinnerungen -> kann mir da einer helfen?
- Performance beim Einlesen verbessern
- Delete-Button bei Erinnerungen ohne Wiederholung ausblenden
- Date-Range (z.b. von montag bis freitag, oder vom 15.2 bis zum 20.2) (??)
- Erinnerungsliste während der Laufzeit abfragen (fragt sich nur wie)
- Nur-ein-prozess-gleichzeitig (... fragt sich nur wie)
[Updates]
> 6.02.10
Feature Updates (siehe oben)
kleinere Bugfixes
xmlparse.bas ins archiv gelegt
> 8.02.10
- XML-Syntax geändert - fehler durch falsches Datums-format sind jetzt ausgeschlossen
- "Sicherheitslücke" geschlossen - es war möglich mit hilfe der Memorys code auf benutzer-ebene auszuführen (nicht als root)
- Chronologische Sortierung der Erinnerungen (werden dann auch sortiert gespeichert.
> 20.02.10
- Änderungen in der LinkedList (weniger statisch, mehr features)
- Kleine Bugfixex
- Hinzufügen von Erinnerungen während der laufzeit (via ConFiMa)
- MRD schreibt jetz einen Log (/home/<username>/.mrd/mrd.log)
- Code aufgeräumt
----------
Ich hoffe jemand kann damit was anfangen.. und bevor ichs vergesse: herzlichen dank an nemored für seinen xml-parser. _________________ // nicht mehr aktiv //
Zuletzt bearbeitet von The_Muh am 24.02.2010, 21:56, insgesamt 10-mal bearbeitet |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4597 Wohnort: ~/
|
Verfasst am: 06.02.2010, 03:15 Titel: |
|
|
Zitat: | und bevor ichs vergesse: herzlichen dank an nemored für seinen xml-parser. |
Du hast hoffentlich den genommen, welcher meiner aktuellen patfinder-Version beiliegt - ist im Vergleich zu dem vor einem halben Jahr ein Stückchen fehlerverbessert und kann jetzt auch grundlegende Kommentare ignorieren. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 06.02.2010, 14:45 Titel: |
|
|
japp, den hab ich genommen. _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 06.02.2010, 19:22 Titel: |
|
|
Update (siehe oben)
Aber scheinbar interessiert das projekt keinen =/ _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
MOD Fleißiger Referenzredakteur
Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 06.02.2010, 19:33 Titel: |
|
|
Mein Arbeitssystem ist Windows, von dem her kann ich mit der Linuxversion nicht viel anfangen. Ich denke bei den meisten anderen wird das ähnlich sein. ("meisten" <> "allen" bevor da Beschwerden kommen) |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 06.02.2010, 19:40 Titel: |
|
|
Problem ist, das ich nicht weiß wie ich unter Windows die Kill-Signale abfange, um das ganze ordentlich zu beenden... unter linux is das kein problem. _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
MOD Fleißiger Referenzredakteur
Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 06.02.2010, 20:02 Titel: |
|
|
Abschießen über den Taskmanager wirst du nicht abfangen können, aber soweit ich weiß, gibt es auch unter Linux Kill-Signale nicht nicht abgefangen werden können.
Für alles andere gibt es Tastenkombinationen die man abfragen kann.
Evtl. hilft auch ein Destructor. |
|
Nach oben |
|
|
Muttonhead
Anmeldungsdatum: 26.08.2008 Beiträge: 562 Wohnort: Jüterbog
|
Verfasst am: 06.02.2010, 20:08 Titel: |
|
|
[fun]
... ach MOD... hier will ein elitärer Zirkel unter sich bleiben...
[/fun]
möööp
(betrifft mich ja schliesslich auch!!)
|
|
Nach oben |
|
|
croco97
Anmeldungsdatum: 04.11.2005 Beiträge: 260
|
Verfasst am: 06.02.2010, 21:53 Titel: |
|
|
Hi Muh!
Tröste dich - auf meinen Fraktalgenerator hat sich gar keiner gemeldet... Du musst da so sehen: Das ist ein gutes Zeichen. Alle haben sich die Software runtergeladen und sind nun so begeistert damit unterwegs, dass sie einfach keine Zeit finden, einen Reply zu schreiben
Ich hab's ganz ehrlich nicht verstanden: Was ist "eine memory"? Eine Nachricht, die mich an was erinnern soll? Oder hat das was mit Hauptspeicher zu tun?
Viele Grüsse!
Croco |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 07.02.2010, 17:16 Titel: |
|
|
Eine Nachricht, die dich an was erinnern soll, richtig. "Erinnerungs-Daemon" is kein schönes Neu-deutsch *g* _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4597 Wohnort: ~/
|
Verfasst am: 07.02.2010, 23:01 Titel: |
|
|
Nun ja, nachdem der Daimon aus dem Griechischen kommt, kannst du es ja mal mit einem mimneskischen Daimon probieren.
Als englisches Wort würde ich eher "remember" vorschlagen, da "memory" wie gesagt an Memory-Speicher erinnert. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 08.02.2010, 01:10 Titel: |
|
|
Is Umbenannt... ich werd das XML mal leicht ändern, Beispiel für den neuen Syntax:
Code: |
<memory>
<time>
<hour>13</hour>
<minute>37</minute>
</time>
<date>
<day>13</day>
<month>07</month>
<year>2010</year>
</date>
<message>G33k-T1m3! =)</message>
<repeat>
<type>yearly</type>
<interval>1</interval>
</repeat>
</memory>
|
Wird einfacher zu parsen... _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 08.02.2010, 10:17 Titel: |
|
|
Die "Konkurrenz"-Anwendung aus dem Haus Microsoft für die hier diskutierte Anwendung nennt sich Outlook vom Office-Paket, ebenso jedes bessere Handy, d.h. Terminkalender ist halt eine typische PIM-Anwendung.
Sonst finde ich es gut, dass Du aufs Standardformat XML zurückgreifst. Wichtig ist einfach, dass Du eine DTD definierst. Deswegen sollte eine .xml-Datei auch immer mit beispielsweise einem
Code: | <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE erinnerung SYSTEM "http://www.the-muh.de/erinnerung.dtd"> |
beginnen (natürlich muss die .DTD auch tatsächlich auf Deinem Webspace publiziert sein, damit sie ein XML-Syntax-Parser per HTTP-Request holen kann!). Was das Parsing betrifft: Es gibt inzwischen genügend Bibliotheken, die sich um das Parsing kümmern. Von Microsoft gibt es beispielsweise die XML Core Services für diesen Zweck. Unter Linux gibt es die libxml für dasselbe. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
Stueber
Anmeldungsdatum: 07.07.2008 Beiträge: 202
|
Verfasst am: 08.02.2010, 14:00 Titel: |
|
|
Unter Windows gibt es auch libxml, die Header sind bei FreeBASIC sogar schon dabei. |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 08.02.2010, 14:44 Titel: |
|
|
Webspace hab ich nicht. aber ich denke das XML von mir is so einfach zu lesen, das bekommt jeder auf die reihe...und wozu libxml? Funktioniert doch so auch ganz prima.
Nebenbei hab ich heut das ganze mal etwas geupdatet.
Zum Syntax gibts nur eine Wichtige sache:
<time> und <message> müssen einen wert haben,
bei <date> wird ersatzweise das aktuelle datum eingesetzt,
bei <repeat><type> wird none angenommen.
(<repeat><interval> ist standard 1) _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 08.02.2010, 15:27 Titel: |
|
|
The_Muh hat Folgendes geschrieben: | Zum Syntax gibts nur eine Wichtige sache:
<time> und <message> müssen einen wert haben,
bei <date> wird ersatzweise das aktuelle datum eingesetzt,
bei <repeat><type> wird none angenommen.
(<repeat><interval> ist standard 1) |
Exakt für derartige Definitionen (Du definierst hier REQUIRED-Attribute) wurde die DTD geschaffen. Ist eine formale Sprache um derartige Syntax-Constraints (Bedingungen) zu definieren. Tool an dieser Stelle:
http://xmlstar.sourceforge.net/
=> kann u.a. XML-Dateien validieren (=prüfen, ob derartige Constraints eingehalten sind). Logischerweise benötigt dieses quelloffene Tool die Syntaxregeln aus einer solchen .dtd-Datei. Diese kann selbstverständlich auch aus einer Offline-Resource stammen.
Ansonsten das W3C-Konsortium verteilt beispielsweise ebenfalls DTDs und URL-Form:
http://www.w3.org/TR/html4/strict.dtd
http://www.w3.org/TR/html4/loose.dtd
http://www.w3.org/TR/html4/frameset.dtd
Als Linux-Benutzer kannst Du diese direkt mit einem
herunterladen. In diesen DTDs sind ebenfalls all diese Regeln, dass z.B. ein <BODY> immer in ein <HTML> gehört, ein <P> in ein <BODY> usw. definiert, so dass ein Syntaxprüfer zwischen well-formed HTML und nicht korrektem HTML unterscheiden kann. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 14.02.2010, 17:38 Titel: |
|
|
Erstmal: Hab mal oben die Todo-liste aktualisiert. Ein(ige) Feature(s) sind zwar schon fertig, aber ich will noch ein paar sachen optimieren bis ich release.
Zweitens:
@Drael: danke für den tipp.. aber ich will erstmal alle geplanten features einbauen, da sich die Spezifikationen der Memory-liste noch ändern (können).
(und... ich weiß wie man wget benutzt... ich nutze Linux schon ein wenig länger )
Drittens: weiß einer wie das mit DBus und Freebasic aussieht? ich hab die idee erst eben bekommen, deswegen frag ich direkt hier.. recherchiert hab ich noch nicht.
mfg
The_Muh _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 20.02.2010, 16:49 Titel: Update!! |
|
|
Update is da. hab aber nich alles eingebaut was ich einbauen wollte, aber dafür ein paar andere sachen (siehe oben) _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
|