Академический Документы
Профессиональный Документы
Культура Документы
Por Qu?
Canal Dedicado
API Abierto
http://code.google.com/apis/talk/
Basado en Estndares
Mltiples Clientes
http://en.wikipedia.org/wiki/Comparison_of_instant_messaging_clients
Gran Infraestructura
Archivo Histrico
gTalk Prctico
http://www.gridpp.ac.uk/wiki/Nagios_jabber_notication
notify_via_jabber
notify_via_gtalk
notify_via_gtalk
notify_via_gtalk
# Google Talk & Jabber parameters: my my my my my $hostname = 'talk.google.com'; $port = 5222; $componentname = 'gmail.com'; $connectiontype = 'tcpip'; $tls = 1; #-----------------------------------my $Connection = new Net::XMPP::Client(); # Connect to talk.google.com my $status = $Connection->Connect( hostname => $hostname, port => $port, componentname => $componentname, connectiontype => $connectiontype, tls => $tls); if (!(defined($status))) { print "ERROR: XMPP connection failed.\n"; print " ($!)\n"; exit(0); } # Change hostname my $sid = $Connection->{SESSION}->{id}; $Connection->{STREAM}->{SIDS}->{$sid}->{hostname} = $componentname; # Authenticate my @result = $Connection->AuthSend( username => $username, password => $password, resource => $resource); if ($result[0] ne "ok") { print "ERROR: Authorization failed: $result[0] - $result[1]\n"; exit(0); } # Send messages foreach ( @field ) { $Connection->MessageSend( to => "$_\@$componentname", resource => $resource, subject => "Notification", type => "chat", body => $ARGV[1]); }
Lnea de comando
Lnea de comando
$ /usr/local/bin/notify_via_gtalk gtalkuser Hello, gTalk world!
Lnea de comando
$ /usr/local/bin/notify_via_gtalk gtalkuser Hello, gTalk world!
Shell scripts
Shell scripts
$ rsync src/ remote:dst/ \ && /usr/local/bin/notify_via_gtalk gtalkuser Backup completed \ || /usr/local/bin/notify_via_gtalk gtalkuser ERROR
Shell scripts
$ rsync src/ remote:dst/ \ && /usr/local/bin/notify_via_gtalk gtalkuser Backup completed \ || /usr/local/bin/notify_via_gtalk gtalkuser ERROR
Nagios commands.cfg
Nagios commands.cfg
# 'host-notify-by-gtalk' command definition define command{ command_name host-notify-by-gtalk command_line /usr/local/bin/notify_via_gtalk $CONTACTPAGER$ "Host '$HOSTALIAS$' is $HOSTSTATE$ - Info: $HOSTOUTPUT$" } # 'notify-by-gtalk' command definition define command{ command_name notify-by-gtalk command_line /usr/local/bin/notify_via_gtalk $CONTACTPAGER$ "$NOTIFICATIONTYPE$ $HOSTNAME$ $SERVICEDESC$ $SERVICESTATE$ $SERVICEOUTPUT$ $LONGDATETIME$" }
Nagios commands.cfg
# 'host-notify-by-gtalk' command definition define command{ command_name host-notify-by-gtalk command_line /usr/local/bin/notify_via_gtalk $CONTACTPAGER$ "Host '$HOSTALIAS$' is $HOSTSTATE$ - Info: $HOSTOUTPUT$" } # 'notify-by-gtalk' command definition define command{ command_name notify-by-gtalk command_line /usr/local/bin/notify_via_gtalk $CONTACTPAGER$ "$NOTIFICATIONTYPE$ $HOSTNAME$ $SERVICEDESC$ $SERVICESTATE$ $SERVICEOUTPUT$ $LONGDATETIME$" }
mail2gtalk
mail2gtalk
my $NOTIFY = "/usr/local/bin/notify_via_gtalk"; local $/ = undef; my $to = shift @ARGV; $to=~s,[^a-z0-9],,igs; my $in = <STDIN>; my $email = Email::Simple->new(Email::StripMIME::strip_mime( $in )); my $from = $email->header("From"); my $subject = $email->header("Subject"); if($from=~m,<(.*?)>,) { " $from = $1; } my $body = $from. ': ' . $subject . '. ' . $email->body(); $body=~s,[\n\r], ,igs; $body=~s,\s+, ,igs; # Uncomment next line to limit length, e.g. for SMS # $body=substr($body,0,160); if(-x $NOTIFY) { " open(PIPE,"|$NOTIFY $to")||die($!); " print PIPE $body; " close(PIPE)||die($!); } else { " die("Can't find $NOTIFY"); }
sudo: /etc/aliases
sudo: /etc/aliases
santa: |/usr/local/bin/mail2gtalk gtalkuser
sudo: /etc/sudoers
sudo: /etc/sudoers
Defaults mail_no_perms Defaults mail_badpass Defaults mailto="root,santa@local.domain"
sudo: /etc/sudoers
Defaults mail_no_perms Defaults mail_badpass Defaults mailto="root,santa@local.domain"