11

私の IRC ボットには、私だけが使用できるようにしたいコマンドがいくつかあります。私の名前を使用しているユーザーが nickserv で識別されている (idented) ことを確認したいのです。しかし、これを判断する簡単な方法を見つけることができませんでした。それが、私がここにいる理由です。

それが重要な場合、 FreenodeRizonが主要なターゲット ネットワークです。

編集:私は実際には、識別されたユーザーのさまざまなユーザーモードを認識していました(ただし、それらが異なることに気付くのに十分な注意を払っていませんでした!)。前にそれについて言及せずに申し訳ありません。ただし、ユーザーから得た生の応答には、ユーザーモードは含まれていません。次のようになります。

:liam_neeson!n=pearson@71-9-55-124.dhcp.snlo.ca.charter.com PRIVMSG #erasmus-testing :foo

それで、私はそれらのフラグを取得する方法を(さまざまなircd、grrを使用して)見つけようとしていると思います。誰かが言ったように、Rizon が WHOIS クエリで誰かが識別されているかどうかを返す場合、それは私が探しているものです。

4

7 に答える 7

6

一部のネットワークでは、'identify-msg' と呼ばれる機能を有効にできます。FreeNode では、最初にサーバーに接続するときに「CAP REQ identify-msg」と「CAP END」を送信することでこれを行います。サーバーは、その機能を確認する応答で応答します。その後、すべてのメッセージ (および CTCP ACTION) の前に "+" (ユーザーが NickServ と識別されている) または "-" (ユーザーが NickServ と識別されていない) が付けられます。例:

:liam_neeson!n=pearson@71-9-55-124.dhcp.snlo.ca.charter.com PRIVMSG #erasmus-testing : +foo

于 2011-04-27T23:23:01.177 に答える
1

UnrealIRCdとhybrdは登録ユーザーに+rを設定しますが、すべてのIRCサーバーがこれを行うかどうかはわかりませんが、かなり標準化されていません。また、Rizonではwhoisを実行でき、ユーザーが登録されているかどうかがわかります。

于 2009-11-05T20:09:09.493 に答える
1

ユーザー名が登録されているので、ボットがログインする前に、次のコマンドを実行します。

/ns ghost username password

このコマンドは、あなたのユーザーにログインしているすべてのユーザーを削除します。これは Freenode でのみ使用したことを思い出してください。別のサーバーで機能するかどうかはわかりません。

于 2009-11-05T19:24:24.783 に答える