use strict;
use Net::XMPP;
use Data::Dumper;
my $con = new Net::XMPP::Client();
my $status = $con->Connect(
hostname => 'mh.com',
connectiontype => 'tcpip',
);
my @result = $con->AuthSend(
hostname => 'mh.com',
username => 'pi',
password => 'pi'
);
$con->PresenceSend();
$con->SetCallBacks(
presence=>\&do_presence,
message=>\&do_message,
);
sub do_presence {
my ($id, $presence) = @_;
print "Presence\n";
print "From: ", $presence->GetFrom(), "\n";
print "Type: ", $presence->GetType(), "\n";
print "Status: ", $presence->GetStatus(), "\n";
}
sub do_message {
my($id, $msg)=@_;
print "message: ", $msg->GetBody;
}
while(defined($con->Process())) { }
####
Presence
From: pi@mh.com/9b568386-f5e3-46de-bb1d-22f2d861a94a
Type:
Status:
####
$con->PresenceSend( status => "doing nothing at all" );
####
Presence
From: pi@mh.com/c577d4e2-c4b3-44b5-b044-d2e7e67b0172
Type:
Status: doing nothing at all
####
$con->PresenceSend( type => "available" );
####
Presence
From:
Type: error
Status: