]> mj.ucw.cz Git - pciids.git/blob - PciIds/Xmpp.pm
Remove useless directories
[pciids.git] / PciIds / Xmpp.pm
1 package PciIds::Xmpp;
2 use strict;
3 use warnings;
4 use PciIds::Config;
5 use base 'Exporter';
6
7 our @EXPORT = qw(&sendXmpp &flushXmpp);
8
9 my @pending;
10
11 sub sendXmpp( $$$ ) {
12         my( $to, $subject, $body ) = @_;
13         push @pending, [ $to, $subject, $body ];
14 }
15
16 sub flushXmpp() {
17         return unless @pending;
18         open JELNET, "|$config{xmpp_pipe} > /dev/null" or die "Could not start XMPP sender\n";
19         foreach( @pending ) {
20                 my( $to, $subject, $body ) = @{$_};
21                 $subject =~ s/&/&/g;
22                 $subject =~ s/'/'/g;
23                 $subject =~ s/"/"/g;
24                 $body =~ s/&/&/g;
25                 $body =~ s/</&lt;/g;
26                 $body =~ s/>/&gt;/g;
27                 print JELNET "<message to='$to'><subject>$subject</subject><body>$body</body></message>";
28         }
29         close JELNET;
30 }
31
32 checkConf( [ "xmpp_pipe" ] );
33
34 1;