Shadow19

Discord DM/Message Eraser

Jan 4th, 2019
326
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Discord DM Eraser [Important Note: you'll need the DM open until it finishes for it to work properly.]
  2. //Version: 0.0.3
  3. //Author: Shadow19
  4. //Paste the code as-is into discord console, and it will proceed to delete any messages (that you can delete) in the DM (or any channel for that matter)
  5.  
  6. var cont;
  7. var opts;
  8. var option;
  9.  
  10. function scanMessage(delay, i){
  11.     if(!i)
  12.         i = 0;
  13.    
  14.     //Search options
  15.     opts = document.querySelectorAll("div[class*='messages'] div[class*='content-'] div[class*='buttonContainer'] div[class*='button-']");
  16.    
  17.     //skip cycle flag
  18.     cont = false;
  19.    
  20.     //Open options, check for end of channel
  21.     var loadMore = document.querySelector("div[class*='messages'] div[class*='hasMore-']");
  22.     var endOfMessChan = document.querySelector("div[class*='messages-'] div[class*='default-'][class*='base-']");
  23.     var endOfMessPriv = document.querySelector("div[class*='messages-'] div[class*='description-']");
  24.     option = opts[i];
  25.    
  26.     //Load more if there are more messages.
  27.     if(!option && i != 0){
  28.         if(endOfMessChan || endOfMessPriv || !loadMore)
  29.             return console.log("Finished.");
  30.         loadMore.click();
  31.         console.clear();
  32.         console.log("Loading more..");
  33.         return scanMessage(delay, 0);
  34.     }
  35.    
  36.     if(!option)
  37.         return console.log("Finished.");
  38.    
  39.     //Click option
  40.     option.click();
  41.    
  42.     //Click delete option, if it's your own message.
  43.     setTimeout(function(){
  44.         var del = document.querySelector("div[class*='itemGroup-'] div[class*='clickable-']:last-of-type");
  45.         if(del && del.innerText.indexOf("Delete") != -1){
  46.             del.click();
  47.             cont = true;
  48.         }
  49.     }, 50);
  50.    
  51.     //Click delete button.
  52.     setTimeout(function(){
  53.         var del = document.querySelector("button[class*='colorRed']");
  54.         if(cont){
  55.             del.click();
  56.             setTimeout(scanMessage, delay, delay, i);
  57.         }else{
  58.             console.log("Skipping..");
  59.             setTimeout(scanMessage, 1, delay, i + 1);
  60.         }
  61.     }, 100);
  62. }
  63.  
  64. scanMessage(1600);
Advertisement
Add Comment
Please, Sign In to add comment