AiPE

디스코드 개인 DM 일괄 삭제 방법 (Undiscord 이용) 본문

[XiBBaL] Study/Html

디스코드 개인 DM 일괄 삭제 방법 (Undiscord 이용)

Oshimaker XiBBaL 2023. 2. 8. 17:00
반응형

디스코드 채널(서버)의 경우, 메세지를 다 지우고 싶으면 서버를 통째로 날리면 되지만, 개인DM은 대화 내역을 통째로 날리는 기능이 없다.

 

메세지를 삭제하는 것도 자기자신이 보낸 메세지를 삭제하는 것만 가능한데, 이 또한 원래대로라면 하나씩 지워줘야 해서 상당히 불편하다.

 

찾아보니 디스코드 개인 DM을 자기자신이 보낸 메세지만 일괄 삭제하는 프로그램을 누가 만들어놓은 것이 있어 소개한다. 후술하겠지만, 삭제는 디스코드 데스크탑/모바일 앱이 아니라 웹브라우저상에서 진행한다.

(설치 없이 웹 브라우저로도 디스코드를 실행할 수 있다.)

 

 

 

 

1. 사용법

https://github.com/victornpb/undiscord

 

GitHub - victornpb/undiscord: Undiscord - Delete all messages in a Discord server / channel or DM (Easy and fast) Bulk delete

Undiscord - Delete all messages in a Discord server / channel or DM (Easy and fast) Bulk delete - GitHub - victornpb/undiscord: Undiscord - Delete all messages in a Discord server / channel or DM (...

github.com

 

영단어 "discord"는 "말다툼, 불화"라는 뜻을 가지고 있는데, 앞에 -un을 붙여서 "디스코드 삭제"와 "말다툼 끝"이라는 약간의 개그를 한 것 같다. 아니면 말고.. 단순하면서 재미있게 잘 지은 것 같다.

 

 

사용법은 위 GitHub링크 안의 Readme.md파일에 써있는 순서대로 진행하면 된다. 다른 사용설명서는 필요 없을 정도로 방식이 간단하며, 설명 또한 잘 되어 있다. 사용법 관련 사진도 첨부되어 있어서 내가 쓸 게 없다.

 

 

그래도 설명이 전부 영어니까 사용법 부분만이라도 번역해놓으려고 한다.

 


1.

First you need a Browser Extension for managing UserScripts[1] (skip if you already have one):

먼저, UserScripts를 관리하기 위한 크롬 확장프로그램이 필요하다. (이미 설치했으면 스킵. 근데 이미 설치된 경우는 진짜 거의 없을거같다.)

2. 

Undiscord를 설치하자.

(원문에는 설치 링크로 이동할 수 있는 버튼이 2개 나온다. 글 용량때문에 넣지 않았다)

 

(NOTE: GreasyFork is recommended for now, OpenUserJS is not receiving updates)

(참고: GreasyFrok를 현재로서는 추천한다. OpenUserJS는 업데이트가 되고 있지 않다.)

 

3.

Open Discord in your browser (Not the App) and go to the channel or direct message you would like to be wiped.

Discord를 웹브라우저에서 열고 (앱이 아니라!!) 삭제하고 싶은 개인 메세지가 떠 있는 채널(대화방)으로 가자.

 

4.

Click the 🗑️ button that was added in the top right corner.

우측 상단에 새로 생긴 쓰레기통 모양의 버튼을 누르자.

 

5.

Click on the get buttons near Authorization, Author and Guild/Channel.

"Get"버튼을 눌러서 현재 열려있는 탭의 Authorization, Author, Guild/Channel 정보를 가져 오자.

(위 3개의 요소는 수동으로 입력해도 되긴 하는데 굳이 그럴 필요 없이 그냥 "get"하는 것이 더 편했다.)

 

6.

Click the Start button to begin wipping!

삭제를 시작하려면 "Start" 버튼을 클릭하자.

 

7.

아래 GIF이미지는 Readme.md파일에 포함되어 있던 이미지이다. 거의 사용법 전체를 말해준다.


 

 

 

2. 디테일 및 후기

1. 

나의 경우 Chrome브라우저 버전 109.0.5414.120(공식 빌드) (64비트)에 ViolentMonkey를 사용했다.

위 프로그램은 JavaScript와 Html, CSS를 섞어서 만들었다. 주 언어는 JavaScript이다.

 

 

2. 

ViolentMonkey는 브라우저에서 user-script (유저가 만든 스크립트)를 사용할 수 있게 해주는 크롬 확장 프로그램이다.

꼭 undiscord전용으로 나온 건 아니고, undiscord가 이를 기반으로 만든 것이다. 사실 나는 아직까지 undiscord말고 ViolentMoneky를 사용하는 스크립트를 본 적이 없다. 그래도 ViolentMonkey 자체는 안전하니까 걱정없이 사용해도 된다.

 

 

3. 

프로그램이 돌아가는 도중에 다른 작업을 하거나 다른 크롬 탭을 사용해도 상관 없었다. 다른 디엠창을 열어서 채팅을 해도 정상작동했다. 지워지고 있는 채팅창에 새로운 메세지를 보내도 삭제과정에 문제가 생기지 않았다.

 

 

4.

프로그램이 한번에 인식할 수 있는 최대 메시지 개수에 한계가 있는지, 실제 DM의 개수보다 적은 수의 DM을 인식하는 경우가 빈번하다.

 

예를 들어, DM에 3000개의 메세지가 있으면 처음 인식에는 1000개가량만 인식되고, 실제 삭제는 1000개를 넘어 3000번째까지 계속 진행된다. 따라서 표시되는 삭제 진행도도 100%를 넘어서 계속 올라간다.

 

경험상, 메세지가 다 안지워진다거나 하는 심각한 버그는 아니고, 그냥 놔두면 끝까지 올라가서 삭제한다. 디스코드 메세지 로딩 속도 때문에 메세지 개수 표시만 저렇게 잘못 나오는 것이다.

 

그래도 찝찝해서 항상 메세지 삭제가 끝난 채널에 대해서도 다시 한번 삭제를 돌린다. 물론 메세지가 누락되어 삭제가 안 된 경우는 없었다.

 

 

5. 

다른 사람의 메세지를 삭제할 수 없다. Author ID를 알아도, 해당 계정으로 로그인하지 않는 한 다른 사람의 메세지를 삭제할 수는 없다. 물론 서버에서 남의 메세지를 삭제할 수 있는 관리자 권한을 가진 경우에는 삭제가 가능하겠지만, 개인 DM에서 남의 메세지는 해당 계정으로 로그인하지 않는 한 지울 수 없다.

(애초에 위 프로그램은 우리 대신 "메세지>우클릭>삭제>확인 과정"을 수행해주는 로직으로 되어 있는 것 같다. 삭제 버튼이 뜨지 않는 계정에 대해서는 작동시킬 수 없다.)

 

 

6.

"통화 기록"은 삭제하지 못한다.

메세지는 삭제해도 "XX님이 YY님에게 26분간 통화를 걸었습니다" 등의 메세지는 그대로 남는다.

 

 

7. 

서버측의 봇 차단을 방지하기 위해 각 메세지 삭제 사이에는 Delay가 들어간다. 따라서 작동 속도 자체는 좀 느린 편이다. 돌려놓고 다른 일을 하는 것이 상책. 기본 세팅은 100ms이던데, 프로그램이 작동하면서 스스로 조절하는 것 같으니 건드리지 말자. 웹사이트에 스크립트로 접근할 때는 IP차단에 항상 주의해야 한다. (경험담)

반응형

'[XiBBaL] Study > Html' 카테고리의 다른 글

[Html] Tistory에 수식 입력하는 방법  (0) 2022.12.01