das schein ja wirklich ne feine sache zu sein.
Es funktioniert wirklich mcabber von außen zu steuern.
meine Konfog sieht so aus:
Code:
set username = XXXXXXX
set server = jabber.org
set resource = console
set priority = 1
#Für den Automatischen Login
set password = XXXXXXX
set ssl = 1
set ssl_verify = 0
set fifo_name = /var/tmp/mcabber.fifo
set logging = 1
set load_logs = 1
set logging_dir = /var/media/ftp/stick/mcabber/logs
set event_log_files = 1
set event_log_dir = /var/media/ftp/stick/mcabber/events
#Ich will unsichtbar sein :)
set hook-post-connect = status invisible
damit kann ich mich automatisch einloggen und auch per fifo steuern, z.b. schreibt
mir eine kleine nachricht oder
Code:
echo "/quit" > /tmp/mcabber.fifo
schließt mcabber.
Leider habe ich erst eine möglichkeit gefunden mcabber im hintergrund laufen zu lassen, nämlich screen, dass sieht z.b. so aus:
Code:
screen -dmS mcabber mcabber
Damit wird eine Screensession gestartet mit dem namen mcabber, in dieser Session wird mcabber gestartet und die Session wird detached (also in den Hintergrund gelegt, man ist also wieder in seiner Konsole).
Wenn man mcabber in dieser session per
Code:
echo "/quit" > /tmp/mcabber.fifo
beendet wird die session auch automatisch beendet.
Gibt es noch eine andere Möglichkeit dafür(ohne screen)? ("mcabber &" oder "mcabber >> /dev/null 2>&1 &" funktionieren nicht, dort bleib mcabber einfach stehen und initialisiert sich nicht
)
Echt ne schöne sache, werde nachher mal die events_commands anschauen mit denen man events nach aktionen triggern kann, also z.b. beim online kommen eines bestimmten budduys ne aktion ausführen.
Man kann auch ne menge hinweise in der
bsp-config dazu finden.
edit:
hab noch mal etwas mit dem events_command gespielt, wenn man die zeile
Code:
set events_command = /var/media/ftp/stick/mcabber/eventcmd
dann wird das script /var/media/ftp/stick/mcabber/eventcmd bei jedem event in der folgenden weise aufgerufen:
Code:
/var/media/ftp/stick/mcabber/eventcmd MSG IN jabber@id [file] (when receiving a message)
/var/media/ftp/stick/mcabber/eventcmd MSG OUT jabber@id (when sending a message)
/var/media/ftp/stick/mcabber/eventcmd MSG MUC room_id [file] (when receiving a MUC message)
/var/media/ftp/stick/mcabber/eventcmd STATUS X jabber@id (new buddy status is X)
/var/media/ftp/stick/mcabber/eventcmd UNREAD N (number of unread buddy buffers)
Will man also aut ein ereignis einer bestimmten person reagieren, dann muss man die Parameter $1 und $2 und $3 richtig filter. Ist auch nciht sehr schwer.
In dem file bei einkommenden Nachrichten steht dann auch die Nachricht. (so könne man auch Komandos auf der Box ausführen per jabber
)