在我的IRC Bot中,有一些命令我只想让我使用,我想检查以确保使用我的名字的任何人都使用nickserv(已设想).但是,我无法找到一种简单的方法来确定这一点,这就是我在这里的原因.
如果重要的话,Freenode和Rizon是主要的目标网络.
编辑:我实际上知道用户的各种用户模式(尽管我没有足够的注意力去意识到他们的不同!); 很抱歉以前没有提过.但是,我从用户那里获得的原始响应不包括他们的用户模式; 它看起来像这样:
:liam_neeson!n=pearson@71-9-55-124.dhcp.snlo.ca.charter.com PRIVMSG #erasmus-testing :foo
Run Code Online (Sandbox Code Playgroud)
那么,我想,我正试图找到一种方法(用各种各样的ircds,grr)来获得那些旗帜.如果像有人提到的那样,Rizon会返回是否有人在WHOIS查询中被提名,那么这就是我正在寻找的那种东西.
Xio*_*iov 20
在freenode上,使用该消息向nickserv发送私人消息ACC <nickname>将返回一个指示用户身份状态的数字:
答案的形式
<nickname> ACC <digit>如下:Run Code Online (Sandbox Code Playgroud)0 - account or user does not exist 1 - account exists but user is not logged in 2 - user is not logged in but recognized (see ACCESS) 3 - user is logged in
该STATUS <nickname>命令在Rizon上给出了类似的结果:
响应具有以下格式:
<nickname> <digit>Run Code Online (Sandbox Code Playgroud)0 - no such user online or nickname not registered 1 - user not recognized as nickname's owner 2 - user recognized as owner via access list only 3 - user recognized as owner via password identification
该方法优于WHOIS的优点:
在某些网络上,您可以启用名为"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
| 归档时间: |
|
| 查看次数: |
8362 次 |
| 最近记录: |