use Win32::OLE qw(EVENTS); $sk=Win32::OLE->new("Skype4COM.Skype") || die "Coudn`t connect $!"; Win32::OLE->WithEvents($sk,\&Eve,"_ISkypeEvents"); $sk->Attach(); $user=$sk->CurrentUser(); $sts=$sk->Convert->OnlineStatusToText($user->OnlineStatus); print "Current user: " . $user->{FullName} . " is " . "$sts\n"; Win32::OLE->MessageLoop(); sub Eve { my($msg,$stat,@args)=@_; print "Event triggered\n"; exit 0; } exit 0;