Java 용 Bot Framework SDK를 사용 하 여 봇 만들기Create a bot with the Bot Framework SDK for Java

적용 대상: SDK v4APPLIES TO: SDK v4

이 문서에서는 Java Echo Bot 템플릿을 사용 하 여 봇을 빌드하는 방법과 Bot Framework 에뮬레이터를 사용 하 여 테스트 하는 방법을 보여 줍니다.This article shows you how to build a bot by using the Java Echo Bot template, and then how to test it with the Bot Framework Emulator.

전제 조건Prerequisites

템플릿Templates

A오만 생성기를 사용 하 여 봇 Framework v4에서 핵심 ai 기능을 사용 하 여 대화형 ai 봇을 신속 하 게 설정할 수 있습니다.Use the Yeoman generator to quickly set up a conversational AI bot using core AI capabilities in the Bot Framework v4. 자세한 내용은 yeoman.io를 참조 하세요.For more information, see yeoman.io.

생성기는 아래와 같이 세 가지 템플릿 옵션을 지원 합니다.The generator supports three different template options as shown below.

템플릿Template 설명Description
에코   봇Echo Bot "헬로 월드!" 보다 약간 더 많은 것이 좋습니다.A good template if you want a little more than "Hello World!", but not much more. 이 템플릿은 봇에 메시지를 보내는 기본적인 사항을 처리 하 고, 사용자에 게 다시 반복 하 여 봇에서 메시지를 처리 하도록 합니다.This template handles the very basics of sending messages to a bot, and having the bot process the messages by repeating them back to the user. 이 템플릿은 사용자에 게 자신에 게 표시 되는 모든 항목을 사용자에 게 다시 "에코" 하는 봇을 생성 합니다.This template produces a bot that simply "echoes" back to the user anything the user says to the bot.
빈   봇Empty Bot Bot Framework v4에 대해 잘 알고 있고 단순히 기본적인 기본 프로젝트를 원하는 경우에 적합 한 템플릿입니다.A good template if you are familiar with Bot Framework v4, and simply want a basic skeleton project. 또한 설명서에서 샘플 코드를 사용 하 여 학습 하기 위해 최소 봇에 붙여 넣을 수 있습니다.Also a good option if you want to take sample code from the documentation and paste it into a minimal bot in order to learn.
핵심 봇Core Bot 고급 봇을 만들려면 AI 기반 인지 서비스를 사용하 여 언어를 이해 하는 데 사용할 수 있는 고급 봇을 만드는 것이 좋습니다.A good template if you want to create advanced bots, as it uses multi-turn dialogs and LUIS, an AI based cognitive service, to implement language understanding. 이 템플릿은 장소를 추출할 수 있는 봇과 비행을 예약할 날짜를 만듭니다.This template creates a bot that can extract places and dates to book a flight.

Yeoman 설치Install Yeoman

  1. node.js 버전 12.10 이상을 설치 했는지 보장 합니다.Assure that you have installed node.js version 12.10 or later.

  2. 최신 npm를 설치 합니다.Install latest npm.

    npm install -g npm
    
  3. 설치합니다.Install Yeoman. 전역적으로 설치 해야 합니다.Make sure to install globally.

    npm install -g yo
    
  4. Botbuilder-java 를 설치 합니다.Install generator-botbuilder-java. 전역적으로 설치 해야 합니다.Make sure to install globally.

    npm install -g generator-botbuilder-java
    
  5. 옛 오만botbuilder 가 올바르게 설치 되었는지 확인 합니다.Verify that Yeoman and generator-botbuilder-java have been installed correctly.

    yo botbuilder-java --help
    

봇 만들기Create a bot

에코 봇 만들기Create an echo bot

다음 명령을 실행하여 템플릿에서 에코 봇을 만듭니다.Run the following command to create an echo bot from templates. 명령은 해당 매개 변수에 대한 기본 옵션을 사용합니다.The command uses default options for its parameters.

yo botbuilder-java -T "echo"

Yeoman은 봇을 만드는 데 사용할 일부 정보에 대한 메시지를 표시합니다.Yeoman prompts you for some information with which to create your bot. 이 자습서에서는 기본값을 사용합니다.For this tutorial, use the default values.

? What's the name of your bot? (echo)
? What's the fully qualified package name of your bot? (com.mycompany.echo)
? Which template would you like to start with? (Use arrow keys) Select "Echo Bot"
? Looking good.  Shall I go ahead and create your new bot? (Y/n) Enter "y"

생성기는 생성기의 기본 옵션을 변경하거나 프롬프트를 미리 시드하는 데 사용할 수 있는 다양한 명령줄 옵션을 지원합니다.The generator supports a number of command line options that can be used to change the generator's default options or to pre-seed a prompt.

명령줄     옵션Command line Option 설명Description
--help, -h--help, -h 지원되는 모든 명령줄 옵션에 대한 도움말 텍스트 나열List help text for all supported command-line options
--botName, -N--botName, -N 봇 프로젝트에 지정된 이름The name given to the bot project
--packageName, -P--packageName, -P 봇에 사용할 Java 패키지 이름The Java package name to use for the bot
--template, -T--template, -T 프로젝트를 생성하는 데 사용되는 템플릿입니다.The template used to generate the project. 옵션은 empty 또는 echo 입니다.Options are empty, or echo. https://github.com/Microsoft/BotBuilder-Samples/tree/master/generators/generator-botbuilder다른 템플릿 옵션 및 해당 기능 차이에 대한 자세한 내용은 를 참조하세요.See https://github.com/Microsoft/BotBuilder-Samples/tree/master/generators/generator-botbuilder for additional information regarding the different template option and their functional differences.
--noprompt--noprompt 생성기는 새 봇을 만들기 전에 확인 메시지를 표시하지 않습니다.The generator will not prompt for confirmation before creating a new bot. 명령줄에 전달되지 않은 모든 요구 사항 옵션은 적절한 기본값을 사용합니다.Any requirement options not passed on the command line will use a reasonable default value. 이 옵션은 테스트 목적으로 자동화된 봇 생성을 사용하도록 설정하기 위한 것입니다.This option is intended to enable automated bot generation for testing purposes.

이 템플릿을 통해 프로젝트에는 이 빠른 시작에서 봇을 만드는 데 필요한 모든 코드가 포함되어 있습니다.Thanks to the template, your project contains all the code that's necessary to create the bot in this quickstart. 봇을 테스트하는 데는 추가 코드가 필요하지 않습니다.You don't need any additional code to test your bot.

참고

Core 봇을 만들려면 LUIS 언어 모델이 필요합니다.If you create a Core bot, you'll need a LUIS language model. luis.ai언어 모델을 만들 수 있습니다.You can create a language model at luis.ai. 모델을 만든 후 구성 파일을 업데이트합니다.After creating the model, update the configuration file.

봇 시작Start your bot

  1. 터미널에서 봇을 저장 한 디렉터리로 이동한 다음 아래 나열 된 명령을 실행 합니다.From a terminal, navigate to the directory where you saved your bot, then execute the commands listed below.

  2. Maven 프로젝트를 빌드하고 jar 파일 (archive)로 패키지 합니다.Build the Maven project and packages it into a .jar file (archive).

    mvn package
    
  3. 로컬에서 봇을 실행 합니다.Run the bot locally. 보관 이름을 이전 명령의 실제 이름으로 바꿉니다.Replace the archive-name with the actual name from the previous command.

    java -jar .\target\<archive-name>.jar
    

이제 에뮬레이터를 시작할 준비가 되었습니다.You are now ready to start the Emulator.

Emulator 시작 및 봇 연결Start the Emulator and connect your bot

  1. Bot Framework Emulator를 시작합니다.Start the Bot Framework Emulator.

  2. 에뮬레이터의 시작 탭에서 봇 열기를 선택합니다.Select Open Bot on the Emulator's Welcome tab.

  3. 경로에 추가된 로컬 포트의 URL인 봇의 /api/messages URL(일반적으로 http://localhost:3978/api/messages )을 입력합니다.Enter your bot's URL, which is the URL of the local port, with /api/messages added to the path, typically http://localhost:3978/api/messages.

    봇 열기

  4. 그런 다음 연결 을 선택합니다.Then select Connect.

    봇에 메시지를 보내면 봇이 다시 응답합니다.Send a message to your bot, and the bot will respond back.

    echo 메시지

추가 리소스Additional resources

원격으로 호스팅되는 봇에 연결하는 방법은 터널링(ngrok)을 참조하세요.See tunneling (ngrok) for how to connect to a bot hosted remotely.

다음 단계Next steps