Open DreamMiu opened 6 months ago
BotEvent
确实不会接收 Actions 的响应包,如果要注册 Actions 响应包事件,可以用 BotActionResponse。或者就直接协程等待回包拿到 message_id 就可以。
BotEvent
确实不会接收到 Actions 的响应包,如果要注册 Actions 响应包事件,可以用BotActionResponse。或者就直接协程等待回包拿到 message_id 就可以。
似乎怎么做能够精准撤回,发现很多方法都行不通BotActionResponse做不到你要撤回那条
受影响版本
3.2.4
描述
在OneBot 12标准中发送信息得到响应被当成错误api或者标准给屏蔽了,正确的方式应该能在OneBotEvent中获得这个响应的message_id事实上不可以 https://12.onebot.dev/interface/message/actions/
{"retcode":0,"status":"ok","data":{"message_id":"KqtrXXXXXXXXXXXXXXXX"},"message":"","echo":"d9efab6c-xxx-xxxx-xxxx-acf8c3xxxx"}
复现步骤
这个响应应该要回到这里
[BotEvent()]
但是在WebSocketMessageEvent就没往BotEvent传
[BindEvent(WebSocketMessageEvent::class)]
// if (!isset($message->detail_type) and $message->detail_type != "heartbeat") { // dump($event); if (isset($message->retcode)) { dump($message->data->message_id); } // } }
解决方案
或者说是我自己的问题,或者还有其他方式获取发送信息得到回应的message_id
附加信息
No response