Saya baru di bidang bot perselisihan, saya punya ide dan hanya itu, saya ingin membuat bot saya menunjukkan status "bot sedang mengetik ..." sebelum bot mengirim pesan apa pun. Saya hanya ingin terlihat seperti mengetik nyata, Anda tahu? Dan saya rasa itu akan terlihat lebih baik daripada hanya mengirim pesan segera.

BTW, saya menggunakan Discord.py Rewrite

Terima kasih atas bantuan Anda sebelumnya!


contoh untuk apa yang saya ingin bot lakukan.

0
The Prince 23 Mei 2020, 13:36

1 menjawab

Jawaban Terbaik

Gunakan async with channel.typing()

Jika Anda tidak terbiasa dengan pernyataan with, ini adalah cara membungkus blok kode dalam sebuah pernyataan, yang melakukan sesuatu di awal blok kode dan di akhir blok kode.

Contoh:

import asyncio

async def on_message(message):
     if message.startswith('ping'):
          async with message.channel.typing():
               await asyncio.sleep(1)
               await message.channel.send('pong')
1
chluebi 24 Mei 2020, 10:54