-
``描述问题: 使用node-onebot协议无法解析消息中的 message 如何复现? 使用 node-onebot v1.3.0 期望的结果 正常解析消息 环境信息:
日志 09-04 12:29:17 [SUCCESS] nonebot | CQHTTP 447010560 | [message]: {'time': 1630729753, 'self_id': 447010560, 'post_type': 'message', 'block': False, 'user_id': 1694605269, 'anonymous': None, 'atme': False, 'message_id': 'KlMMxmUBn9UAACXnOapyTGEy9hkB', 'font': '微软雅黑', 'message_type': 'group', 'seqid': 9703, 'raw_message': '调用啥啊', 'sender': {'user_id': 1694605269, 'nickname': 'Sirius0v0', 'card': '假的AI', 'sex': 'male', 'age': 0, 'area': 'unknown', 'level': 1, 'role': 'admin', 'title': ''}, 'message': [{'type': 'text', 'data': {'text': '调用啥啊'}}], 'group_name': '灵喵调教小窝', 'group_id': 710085830, 'sub_type': 'normal'}
09-04 12:29:17 [ERROR] nonebot | Failed to handle event. Raw: {'self_id': 447010560, 'time': 1630729753, 'post_type': 'message', 'message_type': 'group', 'sub_type': 'normal', 'message_id': 'KlMMxmUBn9UAACXnOapyTGEy9hkB', 'group_id': 710085830, 'group_name': '灵喵调教小窝', 'user_id': 1694605269, 'anonymous': None, 'message': [{'type': 'text', 'data': {'text': '调用啥啊'}}], 'raw_message': '调用啥啊', 'atme': False, 'block': False, 'seqid': 9703, 'font': '微软雅黑', 'sender': {'user_id': 1694605269, 'nickname': 'Sirius0v0', 'card': '假的AI', 'sex': 'male', 'age': 0, 'area': 'unknown', 'level': 1, 'role': 'admin', 'title': ''}}
Traceback (most recent call last):
File "A:\GitRepository\siriOS\siriOS_bot\bot.py", line 34, in <module>
nonebot.run(app="__mp_main__:app")
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\nonebot\__init__.py", line 277, in run
get_driver().run(host, port, *args, **kwargs)
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\nonebot\drivers\fastapi.py", line 215, in run
uvicorn.run(
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\uvicorn\main.py", line 393, in run
server.run()
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\uvicorn\server.py", line 50, in run
loop.run_until_complete(self.serve(sockets=sockets))
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\asyncio\base_events.py", line 629, in run_until_complete
self.run_forever()
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\asyncio\base_events.py", line 596, in run_forever
self._run_once()
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\asyncio\base_events.py", line 1890, in _run_once
handle._run()
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\asyncio\events.py", line 80, in _run
self._context.run(self._callback, *self._args)
> File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\nonebot\adapters\cqhttp\bot.py", line 342, in handle_message
await handle_event(self, event)
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\nonebot\message.py", line 223, in handle_event
_, _ = TrieRule.get_value(bot, event, state)
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\nonebot\rule.py", line 139, in get_value
message = event.get_message()
File "E:\Users\Wolflight\miniconda3\envs\siriOS\lib\site-packages\nonebot\adapters\cqhttp\event.py", line 44, in get_message
raise ValueError("Event has no message!")
ValueError: Event has no message! |
Beta Was this translation helpful? Give feedback.
Answered by
mnixry
Sep 5, 2021
Replies: 1 comment 1 reply
-
由于 |
Beta Was this translation helpful? Give feedback.
1 reply
Answer selected by
Sirius0v0
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
由于
node-onebot
的message_id
字段为str
类型, 所以NoneBot2目前无法将其成功地序列化为MessageEvent
类目前的解决方案是换用其他的onebot实现