The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::OICQ - Perl extension for QQ instant messaging protocol

SYNOPSIS

  use Net::OICQ;
  $oicq = new Net::OICQ;
  $oicq->login($qqid, $passwd, "Invisible", "tcp", $proxy);
  # or
  # $oicq->login($qqid, $passwd, "Invisible", "udp");
  $oicq->send_msg("52482796", "Hello");
  my $resp = $oicq->timed_recv(1024, 5);
  print unpack("H*", $resp), "\n";
  $oicq->logout;

DESCRIPTION

This module implements an object-oriented interface to QQ instant messaging protocol. It requires two Perl modules, Digest::MD5 and Crypt::OICQ. Net::OICQ class provides methods to connect to a QQ server, and send commands to other QQ users via the server.

Net::OICQ::ServerEvent class provides methods to parse messages received from the server.

Net::OICQ::ClientEvent class provides methods to process messages sent from a client.

Net::OICQ::TextConsole class is an example of using the above classes for a command-line interface.

CLASSES

Net::OICQ

Constructor:

        $oicq = new Net::OICQ;

Methods:

        $oicq->login($qq_id, $qq_passwd, $connect_mode[, $tcp_or_udp[, $http_proxy]]);

        $oicq->send2svr($command, $data[, $seq]);  # $seq is optional

        $oicq->logout;

Net::OICQ::ServerEvent

Constructor:

        $s_event = new Net::OICQ::ServerEvent $data, $oicq;

Methods:

        Net::OICQ::ServerEvent is a subclass of Net::OICQ::Event and inherits all methods of
        Net::OICQ::Event.  Net::OICQ::ServerEvent has a method for each QQ command supported
        by Net::OICQ module.

Net::OICQ::ClientEvent

Constructor:

        $event = new Net::OICQ::ClientEvent $data, $oicq;

Net::OICQ::Event

This is the super class for Net::OICQ::ServerEvent and Net::OICQ::ClientEvent. It does not have a constructor.

Methods:

        client_ver, cmdcode, seq, cmd, process, parse and dump

EXPORT

None by default.

AUTHOR

Shufeng Tan <perloicq@yahoo.com>

SEE ALSO

perl.