Сначала простенький пример:
----------------------------------------------------------------
#!/usr/bin/perl -w
use strict;
use threads; use threads::shared;
use AnyEvent;
use Net::XMPP2::IM::Connection;
my $dest='myjabberaccount@gmail.com';
my $j = AnyEvent->condvar;
#my $timer;
my $thr2;
my $Con = Net::XMPP2::IM::Connection->new ( jid => 'testaccount@gmail.com', password => 'someC00lPasswdd',
initial_presence => -10, debug => 1);
sub ListenForMessages {
async {
while (1){
print "Sending message inside timer\n";
my $immsg = Net::XMPP2::IM::Message->new (to => $dest, body => "ttteessstt from timer");
$immsg->send ($Con);
sleep 5;
}
};
# $timer = AnyEvent->timer (after => 5, cb => sub {
# print "Sending message inside timer\n";
# my $immsg = Net::XMPP2::IM::Message->new (to => $dest, body => "ttteessstt from timer");
# $immsg->send ($Con);
# sleep 5;
# ListenForMessages();
# });
}
$Con->reg_cb (
session_ready => sub {
my ($con) = @_;
print "Connected as " . $con->jid . "\n";
print "Sending message to $dest:\n$msg\n";
my $immsg = Net::XMPP2::IM::Message->new (to => $dest, body => "ttteessstt"); $immsg->send ($Con);
ListenForMessages();
},
message => sub {
my ($con, $msg) = @_;
print "Message from " . $msg->from . ":\n" . $msg->any_body . "\n---\n";
},
error => sub {
my ($con, $error) = @_;
warn "Error: " . $error->string . "\n";
},
disconnect => sub {
my ($con, $h, $p, $reason) = @_;
warn "Disconnected from $h:$p: $reason\n";
$j->broadcast;
}
);
print "Trying to connect...\n";
$Con->connect ();
$j->wait;
--------------------------------------------------------------
Теперь пояснение: Приходит только "ttteessstt". Ни одна из мессаг "ttteessstt from timer" даже не пытается отправиться (судя по tcpdump). И ни через таймер, ни через async{} не работает. :(
Кто что может подсказать?

Ответ на:
комментарий
от z0D5e8n7x

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум perl Jabber (2009)
- Форум Ещё один jabber-shell (2009)
- Форум [Perl][XMPP] Net-XMPP::Message (2010)
- Форум php jabber client (2011)
- Форум sendmail or Net::SMTP (2003)
- Форум Lexmark z25 и Linux (2003)
- Форум 3g modem huawei e173eu-1 + perl script (2013)
- Форум Утечки памяти в golang приложении - как найти? (2023)
- Форум Perl: проблема совместимости «use Socket;» (2004)
- Форум Gloox требует ручной thread sleep при отправке. Или нет? (2019)