NAME
Net::ICQ - Communicate with a ICQ server
SYNOPSIS
use Net::ICQ;
$ICQ = Net::ICQ->new();
$ICQ->signon();
DESCRIPTION
Net::ICQ
is a class implementing a simple ICQ client in Perl.
CONSTRUCTOR
- new ( [ USERNAME, PASSWORD [, STATUS [, HOST [, PORT ] ] ] ])
-
Opens a connection to the ICQ server. Note this does not automatially log you into the server, you'll need to call login().
USERNAME
defaults, in order, to the environment variablesICQUSER
,USER
thenLOGNAME
.PASSWORD
defaults to the contents of the file$HOME/.icqpw
.STATUS
defaults toONLINE
.HOST
andPORT
refer to the remote host to which a ICQ connection is required. Leave them blank unless you want to connect to a server other than Mirabilis.The constructor returns the open socket, or
undef
if an error has been encountered.
OUTGOING - HIGH LEVEL FUNCTIONS
These are correspond with things you might want to do, rather than the actual packets in the protocol.
- login ( UINs );
-
Logs you into the ICQ server, set contact list to UINs (reference to a hash keyed on number, values are names, requests saved messages) and other standard login-type things.
Search for a user. You can search by UIN, email, nickname or realname.
INCOMING - HIGH LEVEL FUNCTIONS
Copes with responses from the ICQ server.
- incoming_packet_waiting ( TIMEOUT );
-
Check if there's something from the server waiting to be processed.
To have it block waiting for input, call it with no argument. Otherwise the argument is the number of seconds before it times out.
Do stuff.
OUTGOING - LOW LEVEL FUNCTIONS
These correspond directly with the packets available in the ICQ protocol.
- send_ack ( SEQUENCE_NUMBER );
-
Send an ACK to the server, confirming we got packet SEQUENCE_NUMBER.
Just tells the server this connection's still alive. Send it every 2 minutes or so.
Tell the server who we're watching for, by UIN.
Send a message through the server to user UIN.
Send a message through the server to user UIN.
Search for a user by UIN.
Search for a user by UIN.
Request basic information about user UIN.
Request extended information about user UIN.
Update your ICQ status.
Update your ICQ password? What does this do?
INCOMING - LOW LEVEL FUNCTIONS
Copes with responses from the ICQ server at packet level.
- receive_login_reply ( );
-
Receive the login packet from the ICQ socket and respond to it appropriately.
MISC FUNCTIONS
These don't correspond with anything much.
- version ( );
-
Returns version information for this module.
- dword_to_chars ( DWORD )
-
Returns the passed DWORD converted to Intel endian character sequence.
- decimal_to_hex ( NUMBER )
-
Returns the passed NUMBER in hex representation as a string.
AUTHOR
Bek Oberin <gossamer@tertius.net.au>
COPYRIGHT
Copyright (c) 1998 Bek Oberin. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
24 POD Errors
The following errors were encountered while parsing the POD:
- Around line 143:
'=item' outside of any '=over'
- Around line 217:
You forgot a '=back' before '=head1'
- Around line 222:
'=item' outside of any '=over'
- Around line 258:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 297:
You forgot a '=back' before '=head1'
- Around line 301:
'=item' outside of any '=over'
- Around line 317:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 378:
You forgot a '=back' before '=head1'
- Around line 383:
'=item' outside of any '=over'
- Around line 398:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 414:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 435:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 454:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 472:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 487:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 514:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 531:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 548:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 568:
=pod directives shouldn't be over one line long! Ignoring all 2 lines of content
- Around line 587:
You forgot a '=back' before '=head1'
- Around line 591:
'=item' outside of any '=over'
- Around line 744:
You forgot a '=back' before '=head1'
- Around line 748:
'=item' outside of any '=over'
- Around line 841:
You forgot a '=back' before '=head1'