@@ -348,14 +348,20 @@ async def edit_original_message(
348
348
self ._state .store_view (view , message .id )
349
349
return message
350
350
351
- async def delete_original_message (self ) -> None :
351
+ async def delete_original_message (self , * , delay : Optional [ float ] = None ) -> None :
352
352
"""|coro|
353
353
354
354
Deletes the original interaction response message.
355
355
356
356
This is a lower level interface to :meth:`InteractionMessage.delete` in case
357
357
you do not want to fetch the message and save an HTTP request.
358
358
359
+ Parameters
360
+ -----------
361
+ delay: Optional[:class:`float`]
362
+ If provided, the number of seconds to wait before deleting the message.
363
+ The waiting is done in the background and deletion failures are ignored.
364
+
359
365
Raises
360
366
-------
361
367
HTTPException
@@ -364,12 +370,17 @@ async def delete_original_message(self) -> None:
364
370
Deleted a message that is not yours.
365
371
"""
366
372
adapter = async_context .get ()
367
- await adapter .delete_original_interaction_response (
373
+ func = adapter .delete_original_interaction_response (
368
374
self .application_id ,
369
375
self .token ,
370
376
session = self ._session ,
371
377
)
372
378
379
+ if delay is not None :
380
+ utils .delay_task (delay , func )
381
+ else :
382
+ await func
383
+
373
384
374
385
class InteractionResponse :
375
386
"""Represents a Discord interaction response.
@@ -861,16 +872,4 @@ async def delete(self, *, delay: Optional[float] = None) -> None:
861
872
HTTPException
862
873
Deleting the message failed.
863
874
"""
864
-
865
- if delay is not None :
866
-
867
- async def inner_call (delay : float = delay ):
868
- await asyncio .sleep (delay )
869
- try :
870
- await self ._state ._interaction .delete_original_message ()
871
- except HTTPException :
872
- pass
873
-
874
- asyncio .create_task (inner_call ())
875
- else :
876
- await self ._state ._interaction .delete_original_message ()
875
+ await self ._state ._interaction .delete_original_message (delay = delay )
0 commit comments