因为群里大家喜欢开匿名玩,想知道有没有办法用lua脚本抓取匿名ID的方法?我看了一下貌似目前抓取用户群名片也好昵称也好都是通过uid反向抓取的,但是如果开了匿名uid就一律是80000000……
不知道msg包不包含用户的昵称信息呢?或者不使用msg的情况下有什么办法能抓取用户匿名名称的方法吗?(实在不行就只能让群友手动输入自己的名片了但是感觉有点麻烦……)
感谢大佬们!

标题写错字了好崩溃,是抓取;;;

  • msg库中貌似并没有匿名用户昵称,不过gocq的反向http通信中有匿名消息信息上报。(下图截自go-cqhttp帮助中心)

    如果和我一样搞不明白反向http的也可以用gocq正向http的api来获取匿名用户名。
    如:

    .reply set Title=call
    Match=艾兰希亚
    Lua=gapi=require("gocq_api")
    stat,data=gapi.http_post("get_msg",msg.msgid)
    if msg.uid == 80000000 then
        anonymous_name=string.match(data,"nickname(.*)user_id")
        anonymous_name=string.sub(anonymous_name,4,#anonymous_name-3)
        msg.aname = anonymous_name
        return msg.aname .. "有什么事一定要匿名说吗?"
    else
        return msg.nick.."有事吗?"
    end

    绕了一大圈

msg库中貌似并没有匿名用户昵称,不过gocq的反向http通信中有匿名消息信息上报。(下图截自go-cqhttp帮助中心)

如果和我一样搞不明白反向http的也可以用gocq正向http的api来获取匿名用户名。
如:

.reply set Title=call
Match=艾兰希亚
Lua=gapi=require("gocq_api")
stat,data=gapi.http_post("get_msg",msg.msgid)
if msg.uid == 80000000 then
    anonymous_name=string.match(data,"nickname(.*)user_id")
    anonymous_name=string.sub(anonymous_name,4,#anonymous_name-3)
    msg.aname = anonymous_name
    return msg.aname .. "有什么事一定要匿名说吗?"
else
    return msg.nick.."有事吗?"
end

绕了一大圈

    说点什么吧...