모드 커뮤니티

이 게시판에 글을 승인 없이 바로 작성하시려면 인증 개발자 권한이 필요합니다. 언제든지 지원해주세요(바로가기).

프로그래밍 일반

[4강:Ping Pong!] 파이썬으로 디스코드봇 민들어보기

라고솔로가말했습니다 2020.03.08 조회 수 211 추천 수 0

3강 

거의 한달여 만에 작성해보는 강의글입니다

봇프로젝트에 몰두하느라 ;-;

그러면 빠르게시작합시다.


e21ab84c91c26f19c30917b8d9c77755.png이미지를 클릭해 자세히 확인가능

클라이언트 내 함수인 latency를 사용하여 핑측정을 해보려고합니다

디스코드의 웹소켓 프로토콜의 지연시간을 측정할수있습니다.(채팅까지 걸리는 딜레이는 추후 강의에작성하도록함)


5cd5a941a2f4eea67305a3b057447775.png

코드설명은 주석처리를 확인해보시면됩니다.

이제 만약 1강부터 차근차근 따라오신분의 코드라면

import discord 
from discord.ext import commands

bot = commands.Bot(command_prefix='!') 

token ='paste token' 

@bot.event 
async def on_ready():
    print("실헹...... 실행이 잘되네요...?")

@bot.command() 
async def 안녕(ctx): 
    await ctx.send("안녕,세상!") 

@bot.command()
async def ping(ctx):
    latancy = bot.latency
    await ctx.send(latancy) 

bot.run(token)

이런식으로 지금까지 작성되었을껍니다.

자실행해볼까요?


51818aba0e46d5c26b563010a055e30d.png

실행된결과입니다.

소수점단위로 표시되도 놀라지마세요!

이제 저희는 이걸 ms(밀리세컨드)단위로 변환시켜볼꺼에요


ms단위이기때문에 1000을 곱해줍니다.

caf00338e368da64fbc19b453e44472f.png

출력을 해볼까요?

d3b739166beb85a31c456deed6d424fb.png

값이 잘나오긴하지만  파이썬의 round함수를 사용해서 첫째자리를 반올림하여 출력합시다.

2ddafbb99d76a97519a2ac5fb1ece096.png

출력해봅시다!

3d23ecf899b58d8e2d9132678e31b7fb.png

값이 잘나오는것을 확인할수있었습니다.

이제 여기에 살을 붙여봅시다!


f2f484fa2335b10a8aac2e31ecc4364f.png

설명은 주석을 참고하시면되겠습니다.

자 출력해봅시다.

673e4641b6498dc761a0d372b60138bb.png

웹소켓의 딜레이를 확인해볼수있었습니다.

하지만 웹소켓과 통신할때의 지연시간일뿐

채팅창에 전송되는 지연시간하고 다를수있습니다.

처음에 말씀드렸다싶이 채팅창에 전송되는 지연시간을 구하는방법은

추후 강좌에 설명드리겠습니다.

다음편에는 응답 심회편을 써보겠습니다.

항상 외출하실때 조심하세요!


번외.

미국리전 웹소켓딜레이,채팅딜레이

90382f19eca68c31d707950a342aacda.png

위에서 실행한 결과가 채팅까지의 걸리는 지연시간

아래가 웹소켓의 딜레이시간입니다.

디스코드봇은 미국리전에 두시는것이 매우좋습니다.

문의는 윗디코!

한디포에서 오셨다고 말씀해주시면 감사하겠습니다!

 




5개의 댓글

우섭
14 일 전

다른형식 봇코드여도 조금만 수정하면 잘 되네요!

감사합니다!

GUEST1209
2020.03.09

파이썬 3.6.5 버전 기준 핑 만드는 법좀 알려주세요 ㅇㅅㅇ..

@GUEST1209

해당 게시글 따라하셔도 무방합니다.

GUEST1209
2020.03.09
@라고솔로가말했습니다

다행히도 제가 잘못 썼던것이었습니다

답변 감사합니다.

레도
2020.03.08

감사합니다

조회 수 제목 글쓴이
390 한디포 이용 규칙 15 초스터
626 한디포 이용 가이드! 처음 온 분은 읽어둡시다! 15 초스터
9125 한마포 AD 소개 (유료 광고 서비스) 57 U 프리루트
385 [플러그인] [마시자] 마인크래프트로 시작하는 Java 0강 - JDK 설치 / IntelliJ IDEA 설치 / Paper API 가져... 30 Kobins
421 [플러그인] [1강] 마인크래프트 플러그인 개발하기 - 활성화 비활성화 9 JSD-ITHAN
211 [프로그래밍 일반] [4강:Ping Pong!] 파이썬으로 디스코드봇 민들어보기 5 라고솔로가말했습니다
630 [플러그인] [2강]마인크래프트 플러그인 개발하기 - 긴 커맨드 12 JSD-ITHAN
47 [기타] [네모팁] 자주 사용하는 Git 명렁어 6 네모
34 [프로그래밍 일반] Python 강좌 3강 - 자료형이란 무엇일까? (1) sleepylapis
169 [플러그인] [마시자] 마인크래프트로 시작하는 Java 시리즈 2 Kobins
91 [프로그래밍 일반] Python 강좌 0강 - Python은 무엇일까요? 5 sleepylapis
126 [프로그래밍 일반] Python 강좌 2강 - 메세지 출력해보기 10 sleepylapis
67 [프로그래밍 일반] Python 강좌 1강 - Python을 설치해보아요! 3 sleepylapis
209 [스크립트] 명령어 막기 스크립트. 21 윈트초코
45 [데이터팩] 초큐의 데이터팩 초급 강좌! [1편 - 데이터팩 베이스 만들기] 윈트초코
96 [스크립트] `엔티티를 우클릭했을때` 이벤트 2 윈트초코
69 [플러그인] Spigradle - 더이상 plugin.yml 을 수동으로 만들지 마세요! EntryPoint
153 [플러그인] [5강]마인크래프트 플러그인 개발하기 - (ChatColor) 채팅 색깔 바꾸기 4 JSD-ITHAN

 

개발자 최신글
https://www.koreaminecraft.net/files/thumbnails/955/552/001/262x150.crop.jpg

구인

1.12.2 RPG서버 개발팀.건축팀 모집합니다/Esther.KR

Esther.KR

2020-04-10

0

사진이 없습니다.

구인

건축가, 스크립터를 구합니다! ※건축가를 더 빨리 구합니다!!!※

마크러버

2020-04-09

0