Repl에서 Discord bot을 호스팅합니다.그것

만약 당신이 열광적인 디스코드 사용자라면, 당신은 틀림없이 당신이 속한 서버에서 로봇 (또는 10개) 을 본 적이 있을 것이다.만약 당신이 어떤 유형의 프로그래머(취미, 대학생 또는 지친 전문가)라면'나는 더 잘할 수 있어!🤓".
이 글은 다음 조건을 충족하면 좋습니다.
  • 신용카드를 사용할 수 없습니다. 친구(잠재적 고용주)가 24시간 방문할 수 있는 곳에서 프로젝트를 진행하기를 바랍니다.
  • 당신은 가장 멋진 디스코드 봇을 가지고 있습니다. 당신은 프로그래밍 언어로 가위바위보를 작성할 수 있습니다.나는 이 예에서 자바스크립트를 사용했지만 이 개념은 루비, 파이썬, 자바 등에 응용할 수 있다
  • 패키지 관리자가 사용할 모든 프로그래밍 언어를 어떻게 하는지 알고 있습니다.
  • 너도 나처럼 쩨쩨한 놈이야. 디스코드 로봇을 100개나 무료로 운행하고 싶어!
  • 음성 기능이 있는 로봇이 필요하면 바로 돌아가십시오.Repl을 사용합니다.그것은 우리의 로봇을 위탁 관리해야 하는데, 그 위에 ffmpeg를 설치하는 것은 고통스러운 일이다.

    1단계: 로봇 사용자 만들기


    a) https://discordapp.com에 discord 계정에 로그인하고 새로운 응용 프로그램 here 을 만듭니다.그런 다음 응용 프로그램에 bot 사용자를 추가합니다.

    b) 앞으로 사용할 로봇 토큰을 저장합니다.

    c) 우리가 이 포털에서 얻어야 할 마지막 일은 당신의 로봇의 초대 URL입니다.이것은 너의 로봇이 무엇을 할 권리가 있는지를 결정한다.적어도 메시지를 보낼 권한이 필요합니다.이 URL을 사용하여 서버에 초대해야 합니다!

    2단계: Repl로 이동합니다.그것


    만약 당신이 들어 본 적이 없다면, 회답해 주십시오.이것은 작은 프로젝트를 만들고 공유할 수 있는 온라인 IDE입니다.이것은 정말 대단하다. 인터넷에서 더 많은 일을 할 수 있도록 기능을 계속 추가하고 있다.우리는 REPL이라고 부른다.
    a) 새 JavaScript 복제를 만듭니다.

    b) 우선, 웹 서버가 Repl에서 실행되고 있는지 확인해야 합니다.답장:.브라우저 옵션을 닫을 때, 웹 내용을 제공하지 않는 한, 실행 중인 리플을 죽일 것입니다.그리고 레이블을 닫아도 Repl은 한 시간 동안 활동합니다.repl과 repl에 다음 코드를 붙여넣습니다.패키지를 자동으로 설치하고 express 웹 서버를 시작합니다.
    const express = require('express');
    const app = express();
    const port = 3000;
    
    app.get('/', (req, res) => res.send('Hello World!'));
    
    app.listen(port, () => console.log(`Example app listening at http://localhost:${port}`));
    
    왼쪽으로 보면 package.json 라는 파일이 나타납니다.

    이 파일은 리플에 필요한 패키지를 포함합니다.우리가 만들 수 있는 어떤 다른 스크립트도그냥 NodeJs 프로젝트처럼.
    나는 express를 나의 웹 서버로 선택했다.Python을 사용하고 있다면 Flask를 사용할 수도 있고, Ruby는 Sinatra를 사용할 수도 있습니다.그러나 자바에 대해 조사com.sun.net.httpserver.HttpServer를 통해 신속하게 시작할 것을 건의합니다.
    c) 다음에 우리는 우리의 로봇을 실례화해야 한다.
    const express = require('express');
    const app = express();
    const port = 3000;
    
    app.get('/', (req, res) => res.send('Hello World!'));
    
    app.listen(port, () => console.log(`Example app listening at http://localhost:${port}`));
    
    // ================= START BOT CODE ===================
    const Discord = require('discord.js');
    const client = new Discord.Client();
    
    client.on('ready', () => {
      console.log(`Logged in as ${client.user.tag}!`);
    });
    
    client.on('message', msg => {
      if (msg.content === 'ping') {
        msg.reply('pong!');
      }
    });
    // You really don't want your token here since your repl's code
    // is publically available. We'll take advantage of a Repl.it 
    // feature to hide the token we got earlier. 
    client.login(process.env.DISCORD_TOKEN);
    
    ping pong 약간 로봇의 헬로월드 같다.일단 우리가 그것을 시작하면, 너는 너의 서버에서 너의 로봇이 온라인에 있는 것을 볼 수 있을 것이다.만약 당신이 서버에서 핑이라는 단어를 보낸다면 로봇은pong으로 답장해야 합니다.
    코드 세그먼트를 붙여넣은 후 "재시작"을 누르지 마십시오!
    d) 생성.env 파일
    왼쪽에 .env라는 파일을 만듭니다. 이 파일의 내용은 다음과 같습니다.
    DISCORD_TOKEN=your_token
    
    이것은 우리가 당신의 영패를 숨겨서 세계의 다른 사람들이 알지 못하게 하는 데 도움을 줄 것입니다.자세한 내용은 Repl.it's Docs 을 참조하십시오.
    현재 올바른 자격 증명이 있습니다. 지금 다시 시작 을 클릭합니다.너의 로봇은 반드시 온라인이어야 한다!


    축하합니다!당신은 discord.jsdocumentation을 읽어서 당신이 꿈꾸는 모든 멋진 로봇 기능을 실현할 수 있습니다!

    3단계: 우리 로봇을 살리자



    제가 Repl에서 말씀드린 바와 같이그것은 REPL을 잠들게 한다.다음은 문서에서 이 점에 대한 설명입니다.
    일단 배치되면 서버는 브라우저 탭을 닫은 후에도 백그라운드에서 계속 실행됩니다.서버는 마지막 요청이 한 시간 후에 수면 단계로 들어갈 때까지 깨어 있고 활동할 것입니다.수면 중인 REPL은 다른 요청을 받으면 즉시 깨어납니다.repl을 다시 실행할 필요가 없습니다.단, 서버를 변경한 경우, 리플을 다시 시작해야 실시간 버전에서 이 변경 사항을 볼 수 있습니다.
    우리는 Uptime Robot를 사용하여 우리의 로봇을 온라인으로 유지할 것이다.
    a) repl의 웹 서버 URL을 복사합니다.

    b) Uptime Robot에 계정을 만들고 모니터를 만듭니다. 5분마다 ping 서버를 만듭니다.

    그렇습니다!우리 끝났어.전천후 위탁 관리 로봇의 즐거움을 누리다.때때로 로봇이 오프라인 상태가 될 수도 있다.그러나 정상적인 운행 시간 로봇으로 인해 매일 99퍼센트의 시간이 온라인이다.
    안녕하세요!

    좋은 웹페이지 즐겨찾기