2

プログラムで行う方法を知っている人はいますか?

  • 特定のIRC(インターネットリレーチャット)チャネルにメッセージを送信しますか?また
  • チャネル内のすべてのユーザーにメッセージを送信しますか?また
  • 返信として自動メッセージを送信しますか?

私はPHPの使用に慣れていますが、言語はそれほど重要ではありません。

ありがとうございました !

4

2 に答える 2

8

基本的に次のことを行う必要があります。

  1. サーバーに接続します。
  2. チャンネルに参加してください。
  3. メッセージをチャネルに送信します。

接続中

IRC サーバーへの接続を開く必要があります。通常はfsockopen()関数で行います。

サーバーは 2 つのコマンドNICKUSER. \r\nサーバーは行末として期待することに注意してください(送信しないと、サーバーはコマンドを受け入れません)。

これら 2 つのコマンドが送信されると、サーバーから ping が送信されます。

:irc.servername.com PING :RANDOM-STRING

PONG :RANDOM-STRING(同じ文字列)で応答する必要があります。あなたがアクティブでない場合、サーバーはそれらを定期的に送信します。返信がない場合、サーバーはあなたが死亡したと見なし、接続を閉じます。

チャンネルに参加する

接続フェーズが終了したら (サーバーから 001 コマンドを受け取るのでわかります)、チャンネルに参加します。次のコマンドを送信します。

JOIN #channel-name

サーバーはあなたをチャンネルに参加させ、TOPIC と NAMES リストを送信します。それが終わったら、あなたはチャンネルに参加しています。

メッセージの送信

上記のすべてが正しく行われた場合、必要なのは

PRIVMSG #channel-name :YOUR MESSAGE HERE

コロンの後のすべてがメッセージです。


幸運を!:)

于 2013-03-03T16:35:58.873 に答える
2

独自のクライアントを構築できるように、IRCのRFCを読む必要があります。

http://www.irchelp.org/protocol/rfc/を参照してください

于 2013-03-03T16:22:39.570 に答える