I suggest you use a raw socket for connecting. It gives you more freedom to work with. And it is just more nice.
All that these commands would do is sending stuff like this to the server:
:nick@hostname PRIVMSG #channel :What you would like to say
To send a message to the channel "#channel".
LXVIII. IRC Gateway Functions
With IRCG you can rapidly stream XML data to thousands of concurrently connected users. This can be used to build powerful, extensible interactive platforms such as online games and webchats. IRCG also features support for a non-streaming mode where a helper application reformats incoming data and supplies static file snippets in special formats such as cHTML (i-mode) or WML (WAP). These static files are then delivered by the high-performance web server.
Up to v4, IRCG runs under these platforms:
Замечание: This extension has been moved to the PECL repository and is no longer bundled with PHP as of PHP 5.1.0.
Detailed installation instructions can be found at http://www.schumann.cx/ircg/. We urge you to use the provided installation script.
It is not recommended, but you can try enable IRCG support yourself. Provide
the path to the ircg-config script,
and in addition add
--with-ircg to your
Данное расширение не определяет никакие директивы конфигурации в php.ini.
Данное расширение не определяет никакие константы.
- ircg_channel_mode -- Set channel mode flags for user
- ircg_disconnect -- Close connection to server
- ircg_eval_ecmascript_params -- Decodes a list of JS-encoded parameters
- ircg_fetch_error_msg -- Returns the error from previous IRCG operation
- ircg_get_username -- Get username for connection
- ircg_html_encode -- Encodes HTML preserving output
- ircg_ignore_add -- Add a user to your ignore list on a server
- ircg_ignore_del -- Remove a user from your ignore list on a server
- ircg_invite -- Invites nickname to channel
- ircg_is_conn_alive -- Check connection status
- ircg_join -- Join a channel on a connected server
- ircg_kick -- Kick a user out of a channel on server
- ircg_list -- List topic/user count of channel(s)
- ircg_lookup_format_messages -- Check for the existence of a format message set
- ircg_lusers -- IRC network statistics
- ircg_msg -- Send message to channel or user on server
- ircg_names -- Query visible usernames
- ircg_nick -- Change nickname on server
- ircg_nickname_escape -- Encode special characters in nickname to be IRC-compliant
- ircg_nickname_unescape -- Decodes encoded nickname
- ircg_notice -- Send a notice to a user on server
- ircg_oper -- Elevates privileges to IRC OPER
- ircg_part -- Leave a channel on server
- ircg_pconnect -- Connect to an IRC server
- ircg_register_format_messages -- Register a format message set
- ircg_set_current -- Set current connection for output
- ircg_set_file -- Set logfile for connection
- ircg_set_on_die -- Set action to be executed when connection dies
- ircg_topic -- Set topic for channel on server
- ircg_who -- Queries server for WHO information
- ircg_whois -- Query server for user information
IRC Gateway Functions
If sb need a simple PHP IRC Class:
watch out, ircg is shareware as it seems.
Quoting from http://schumann.cx/ircg/ircg4.php :
The IRCG 4 Free Trial does not allow more than 10 concurrent connections
Answer: The IRCG 4 Free Trial is limited to 10 concurrent connections. You can buy an unlimited license by contacting us here.
Poor job, documentation team. Do you like promoting shareware in your manual just because its from a core developer?
This is an example to show how to connect to a IRC server, how to join a channel, send and receive messages.
/* change it to your own nickname */
$nickname = "myOwnNick";
/* choice your irc server */
$server = "irc.brasirc.net";
/* change to your channel */
$channel = "#linux";
/* do not change it if you do not know what means :-) */
$port = "6667";
/* as ircg cannot resolve hosts, we use PHP internal function to get the IP */
$ip = gethostbyname($server);
/* connection */
$id = ircg_pconnect($nickname,$ip,$port);
/* checking if connected */
print "Cannot connect<br>";
/* joining a channel */
print "Cannot join to $chanell<br>";
/* getting messages - you must have this in your php file */
/* send messages to your channel and you */
ircg_msg($id,$nickname,"This message goes to me!!!");