discord rebot
1.0.0
Discordrebot 은 REGEX 기반 명령 매핑 Discord Bot Framework와 함께 권한 부여 입니다.
Discordrebot은 사용하기 쉽고 최소 및 Async Ready Framework를 사용하여 Discord.py를 사용합니다.
대부분의 봇은 단일 접두사, 문자열을 사용하여 명령을 일치시키고 Args는 공백으로 분할됩니다. 예제 !cmd arg1 arg2 .
그러나 Discordrebot은 명령과 일치하고 인수를 캡처하기 위해 Regex를 사용합니다. 명령과 구문 분석 인수 일치에 대한 통제력을 더 많이 제공합니다.
또한 명령을 실행하기 전에 메시지의 저자를 승인 할 수있는 승인을 제공합니다.
에코 명령이있는 최소 봇
from discordRebot import *
client = discord . Client ()
key = Mapper ()
@ key ( re . compile ( r"^!echo (.*)$" )) # Eg: '!echo hello' -> 'hello'
def echo ( msg , string ):
return string
echo . auth = None
client . event ( Manager ( key ). on_message )
import os ; client . run ( os . environ [ "DBToken" ])예제 디렉토리에서 더 많은 예제를 찾을 수 있습니다.
또한 지원합니다
@ key ( re . compile ( r"^!ticker (d*) (d*)$" ))
async def ticker ( msg , delay , to ):
delay , to = int ( delay ), int ( to )
for i in range ( to ):
yield i
await asyncio . sleep ( delay ) 메시지 저자를 승인합니다
기반
1234567890'user#1234' @ key ( "am i authorized ?" )
def amiauthorized ( msg ):
return "Authorized"
amiauthorized . auth = { 1234567890 , 'user#1234' }
# only executable by user1 (with id 1234567890) and user2 (with username 'user#1234')메시지와 여러 명령을 일치시킬 수 있습니다
@ key ( re . compile ( r"^([sS]*)$" ))
def printmsg ( msg , content ):
print ( f"@ { msg . author } :" )
print ( content )
@ key ( "whereami" )
def whereami ( msg ):
if msg . guild :
return msg . guild . name
else :
return "DM"
Discord-reargparse (명령에 대한 regex 기반 Argparsing이있는 전체 특집 discord 봇)