Skip to content

Commit 6be2cbe

Browse files
committed
🐛 fix duration error
1 parent b3d6eba commit 6be2cbe

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

src/nonebot_plugin_alconna/uniseg/adapters/feishu/exporter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ async def image(self, seg: Image, bot: Union[Bot, None]) -> "MessageSegment":
8181
async def audio(self, seg: Union[Voice, Audio], bot: Union[Bot, None]) -> "MessageSegment":
8282
name = seg.__class__.__name__.lower()
8383
if seg.id:
84-
return MessageSegment.audio(seg.id, seg.duration)
84+
return MessageSegment.audio(seg.id, int(seg.duration) if seg.duration else None)
8585
if not bot:
8686
raise NotImplementedError
8787
if seg.url:
@@ -98,7 +98,7 @@ async def audio(self, seg: Union[Voice, Audio], bot: Union[Bot, None]) -> "Messa
9898
params = {"method": "POST", "data": data, "files": files}
9999
result = await bot.call_api("im/v1/files", **params)
100100
file_key = result["data"]["file_key"]
101-
return MessageSegment.audio(file_key, seg.duration)
101+
return MessageSegment.audio(file_key, int(seg.duration) if seg.duration else None)
102102

103103
@export
104104
async def file(self, seg: File, bot: Union[Bot, None]) -> "MessageSegment":

src/nonebot_plugin_alconna/uniseg/adapters/red/exporter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,9 +87,9 @@ async def media(self, seg: Union[Image, Video, File], bot: Union[Bot, None]) ->
8787
async def voice(self, seg: Union[Voice, Audio], bot: Union[Bot, None]) -> "MessageSegment":
8888
name = seg.__class__.__name__.lower()
8989
if seg.path:
90-
return MessageSegment.voice(Path(seg.path), duration=seg.duration or 1)
90+
return MessageSegment.voice(Path(seg.path), duration=int(seg.duration or 1))
9191
if seg.raw:
92-
return MessageSegment.voice(seg.raw_bytes, duration=seg.duration or 1)
92+
return MessageSegment.voice(seg.raw_bytes, duration=int(seg.duration or 1))
9393
if seg.url and bot:
9494
resp = await bot.adapter.request(Request("GET", seg.url))
9595
return MessageSegment.voice(resp.content, duration=seg.duration or 1) # type: ignore

tests/test_saa_patch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,6 @@ async def tt_h(target: At):
3333
msg = "test" + MessageSegment.at("234")
3434
event = fake_message_event_satori(message=msg, id=123)
3535
ctx.receive_event(bot, event)
36-
ctx.should_call_send(event, MessageSegment.text("ok\n") + MessageSegment.at("234"))
36+
ctx.should_call_send(event, MessageSegment.text("ok\n") + MessageSegment.at("234")) # type: ignore
3737

3838
dispose()

0 commit comments

Comments
 (0)