Neutrino einen EventTimer hinzufügen.

flasher
Developer
Beiträge: 467
Registriert: Dienstag 15. Juli 2003, 10:58

Neutrino einen EventTimer hinzufügen.

Beitrag von flasher »

Hallo

ich hoffe ich bin in dem Forum jetzt richtig.
Ich würde gerne in Neutrino einen Timer erstellen, der z.B. alle 60Minuten eine Funktion aufruft.
z.B. alle 60 Minuten den Infoviewer automatisch öffnen.

Ich habe im Source auch schon einige Stellen gefunden die g_RCInput->addtimer() beinhalten, werde aber ehrlich gesagt nicht ganz Schlau daraus. (Im infoviewer Source)

Ich bräuchte einen permanenten Timer. Also einen der beim Start von Neutrino aktiviert wird und bis zum Shutdown bestand hat.

Ich hoffe hier ein wenig Hilfe dazu zu bekommen.

Gruß
jmittelst
Tuxboxer
Tuxboxer
Beiträge: 6044
Registriert: Montag 17. November 2003, 06:48

Beitrag von jmittelst »

Such mal nach "Cronjob"

cu
Jens
flasher
Developer
Beiträge: 467
Registriert: Dienstag 15. Juli 2003, 10:58

Beitrag von flasher »

Hallo

Hmm, unter einem CronJob verstehe ich eigentlich was ganz anderes.
Ich denke nämlich nicht, dass ich mit einem CronJob, so wie ich den kenne, eine Funktion in Neutrino aufrufen kann.

Es geht mir nicht darum, alle 60Minuten ein externes Script zu starten sondern tatsächlich innerhalb von Neutrino arbeiten will.

Eigentlich so wie z.B. der TuxMailD. Nur will ich keinen Daemon sondern einen echten Timer der alle 60 Minuten ein Event auslöst.

Nunja, ich suche mal. Vieleicht finde ich in den Ergebnisse ja doch eine interne Variante.
ChakaZulu
Developer
Beiträge: 457
Registriert: Sonntag 23. März 2003, 00:39

Beitrag von ChakaZulu »

hi,

du musst wohl in neutrino.cpp irgendwo am Anfang ein addTimer unterbringen und dann in der großen Nachrichtenverarbeitungsroutine abfragen, ob die Nachricht eine Eventmessage ist und data der timer ist, den du von addtimer zurückbekommen hast. dann kannst du an dieser Stelle machen, was du willst ;). Das Beispiel in infoviewer sollte doch ausreichen, oder was ist unklar?

ciao,

ChakaZulu
flasher
Developer
Beiträge: 467
Registriert: Dienstag 15. Juli 2003, 10:58

Beitrag von flasher »

Danke!

Deine Ausführung hat mich jetzt inspiriert.
Ich weiss jetzt nicht warum ich nicht selbst darauf gekommen bin.

Nochmals Danke. Dann werde ich mal loslegen.

Eine Frage hätte ich noch.
Wird bei den Timern in ms gerechnet? Dan wäre die Stunde ja 360000.

Gruß

*EDIT*

Es sind übrigens Mikrosekunden falls es mal jemand brauchen sollte der es nicht wusste!
flasher
Developer
Beiträge: 467
Registriert: Dienstag 15. Juli 2003, 10:58

Beitrag von flasher »

Hallo, ich nocheinmal.

Ich versuche jetzt schon seit einiger Zeit herrauszubekommen wie ich in der neutrino.cpp abfragen kann ob Neutrino sich gerade im Record-Mode befindet.

Meine Timerrealisierung hat wunderbar funktioniert nur darf der Event nicht ausgeführt werden wenn die Box halt gerade aufnimmt.

Jemand eine Idee?
usul1
Erleuchteter
Erleuchteter
Beiträge: 760
Registriert: Freitag 14. Januar 2005, 12:42

Beitrag von usul1 »

flasher hat geschrieben: Ich versuche jetzt schon seit einiger Zeit herrauszubekommen wie ich in der neutrino.cpp abfragen kann ob Neutrino sich gerade im Record-Mode befindet.
Jemand eine Idee?
Wie wäre es damit per record.start Script ein File in TMP zu erzeugen (und es im record.stop zu löschen) und dann das abzufragen?
(Alternativ kannst du ja mal die Stelle suchen wo diese Scripte von Neutrino aufgerufen werden. Da sollte sich dann ja auch ne globale Variable setzen lassen. Bin kein C Mensch. Keine Ahnung ob man das da so macht)

Nicht das eleganteste aber vollkommen LINUX like ;-) Und bestimmt einfacher als sich durch den Neutrino Quellcode zu wühlen ;-)

cu
usul
flasher
Developer
Beiträge: 467
Registriert: Dienstag 15. Juli 2003, 10:58

Beitrag von flasher »

Hi

so könnte man das machen, stimmt.
Wenn ich jetzt nicht über die Variable : recordingstatus gestollpert wäre würde ich es auch so machen.

gruß