unlimitopen
29.08.08, 23:15
Hallo zusammen,
ich versuche mich schon seit langem eine vernünftige Lösung zu schaffen um wichtige Informationen aus den Log -dateien (Messages,Syslog,Apache etc) ins Jabber zu transferieren.
Alles klappt! vom Client über das unten genannte Script auf den Jabber Server - Richtung Jabbergruppe - alles OK.
Wenn ich aber das unten genannte Script direkt lokal vom Server ausführe - (Vorraussetzung sind klar passende Perl Module etc.)
wird das script zwar ausgeführt aber nur die Meldung unten im Debug Fenster vom Jabberserver erscheint - aber die Meldungen die eigentlich an den Client verschickt werden sollen kommen nicht über.
Jetzt die Frage an die Experten:
Kann ich bei der Einstellung des Jabberservers eine Konfiguration setzen das Nachrichten von der selben IP des Jabberserver ignoriert werden? Ich vermute das es sowas sein könnte? Wenn ich lokal mich mit Gaim oder kopete am Server anmelde kann ich auch Nachrichten versenden. könnte es vielleicht auch am Perl liegen? Keine Ahnung mehr... ...
Einfaches Script zum text versenden zum Jabberserver
#!/usr/bin/perl
use Log::Dispatch;
use Log::Dispatch::Jabber;
my $dispatcher = Log::Dispatch->new();
my $jabber = Log::Dispatch::Jabber->new(
name=>"jabber",
min_level=>"debug",
login=>{
hostname => "jabberd.homenet.netz",
port => 5222,
username => "admin",
password => "12345",
resource => "announce/online",
},
to=>["christian\@jabberd.homenet.netz"], #,chief_honco\@a.jabber.server"],
check_presence=>1,
# Send a message to this address even if their
# presence indicates they are not available.
force=>"admin\@jabberd.homenet.netz",
# Buffer 5 messages before sending.
buffer => "5",
);
$dispatcher->add($jabber);
$dispatcher->log(
level => 'debug',
message => 'Hello. Programmer. This is '.ref($jabber)
);
Meldung vom Jabberserver
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
I(<0.256.0>:ejabberd_listener:112) : (#Port<0.518>) Accepted connection {{192,168,25,236},28736} -> {{192,168,25,236},5222}
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
D(<0.584.0>:ejabberd_receiver:297) : Received XML on stream = "<?xml version='1.0'?><stream:stream version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' to='jabberd.homenet.netz' from='jupiter.homenet.netz' xml:lang='en' >"
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
D(<0.585.0>:ejabberd_c2s:1335) : Send XML on stream = "<?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='3998054199' from='jabberd.homenet.netz' version='1.0' xml:lang='en'>"
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
D(<0.585.0>:ejabberd_c2s:1335) : Send XML on stream = "<stream:features><starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>DIGEST-MD5</mechanism><mechanism>PLAIN</mechanism></mechanisms><register xmlns='http://jabber.org/features/iq-register'/></stream:features>"
Jabberserver : ejabberd 2.0.1
Linux: OpenSuse 10.2
Clients: ubuntu, fedora 9
ich versuche mich schon seit langem eine vernünftige Lösung zu schaffen um wichtige Informationen aus den Log -dateien (Messages,Syslog,Apache etc) ins Jabber zu transferieren.
Alles klappt! vom Client über das unten genannte Script auf den Jabber Server - Richtung Jabbergruppe - alles OK.
Wenn ich aber das unten genannte Script direkt lokal vom Server ausführe - (Vorraussetzung sind klar passende Perl Module etc.)
wird das script zwar ausgeführt aber nur die Meldung unten im Debug Fenster vom Jabberserver erscheint - aber die Meldungen die eigentlich an den Client verschickt werden sollen kommen nicht über.
Jetzt die Frage an die Experten:
Kann ich bei der Einstellung des Jabberservers eine Konfiguration setzen das Nachrichten von der selben IP des Jabberserver ignoriert werden? Ich vermute das es sowas sein könnte? Wenn ich lokal mich mit Gaim oder kopete am Server anmelde kann ich auch Nachrichten versenden. könnte es vielleicht auch am Perl liegen? Keine Ahnung mehr... ...
Einfaches Script zum text versenden zum Jabberserver
#!/usr/bin/perl
use Log::Dispatch;
use Log::Dispatch::Jabber;
my $dispatcher = Log::Dispatch->new();
my $jabber = Log::Dispatch::Jabber->new(
name=>"jabber",
min_level=>"debug",
login=>{
hostname => "jabberd.homenet.netz",
port => 5222,
username => "admin",
password => "12345",
resource => "announce/online",
},
to=>["christian\@jabberd.homenet.netz"], #,chief_honco\@a.jabber.server"],
check_presence=>1,
# Send a message to this address even if their
# presence indicates they are not available.
force=>"admin\@jabberd.homenet.netz",
# Buffer 5 messages before sending.
buffer => "5",
);
$dispatcher->add($jabber);
$dispatcher->log(
level => 'debug',
message => 'Hello. Programmer. This is '.ref($jabber)
);
Meldung vom Jabberserver
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
I(<0.256.0>:ejabberd_listener:112) : (#Port<0.518>) Accepted connection {{192,168,25,236},28736} -> {{192,168,25,236},5222}
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
D(<0.584.0>:ejabberd_receiver:297) : Received XML on stream = "<?xml version='1.0'?><stream:stream version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' to='jabberd.homenet.netz' from='jupiter.homenet.netz' xml:lang='en' >"
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
D(<0.585.0>:ejabberd_c2s:1335) : Send XML on stream = "<?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='3998054199' from='jabberd.homenet.netz' version='1.0' xml:lang='en'>"
=INFO REPORT==== 29-Aug-2008::23:59:26 ===
D(<0.585.0>:ejabberd_c2s:1335) : Send XML on stream = "<stream:features><starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>DIGEST-MD5</mechanism><mechanism>PLAIN</mechanism></mechanisms><register xmlns='http://jabber.org/features/iq-register'/></stream:features>"
Jabberserver : ejabberd 2.0.1
Linux: OpenSuse 10.2
Clients: ubuntu, fedora 9