discord.py를 사용하여 디스코드 봇 개발 시작하기 디스코드 봇 개발을 위해 사전준비를 마쳤다면, 이제 본격적으로 개발하기 위해 틀을 잡아본다. discord.py 설치 아래 글들을 참고하여, discord.py 사용 준비를 마친다. 디스코드 서버-봇 설정하기 디스코드란? 디스코드는 인스턴트 메신저 중의 하나로 음성, 채팅, 화상통화 등을 지원하는 VoIP 솔루션이다. 2015년 9월에 모바일 게임인 Fates Forever 지원하기 위해 최초 출시되었으며, 뛰어난 성 luran.me 디스코드 봇 준비- discord.py 설치하기 (feat 맥북, 구글 코랩) 로컬 맥북 혹은 구글 코랩에 discord.py 설치하기 파이썬용 디스코드 봇 API로, discord.py를 사용하면 손쉽게 디스코드 봇..
MySQL에서 auto_increment 값을 조정하려면? MySQL에서 id를 지정하고 auto_increment 옵션을 지정하면, 데이터를 추가할 때 마다 1씩 자동 증가한다. 그런데, 이 값을 다시 임의의 값으로 조정하거나 초기화 하려면 어떻게 해야 할까? 테스트 테이블 구조 다음과 같은 테이블로 테스트 해 보자. CREATE TABLE IF NOT EXISTS `idtest` ( id int(6) AUTO_INCREMENT, name varchar(255) NOT NULL, PRIMARY KEY (id) ); 따라서, 이 테이블에 insert를 하면, id가 1씩 증가하도록 사용할 수 있는 상태이다. insert 하기 이 테이블에서 insert를 테스트 하면 아래와 같다. mysql> insert..
아이폰 또는 아이패드에서 녹음한 파일을 mp3로 변환하려면? 아이폰 또는 아이패드의 기본 녹음 앱을 사용하여 녹음을 했다. 녹음해 놓고 보니, 파일 포맷이 caf로 되어 있다. 그런데, 이 파일을 다른 사람에게 혹은 다른 곳에 공유를 해야 한다면, 범용적으로 쓸 수 있는 mp3 파일로 변환해야 할 것이다. 물론, 무료 온라인 변환 사이트들을 활용하여 파일을 변환하는 방법도 있으나, 외부에 나의 정보를 노출하는 것도 썩 유쾌한 일은 아니다. 맥북 사용자라면, 로컬 커맨드로 변환이 가능하다. 아이폰/아이패드 -> 맥북 파일 전송 각자 편한 방법으로 한다. 에어드랍을 해도 되고, 기타 다른 메신저를 써도 상관없다. 맥북 명령어로 파일 변환하기 afconvert라는 명령어를 쓰면, 오디오파일을 변환할 수 있다...
텍스트 파일에서 중복 데이터를 없애려면? 데이터를 확인하는 과정에서, 라인별 중복 데이터를 없애야 하는 경우가 있다. 또는, 몇개의 중복 데이터가 있는지 확인하고 싶을 때가 있다. 맥북 혹은 리눅스 사용자라면, 이럴 때 내장 명령어로도 쉽게 확인할 수 있다. sort 명령어 소개 sort 명령어에 대한 설명은 아래와 같다. The sort utility sorts text and binary files by lines. A line is a record separated from the subsequent record by a newline (default) or NUL '\0' character (-z option). A record can contain any printable or unprintab..
유료 앱보다 기능 많은 무료 윈도우 관리 앱 맥북을 사용하다보면, 윈도우를 이리 저리 옮겨야할 경우가 생긴다. 스크린이 매우 넓지 않은 이상 기존에 작업하던 웹 브라우저나, 프로그램 윈도우를 전환하게 되는데 도움을 주는 프로그램은 꼭 필요하다. 대표적인 유료 앱 - Magnet Magnet에 대해서는 아래 글을 참고하자. 앱스토어에서 $7.99에 판매되고 있다. 많이 쓰던 무료 앱 - Spectacle 기존에 사용자들이 많으 쓰던 앱으로 Spectacle이 있다. https://www.spectacleapp.com/ Spectacle www.spectacleapp.com 그러나, 이 프로그램은 현재 더 이상 추가 업데이트를 하지 않겠다고 한 상태이다. 그리고, 또 다른 대체제 - Rectangle 무료 ..
개인이 무료로 CDN을 쓰려면? 전문 서비스가 아니라, 경량으로 일부 정적인 데이터에 대해 CDN을 쓰고 싶다면 다음의 방법을 검토해 보자. CDN 이란? CDN은 Contents Delivery Network의 약자이다. Contents를 배달해주는 네트워크라고 하지만, 정적인 데이터의 경우 내용의 변화가 적기 때문에 캐시곳곳의 서버들을 사용하여 미리 복사해놓는다. 여러 사용자들은 자신에게 가까운 캐시서버를 액세스 할 수 있게 되므로, 네트워크 전송 시간을 단축시킬 수 있고, 이로 인해 결국 웹 가속화의 효과를 누릴 수 있다. 대표적인 CDN 회사로 아카마이(Akamai), CDNetworks 등이 있다. 또한 클라우드 CDN으로 Google Cloud, Azure, Amazon CDN (cloudfr..
VirtualBox 인스턴스와 호스트간 폴더 공유하려면? VirtualBox에 설치한 CentOS instance와 내 PC의 OS인 Windows간 폴더 공유를 위한 설정 도중, 발생하는 일에 대해 메모를 남겨둔다. 일단, VirtualBox상 CentOS이미지로부터 설정 > 공유폴더 메뉴를 활성화 시키면, 어떤 폴더를 공유할 것인지 설정할 수 있다. 예) 폴더경로 d:/vbox/shared 폴더이름 shared 그 후, Linux로 들어가면 끝! .. 이면, 정말 좋겠다. shared라는 이름으로 공유하기로 했다만, linux상에서 저 녀석을 알 수 있도록 해줘야 할 것이다. linux에 들어가서, 다음과 같이 입력해보자. cd /mnt mkdir shared mount -t vboxsf shared..
Tomcat에 SSL인증서를 설정하다 다음과 같은 에러가 날 경우에 대한 조치 방법이다. org.apache.coyote.AbstractProtocolHandler init 심각: Failed to initialize end point associated with ProtocolHandler [“http-apr-8444”] java.lang.Exception: Connector attribute SSLCertificateFile must be defined when using SSL with APR at org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:468) at org.apache.tomcat.util.net.AbstractEndpoint...
맥/맥북에서 윈도우 키보드를 사용하려면? 윈도우용 키보드를 맥에서 쓰려면 아무래도 키의 레이아웃이 다르기 때문에 익숙하지 않다. 특히, 맥북 사용자의 경우 외장 키보드와 맥북 자체 키보드의 레이아웃이 일치하지 않으면 사용중 느끼는 불편함도 크기 마련이다. 본 포스트에서는 맥/맥북에서 윈도우 키보드를 사용할 수 있도록 매핑을 변경하는 방법과 한영키 변경 방법도 함께 다루고자 한다. Control, Option, Command키의 매핑 변경 키보드 자체적으로 윈도우즈 모드와 맥 모드를 설정할 수 있는 키보드도 있지만, 그렇지 않은 경우라면 시스템 환경설정 > 키보드를 선택하여 다음과 같이 설정을 변경해 보자. 화면 우측 하단의 보조 키 메뉴를 선택한다. 본인의 키보드 매핑에 맞게, 필요시 보조키 매핑을 바꿔..
LVM 설정으로 Oracle VirtualBox에서 디스크 묶어서 쓰기 여러 개의 디스크를 하나로 묶어서 쓰려면 다음과 같이 하면 된다. 환경 작업 환경은 다음과 같다. OS : CentOS6 (64 bits) Virtualization S/W : Oracle VirtualBox 순서 개요 대략 순서는 다음과 같다. 하드드라이브설치/인식 -> 파티션설정(lvm) -> 물리볼륨설정 -> 볼륨그룹생성 -> 논리볼륨설정 -> 파일시스템설정 VirtualBox 하드 디스크 추가 설정 기존에 존재하는 vm 이미지의 context menu로부터 repository를 추가한다. 가정한 시나리오는 물리 디스크 두 개이므로, 하드 디스크 두 개를 추가하였다. 해당 vm instance를 시작시켜서, 추가한 하드디스크가 ..
디스코드 서버/ 봇 설치 후, 실행하다 이 에러가 난다면? 구글 코랩 및 주피터에서 디스코드(discord.py) 실행시 겪을 수 있는 오류이다. 내 경우는, 구글 코랩에서 디스코드 봇 실행과정에서 발생했고, 다음과 같이 문제를 해결했다. 혹시나 유사한 문제를 겪을 수도 있는 누군가를 위해 기록으로 남긴다. 디스코드 봇을 설치/ 테스트 해보고자 하는데, 기본 코드를 따라 하다 보니 RuntimeError: Cannot close a running event loop라는 에러가 발생하였다. 혹시나 하여, 로컬 PyCharm에서 실행해보니 정상적으로 실행되는 코드였다. 문제를 일으킨 코드 디스코드 채널이 정상적으로 생성되어 있고, 그 채널에 봇이 연결만 되어 있다면 아래 코드는 정상적으로 실행된다. 맥북에서..
로컬 맥북 혹은 구글 코랩에 discord.py 설치하기 파이썬용 디스코드 봇 API로, discord.py를 사용하면 손쉽게 디스코드 봇을 만들 수 있다. 파이썬이 있다는 전제가 깔려 있으므로, 맥북 로컬에 설치되어 있는 파이썬이 적어도 3.5 이상이면 좋고, 대안으로 구글 코랩이나 주피터 노트북/랩을 사용하여 파이썬 테스트 해볼 수 있을 것이다. 디스코드 설치하기 맥북에서 디스코드(discord.py)를 설치하는 방법과, 구글 코랩에서 설치하는 방법 순서로 살펴보자. 맥북에서 디스코드 설치하기 맥북에 discord.py가 기본적으로 설치되어 있지는 않다. discord.py의 설치 여부를 다음의 명령어 중 하나로 간단하게 확인해 볼 수 있다. $ python -c "import discord" 혹은 ..