$self->{conn} = new Net::Jabber::Client(); $self->{conn}->SetCallBacks(message=>\&InMessage, presence=>\&InPresence, iq=>\&InIQ); my $status = $self->{conn}->Connect( hostname=>$self->{Host}, port=>$self->{Port}, ); ... sub gpib_read { my $self = shift; print "Reading from gpib UD=$self->{ud}.\n" if ($debug); my $message = "GPIB|read|$self->{ud}"; $self->{conn}->MessageSend(to=>'gpibserver@192.168.0.2', subject=>"", body=>$message, thread=>"", priority=>10); #Blocks until answer comes $self->{conn}->Process(); # Answer comes through callback InMessage. Is there a way # of expecting the answer here? }